Adding caching to Azure Pipelines

Alex Mullans

For a long while, Azure Pipelines users have been asking to improve performance on the hosted build agents by adding caching for common scenarios like package restore. The issue came up in a recent popular Hacker News item, so we wanted to share an update.

Pipeline Caching is starting development now. You can see the design in this PR. Near the end of March, we’ll be releasing restore and save cache tasks that allow you to cache any file or set of files to a cache key of your choice. If you’re building some dependencies over and over or restoring a lot of packages, these tasks can add immediate time savings to your pipelines.

Continuing in Q2, we’ll improve those tasks after we see how you use them in your pipelines. We’ll also be enabling caching by default in the most popular ecosystems (think NuGet, pip, npm) as we learn more about the performance of those tools.

Please share your feedback on the PR; we’ll be reading and evolving the design as we go. Also feel free to get in touch with me and Mitch Denny, the feature owner for Pipeline Caching. We’re eager to hear about your ideas for using caching in your pipelines.