Is it possible to backup an Azure DevOps organization or project? I couldn't find this feature in the organization, project or even pipelines settings. In the documentation I found that the data is replicated using Azure services such as blob and SQL storage. This is nice, but what if you want to have a copy of your organization in your own server or local computer as, for example, a zip file? The only possibilities I found were exporting the build and release pipelines and cloning the repositories, but that is far from a complete backup.
2 Answers
UPDATE 2021
There are ways of doing this, but they're not all easy or simple:
1) Manual: Export work items / Download Zip of Repos
Microsoft document the feature to export items like work items here: https://docs.microsoft.com/en-us/azure/devops/boards/work-items/email-work-items?view=azure-devops&tabs=browser#export-list-as-csv
There is also a way to download your repositories from devops itself:
The same cant be done for work items but as mentioned below, work items can be retrieved by the rest API.
2) Manual: Using the REST API / Libgit2sharp
We used a combination of the REST API and this repo here to automate the scripts for a while. We changed the backup part of the script to instead clone a copy of the code to our blob storage using Libgit2sharp.
3) Automatic: Using Backrightup
After struggling with this all ourselves, and having many clients that required this for regulatory reasons (and safety from malicious contractors for instance), we eventually built BackRightUp. Backrightup is a backup/restore product specifically for Azure devops. It backs up (and can restore) everything in Azure Devops including work items, repos, wikis, test cases, releases etc.