Hi ,
Thanks for reaching out to Microsoft Q&A.
In my view, you can achieve this migration in a few steps as below. Since Workspace_A is already Git-enabled and Workspace_B is in Live mode, you need to manually export and import the ARM template resources from Workspace_B to Workspace_A:
Step 1: Export ARM Template from Workspace_B
Navigate to Workspace_B in the Azure Portal:
- Open Azure Data Factory and select Workspace_B.
Export the ARM Template:
- In Workspace_B, go to "Manage" (gear icon on the left).
- Under "Source Control", select "ARM template".
- Click on "Export ARM template".
- Download the exported `.zip` file, which contains the ARM template and related parameters.
Unzip the file:
- Extract the `.zip` file to a local folder. It will contain:
- `ARMTemplateForFactory.json`
- `ARMTemplateParametersForFactory.json`
Step 2: Import the ARM Template into Workspace_A
- Prepare Workspace_A for Import:
- Ensure Workspace_A is already linked to a Git repository. It should have a collaboration branch (ex:
main
ormaster
). - Open Workspace_A in the Azure Portal.
- Navigate to the Git-enabled Workspace_A.
- Go to "Manage" > "ARM template".
- Click "Import ARM template".
- Upload the
ARMTemplateForFactory.json
andARMTemplateParametersForFactory.json
files from the extracted folder.
- During import, ensure you adjust the global parameters for environment-specific configurations, such as `Linked Services`, connection strings, or other credentials. Validation: - The Azure portal will validate the ARM template before deployment. If there are errors, address any inconsistencies in the parameters file or resource definitions.
- Upload the
- Click "Import ARM template".
- Go to "Manage" > "ARM template".
- Ensure Workspace_A is already linked to a Git repository. It should have a collaboration branch (ex:
Step 3: Save Changes to Git (Workspace_A)
Review Imported Resources:
- After importing, review the pipelines, dataflows, datasets, triggers, etc., to confirm everything has been imported correctly.
- Commit to Git:
- Go to the Author section in Workspace_A.
- Check that all resources are present.
- Publish and commit these changes to the collaboration branch (ex:
main
).
- Publish and commit these changes to the collaboration branch (ex:
Step 4: Verify SHIR
Since Workspace_A and Workspace_B share the same SHIR, no additional configuration is needed. However, verify that:
- The SHIR is properly configured and accessible by both workspaces.
- Any linked service that references the SHIR is working correctly in Workspace_A.
Global Parameters: If Workspace_B uses global parameters, make sure these are included in the ARM template import and adjusted appropriately for Workspace_A.
Credentials: Revalidate any sensitive credentials in linked services after import because some credentials may not be fully migrated.
Triggers: Ensure triggers are disabled during migration to avoid accidental runs and re-enable them only after validation.
Let me know if this works.
Please feel free to click the 'Upvote' (Thumbs-up) button and 'Accept as Answer'. This helps the community by allowing others with similar queries to easily find the solution.