Skip to content

fix: hack to output OCI v1.1 artifact #3267

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Aug 30, 2024
Merged

Conversation

tri-adam
Copy link
Member

@tri-adam tri-adam commented Aug 27, 2024

Description of the Pull Request (PR):

Data containers in Singularity use an empty JSON document as their "config". Thus, based on the OCI v1.1 release notes, they're a good candidate to make use of the artifactType field.

The google/go-containerregistry does not currently include artifactType in v1.Manifest, as per the OCI v1.1 specification. There is an open PR to address that (google/go-containerregistry#1931) but it hasn't had any movement in a while. This PR works around the lack of support until that field is added in the google/go-containerregistry module.

This fixes or addresses the following GitHub issues:

  • Fixes #

Before submitting a PR, make sure you have done the following:

@tri-adam tri-adam self-assigned this Aug 27, 2024
@tri-adam tri-adam marked this pull request as ready for review August 28, 2024 15:02
Copy link
Contributor

@wobito wobito left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just noticed one thing

Copy link
Member

@dtrudg dtrudg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Many thanks for this!

@tri-adam
Copy link
Member Author

Just had one more thought this morning, we are setting the artifactType to application/vnd.sylabs.data-container.config.v1+json... but the artifact itself is not a config, nor is it JSON document? The layer media types describe the format of the layer, so I don't think we need to describe that here, but perhaps this should just be something like application/vnd.sylabs.data-container.v1?

@dtrudg
Copy link
Member

dtrudg commented Aug 29, 2024

Just had one more thought this morning, we are setting the artifactType to application/vnd.sylabs.data-container.config.v1+json... but the artifact itself is not a config, nor is it JSON document? The layer media types describe the format of the layer, so I don't think we need to describe that here, but perhaps this should just be something like application/vnd.sylabs.data-container.v1?

Ahh, yeah. That would make sense without the .config 👍

@tri-adam tri-adam merged commit c565f0f into sylabs:main Aug 30, 2024
1 check passed
@tri-adam tri-adam deleted the dc-artifactType branch August 30, 2024 14:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants