Version control and Deployment process implementation for views/reports/dashboards
Hi Yellowfin Support,
We currently have various tenants set up for clients in production. We would like to achieve two features from Yellowfin to help us with CI/CD:
Feature one, deployment process:
We would like to be able to work on a private clone of an active dashboard/report/view in production, make some changes, and deploy it to replace the existing active dashboard/report/view.
We thought of a couple of ways to do this:
- Work on the same tenant as the production version. Make a private clone of the single item to change. Do the changes, and replace the original version by renaming and deleting. This causes problems when there are linked filters, reports, and drill throughs and also for viewing permissions.
- Work on the same tenant as the production version. Make a private clone of the single item to change. Export the item. Import the item, hitting “replace” and selecting the production version of the item. This also causes problems when there are linked filters, reports, and drill throughs.
- Work on a dev instance identical to the one in production. Make changes as desired. Export the complete set of linked items. Import these into the production tenant as new items. Delete the old items. The problem here is that it may affect the user experience, in that their favourited dashboards may suddenly appear at the back. It seems we will also manually need to reset the permissions of who can view what, after we import.
Are there any solutions in production that would allow us to bypass all of these issues without a significant chunk of work in deploying every new piece of development?
Feature two, version control:
We are looking for a version control system similar to the style of Git, where we can follow the complete history of a report/view/dashboard. The only idea we have right now is to export an item each time a change is made, so it could be imported to be restored in the future. This is cumbersome. Is there a better way to do this?
Many thanks for your help,