Alson Yap
02/07/2025, 8:07 AMAlson Yap
02/07/2025, 8:14 AMMauricio Cabezas
02/07/2025, 8:36 AMcurl -H "Authorization: Bearer $API_TOKEN" \ -X GET \ {{your trial name}}.<http://trial.cloud.gooddata.com/api/v1/layout/organization|trial.cloud.gooddata.com/api/v1/layout/organization> > organization-layout.json. This layout contains the entirety of the previous org's metadata, users, and so on.
2. It will be necessary to replace some of the information in the resulting layout, so that it matches the new environment. Namely:
⦠Replace all the orgID references (it should only appear once). In your case, any instances of o1pqtrf6xb should be replaced by 23gyfs-isd.
⦠Replace all the hostname references, for example: <http://sharp-liger.trial.cloud.gooddata.com|sharp-liger.trial.cloud.gooddata.com> should be replaced by <http://terrascope.cloud.gooddata.com|terrascope.cloud.gooddata.com>.
⢠If you have a Data Source added to the Trial org, add it manually to the new org (e.g., via the UI), and take note of the Data Source's new ID.
⦠edit the organization-layout.json and replace any instances of the Data Source ID with the new one.
⦠If you already have your OIDC Setup ready to go, make sure to Update the OIDC Settings of the Org on the Layout document, too. Alternatively, you can migrate as-is and switch it later on.
3. Finally, perform a PUT to the Organization Layout endpoint on the new Org using the modified JSON as a payload. E.g.: Run the following with the token from the Target org (in your case, the AU org token). Remember to use the token from the new org for this call.
4. curl -H "Authorization: Bearer $API_TOKEN" \ -H "Content-Type: application/json" \ -X PUT \ <http://terrascope.cloud.gooddata.com/api/v1/layout/organization|terrascope.cloud.gooddata.com/api/v1/layout/organization> -d @organization-layout.json
Once that is done, the new Org should be an exact match of your trial. Of course, you also have the option of creating the new environment from scratch, if you would prefer it!
Now the question is are you planning to migrate only Data Source and Workspaces, some of them? or make an exact copy?Mauricio Cabezas
02/07/2025, 8:38 AMAlson Yap
02/07/2025, 8:46 AMorganization-layout.json for those that I dont want to migrate? šMauricio Cabezas
02/07/2025, 4:42 PMAlson Yap
02/13/2025, 6:47 AM{
"detail": "Can't proceed without organization bootstrap user 'admin'.",
"status": 400,
"title": "Bad Request",
"traceId": "a8130119f93bfb56028e3ca529fcb7d4"
}
do you know how this can be resolved?
Also, a second qn is if I'd like to migrate CSV type data sources over, is this possible?Mauricio Cabezas
02/13/2025, 3:37 PMMauricio Cabezas
02/18/2025, 2:30 PM"exc": "errorType=com.gooddata.tiger.metadata.model.OrganizationBootstrapEntityModificationException, message=Can't proceed without organization bootstrap user 'admin'
This error indicates that you are trying to use a PUT request in the production environment without an Admin user. Could you please confirm whether you modified, edited, or deleted the Admin user while making the GET request in the trial environment? It's crucial that this Admin user remains intact, as it serves as our Support Admin user. Please provide the steps you took or confirm whether you deleted the Admin user.Alson Yap
02/19/2025, 1:16 AMid? If so, this is set as admin. It has Org. permission = Admin as wellMauricio Cabezas
02/21/2025, 1:07 PM"userId": "admin" . Can you tell us please if you still have the error?
Would you be so kind to share with us the GET payload from the trial org, and the PUT payload you are trying to put in the new Org, please? Feel free to use DM.
Thank you in advance.Mauricio Cabezas
02/24/2025, 3:13 PMAlson Yap
02/25/2025, 2:43 AMMauricio Cabezas
02/25/2025, 1:21 PMAlson Yap
02/25/2025, 1:30 PMMauricio Cabezas
02/25/2025, 1:54 PM