Learn how to manage Build Expiration in Azure DevOps. Our DevOps Support team is here to help you with your questions and concerns.

Best Practices for Build Expiration in Azure DevOps

Build expiration in Azure DevOps controls how long completed builds and their associated data are retained. Retention settings can be used to remove older builds based on factors such as build age or the number of builds retained.

Best Practices for Build Expiration in Azure DevOps

This is crucial for maintaining a clean and efficient build environment, optimizing storage usage, and ensuring that only relevant and up-to-date build artifacts are retained.

Let’s take a look at the key concepts and strategies for managing build expiration in Azure DevOps.

Key Concepts of Build Expiration in Azure DevOps

  • Build Artifacts

    Build artifacts are the output files produced by the build process, such as binaries, packages, or deployment files.

    Managing artifacts involves deciding how long to retain these files and when to delete them.

  • Build Definitions

    Build definitions specify the steps and configurations for the build process.

    Outdated or unused build definitions may need to be cleaned up to avoid clutter and confusion.

Managing Build Expiration

Retention Policies

Azure DevOps provides retention settings that control how long completed pipeline runs and related data are kept. The available settings depend on the pipeline type and retention configuration.

Here is how to navigate to Retention Policies:

  1. First, go to the Azure DevOps project.
  2. Then, select “Pipelines” and then “Builds.”
  3. Click on the “Retention” tab or settings option.

Then, configure Retention Policies:

  • Define rules to retain or delete build artifacts based on criteria such as the number of builds to keep or the age of builds.
  • Specify the maximum number of builds to retain.
  • Set a limit on how long to keep builds before they are deleted.
  • Option to keep the latest successful build or the latest build of each branch.

Finally, apply the configured retention policy to your build pipeline. Azure DevOps will automatically manage to build artifacts based on these settings.

Manual Cleanup

In addition to automated retention policies, we can manually clean up old builds and artifacts, especially if retention policies are not sufficient or if specific cleanup actions are required.

We can manually delete builds with these steps:

  1. First, go to “Pipelines” > “Builds.”
  2. Then, select the builds we want to delete.
  3. Next, click on “More actions” (three dots) and choose “Delete.”

We can clean up build definitions with these steps:

  1. First, go to “Pipelines” > “Builds.”
  2. Then, select the build definitions we want to remove.
  3. Next, click on “More actions” and choose “Delete.”

Alternatively, we can use Azure DevOps REST APIs or PowerShell scripts to automate the cleanup of old builds and artifacts beyond the capabilities of built-in retention policies.

Why Manage Build Expiration?

Build retention affects how much build history and artifact data remains available in an Azure DevOps project. Keeping every build indefinitely can increase storage usage and make it harder to find the builds that are still relevant.

A retention policy can remove older builds automatically while keeping the history required for troubleshooting, releases, or compliance. The right retention period depends on how often the team builds, how long artifacts are needed, and whether other systems already store important build outputs.

Benefits of Build Expiration Management

  • It reduces the amount of storage used by old or unnecessary build artifacts, freeing up space for new builds.
  • It keeps the build environment clean and efficient by removing obsolete build definitions and artifacts.
  • Managing build expiration helps manage costs associated with storage and computing resources by removing old data.
  • It simplifies the management of build artifacts and definitions, making it easier to focus on active and relevant builds.

[Need assistance with a different issue? Our team is available 24/7.]

Conclusion

Azure DevOps retention settings can help keep build history manageable and remove data that is no longer required. If you need help configuring retention policies, automating build cleanup, or troubleshooting Azure DevOps pipelines, our Azure Support Services team can help.