Skip to content

Use Oras .NET library for interacting with OCI registries in Microsoft.NET.Build.Containers #53691

Description

@lbussell

Background: Microsoft.NET.Build.Containers uses its own implementation of OCI models and registry interactions (example: ManifestListV2.cs)

We can migrate to the ORAS .NET library and delete a lot of the custom registry interaction code in the SDK. The ORAS .NET library has no external/3rd party dependencies and has an Apache-2.0 license. It's maintained by other Microsoft employees.

This work has a few parts that must be completed (roughly) in order:

  • Migrate Microsoft.NET.Build.Containers to OrasProject.Oras in dotnet/sdk's main branch
  • Add OrasProject.Oras to SBRP as an external project so that it is built from source as part of .NET's build.
  • Flow SBRP to VMR in order to unblock SDK flow to VMR
  • Complete SDK flow to VMR with new OrasProject.Oras dependency

/cc @baronfel

Activity

  1. self-assigned this
    on Apr 3, 2026
  2. added theissue type on Apr 3, 2026
  3. tmds commented on Apr 4, 2026

    @tmds
    Member

    The current implementation is scoped to meet the SDK's needs.

    The SDK does custom things (retries, auth, docker creds, ...). There would be work to make these work with ORAS.

    Are there known issues that would be fixed by using ORAS?

  4. moved this from Backlog to Current Release in .NET Dockeron Apr 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Area-ContainersRelated to dotnet SDK containers functionality

Projects

  • Status
    Current Release

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions