Skip to content

Use pipeline caching feature of AzDo in CI #59598

Open
@kunalspathak

Description

@kunalspathak

Pipeline caching sounds to be a powerful feature which lets us cache the artifacts that are built and reuse them in other runs provided certain criteria match. We could use this feature for at least few purposes that I can think of:

  • If we trigger multiple pipeline runs (e.g. jitstress, jitstressregs runtime) on same commit, one pipeline can perform all the needed builds and cache it against the commit. Other pipelines can then simply download the already built artifacts, saving lot of time in machine time and freeing up resources that does same build over and over.
  • We could also cache the nuget packages that we download against some logical key (index, library hash, nuget package versions, dotnet version, etc.) and then use it during nuget restore. The download IMO will be faster because contents will be downloaded from internal azure storage rather than internet.
  • Cache the libraries built against a commit that last touched the libraries folder. Someone who is working on CoreClr changes need to do CI run, they won't have to build the libraries because we already have it cached, it can be simply downloaded and use. Vice-versa for caching coreclr builds.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    No status

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions