video

Navigating the Complex World of Azure DevOps Data Migration

Published on
5 minute read

When it comes to migrating data in Azure DevOps, the process can be overwhelming, especially if you’re dealing with legacy systems or older versions of Team Foundation Server (TFS). As someone who has been through this many times, I can tell you that there are countless pitfalls, but with careful planning and attention to detail, you can avoid most of them. In this post, I’ll share some of the common issues, critical steps, and personal experiences that can help you successfully navigate the complexities of Azure DevOps data migration.

Common Issues with Older TFS Versions

One of the biggest challenges you’ll face when migrating to Azure DevOps is dealing with older versions of TFS. I’ve encountered situations where clients were still using Visual SourceSafe, a system that went end-of-life in 2005. Before you can even think about upgrading TFS, you need to import any old data from systems like Visual SourceSafe. If you skip this step and upgrade TFS first, you risk losing critical historical data since Visual SourceSafe imports were only supported up to TFS 2015.

Key Takeaways:

The Importance of Order in Migration

Order of operations is crucial in any migration process. Whether it’s moving from TFVC (Team Foundation Version Control) to Git or making process template changes, the sequence in which you perform these tasks can make or break your migration.

What Can Go Wrong?

Personal Experience:

I once worked on a migration where a customer moved from a workgroup environment to a domain-joined environment without proper account alignment. This resulted in users having multiple identities in TFS, leading to a situation where they couldn’t find their assigned work because it was linked to their old identity. This issue is not just a technical glitch; it’s a workflow nightmare that can severely impact productivity.

Critical Identity Alignment

Identity management is one of the trickiest parts of migrating to Azure DevOps. TFS handles identities in a way that can cause significant issues if not managed correctly.

How Does It Work?

Case Study: Complex Migration

In a particularly challenging migration, we had to move a TFS environment from inside Microsoft to another company after a business sale. The process involved seven separate migrations, each with different scripts, validations, and legal requirements. The biggest headache was maintaining identity alignment throughout the entire process. If even one identity didn’t map correctly, it could have caused significant issues down the line.

Database Size and Cleanup

Another critical aspect of migration is managing your database size and cleaning up old data. Azure DevOps has limitations on database size, so it’s essential to clean up unnecessary data before migrating.

What to Watch Out For:

Backup Procedures and Disaster Recovery

Backup procedures are often overlooked, but they are crucial to ensuring a smooth migration. Most operations teams will use standardized backup tools that might not be compatible with TFS or Azure DevOps. This can lead to incomplete backups and, in the worst-case scenario, a failed migration.

Best Practices:

Real-World Example:

In one case, an operations team used their standard SQL Server backup tools for TFS. Unfortunately, this approach didn’t account for the complexity of TFS’s multiple databases. During a disaster recovery scenario, they were unable to restore the databases properly, leading to significant downtime and the need for Microsoft engineers to intervene.

Ensuring Successful Migrations

Despite the challenges, migrating to Azure DevOps doesn’t have to be a nightmare. With the right approach, you can avoid many common pitfalls.

Key Steps:

  1. Plan the Order of Operations: Ensure you follow the correct sequence for all migration tasks.

  2. Align Identities: Double-check that all user identities are correctly mapped during the migration.

  3. Clean Up Your Database: Remove any obsolete or unnecessary data before migrating.

  4. Follow Backup Best Practices: Use TFS-documented procedures and mark transaction logs.

Final Thoughts:

90% of the time, migrations go smoothly if you follow these guidelines. However, when something does go wrong, it often requires deep expertise to fix. The Azure DevOps team has done a great job of making the migration process easier, but there’s always a chance that something might slip through the cracks.

Conclusion

Migrating to Azure DevOps can be a daunting task, especially if you’re dealing with legacy systems or outdated processes. However, with careful planning, attention to detail, and a thorough understanding of the potential pitfalls, you can ensure a successful migration. Remember, the key is in the preparation: plan your order of operations, align your identities, clean up your database, and always follow best practices for backups. With these steps, you can avoid the common pitfalls and ensure a smooth transition to Azure DevOps. 🚀

video Azure DevOps Azure DevOps Migration Migration challenges

Connect with Martin Hinshelwood

If you've made it this far, it's worth connecting with our principal consultant and coach, Martin Hinshelwood, for a 30-minute 'ask me anything' call.

Our Happy Clients​

We partner with businesses across diverse industries, including finance, insurance, healthcare, pharmaceuticals, technology, engineering, transportation, hospitality, entertainment, legal, government, and military sectors.​

Microsoft Logo
SuperControl Logo
Genus Breeding Ltd Logo
Flowmaster (a Mentor Graphics Company) Logo
Lockheed Martin Logo
Workday Logo
Slaughter and May Logo
Capita Secure Information Solutions Ltd Logo
Bistech Logo
Brandes Investment Partners L.P. Logo
ALS Life Sciences Logo
Xceptor - Process and Data Automation Logo
DFDS Logo
Milliman Logo
Freadom Logo
Graham & Brown Logo
Healthgrades Logo
Schlumberger Logo
Ghana Police Service Logo
Washington Department of Transport Logo
Royal Air Force Logo
Nottingham County Council Logo
New Hampshire Supreme Court Logo
Department of Work and Pensions (UK) Logo
Philips Logo
Brandes Investment Partners L.P. Logo
Ericson Logo
Flowmaster (a Mentor Graphics Company) Logo
Slaughter and May Logo
Cognizant Microsoft Business Group (MBG) Logo