top of page
Writer's pictureKateryna

ADO Migration: Migrating All Azure DevOps Items from One Organization to Another


Azure DevOps
Azure DevOps Migration

Migrating Azure DevOps (ADO) items from one organization to another can be a daunting task. However, with the right tools and a well-structured approach, the process can be smooth and efficient. This guide aims to provide a detailed, step-by-step process to help you migrate work items, repositories, artifacts, test cases, boards, and more. Whether you’re consolidating resources, merging organizations, or restructuring your DevOps environment, this guide has got you covered.


Why Migrate Azure DevOps Items?


Common Reasons for Migration


  1. Organization Restructuring: Companies often need to reorganize their projects and teams.

  2. Mergers and Acquisitions: Combining DevOps resources when two companies merge.

  3. Centralized Management: Simplifying management by consolidating multiple ADO organizations.

  4. Cost Optimization: Reducing costs by optimizing resources and licenses.


Pre-Migration Planning


Before diving into the migration process, thorough planning is essential. Here are the steps you need to take:


1. Assessment

  • Inventory: List all the items in your ADO environment that need to be migrated – work items, repositories, artifacts, test plans, pipelines, boards, etc.

  • Dependencies: Identify dependencies and integrations with other services (e.g., GitHub, Azure, third-party tools).

2. Permissions

  • Ensure you have the necessary permissions in both the source and target ADO organizations. You will typically need organization admin privileges.

3. Backup

4. Environment Preparation

  • Prepare the target ADO organization by setting up necessary projects, teams, and permissions.


Step-by-Step Migration Process


1. Migrating Work Items

Work items include user stories, tasks, bugs, and any custom work items. Here’s how to migrate them:

Tools:

Steps:

  1. Install Migration Tools: Install the required migration tools from the Visual Studio Marketplace or GitHub.

  2. Configure Migration Tool: Configure the tool with the source (Skucaster) and target (BeCloudReady) ADO organization details.

  3. Map Work Item Types: Ensure that work item types in the source are mapped to corresponding types in the target organization.

  4. Run Migration: Execute the migration tool to transfer work items.


2. Migrating Repositories

Repositories are crucial for version control and collaboration. The migration process involves transferring Git repositories.

Tools:

Steps:

  1. Clone Repositories: Clone the source repository to your local machine.


  1. Add Target Repository: Add the target repository as a remote.

  1. Push to Target: Push the repository to the target ADO organization.

git push becloudready --all

3. Migrating Pipelines

Azure Pipelines automate builds and deployments. Migrating pipelines involves exporting pipeline definitions and importing them into the target organization.

Tools:

  • Azure DevOps REST API

  • Azure CLI

Steps:

  1. Export Pipelines: Use Azure DevOps REST API or Azure CLI to export pipeline definitions from the source organization.

az pipelines export --organization https://dev.azure.com/skucaster --project ProjectName --pipeline-id PipelineID --output pipeline.yaml
  1. Import Pipelines: Import the pipeline definitions into the target organization.

az pipelines import --organization https://dev.azure.com/becloudready --project ProjectName --name PipelineName --file pipeline.yaml

4. Migrating Artifacts

Artifacts in ADO include NuGet packages, npm packages, and other binary files.

Tools:

  • Azure Artifacts Upstream Sources

  • Azure CLI

Steps:

  1. Set Up Upstream Sources: Configure upstream sources in the target organization to pull artifacts from the source organization.

  2. Publish Artifacts: Use Azure CLI to publis artifacts to the target organization.

az artifacts universal publish --organization https://dev.azure.com/becloudready --feed FeedName --name ArtifactName --version 1.0.0 --path path/to/artifact

5. Migrating Test Plans and Cases

Test plans and test cases are vital for ensuring software quality.

Tools:

  • Azure DevOps Migration Tools

Steps:

  1. Export Test Plans: Export test plans and cases from the source organization.

  2. Import Test Plans: Import them into the target organization using the migration tools.


6. Migrating Boards and Dashboards

Boards and dashboards help track project progress and visualize data.

Tools:

  • Azure DevOps REST API

Steps:

  1. Export Board Configurations: Use Azure DevOps REST API to export board and dashboard configurations.

az boards export --organization https://dev.azure.com/skucaster --project ProjectName --output boards.json
  1. Import Board Configurations: Import the configurations into the target organization.

az boards import --organization https://dev.azure.com/becloudready --project ProjectName --file boards.json

Post-Migration Activities

After completing the migration, it’s essential to validate and optimize your new ADO environment.

1. Validation

  • Verify Data Integrity: Ensure that all items have been migrated correctly and no data is missing.

  • Check Permissions: Verify that all users and groups have the appropriate permissions in the target organization.

  • Test Pipelines: Run build and release pipelines to ensure they work as expected.

2. Optimization

  • Reconfigure Integrations: Reconfigure any third-party integrations (e.g., Slack, GitHub).

  • Update Documentation: Update internal documentation to reflect the new ADO setup.

  • Training: Conduct training sessions for team members to familiarize them with the new environment.


Useful Tools and Resources

1. Azure DevOps Migration Tools

2. Azure CLI

  • Azure CLI: A command-line tool for managing Azure resources, including ADO.

3. Documentation and Guides


19 views0 comments

Comments


bottom of page