Hey team, is it possible to migrate objects betwee...
# gooddata-cloud
j
Hey team, is it possible to migrate objects between workspaces in GoodData Cloud? I found old documentation but nothing for the equivalent in GDC - https://help.gooddata.com/doc/growth/en/workspace-and-user-administration/administrat[…]rkspace-objects/migrate-selected-objects-between-workspaces/
m
Hi Jake, I'm happy to help. Thank you for pointing out that there is no documentation for Cloud. I will share it with our team in charge of documentation. As you realise, we do not have official steps for now, but it is possible with some workaround (I just tested in my environment). My steps were. The LDM has to be exactly in both Workspaces; if not, you can easily 'clone' them. For example, from wsA to wsB. You have to GET the LDM layout of the wsA:
GET /api/v1/layout/workspaces/wsA_id/logicalModel
copy it and PUT in another workspace like
PUT /api/v1/layout/workspaces/wsB_id/logicalModel
With this you will have the same LDM. Then you do the same but with the
analiticalModel
endpoint like
GET /api/v1/layout/workspaces/wsA_id/analyticsModel
Copy it and PUT in another workspace like
PUT /api/v1/layout/workspaces/wsB_id/analyticsModel
The above example is for an empty workspace. Now, if you already have different dashboards, insights, and metrics, you must be careful with what you include in the body of the PUT call Check the structure you have from the GET call on wsA and how/what you want to pass to the wsB, in the
analyticsModel
endpoint,you have practically all the objects you can use:
Copy code
analyticalDashboardExtensions
analyticalDashboards
attributeHierarchies
dashboardPlugins
exportDefinitions
filterContexts
metrics
visualizationObjects
I hope this helps.
j
Thank you Mauricio! If we wanted to change an attribute/field ID in the parent workspace and the child workspace has visualizations relying on that ID, is there a migration process for that?
m
Always I would be really carefull about changing IDs. Ee do not have a 'migration process', it can be done, but manually.
j
Ok that's good to know, thank you 🙂
🙌 1