-
Notifications
You must be signed in to change notification settings - Fork 30
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
Abstract content storage via trait and introduce OCI content storage #146
Draft
devigned
wants to merge
8
commits into
bytecodealliance:main
Choose a base branch
from
devigned:oci-cs
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+1,653
−52
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
jsturtevant
force-pushed
the
oci-cs
branch
2 times, most recently
from
July 25, 2023 18:26
a3c1655
to
87d6a49
Compare
Signed-off-by: David Justice <[email protected]>
Signed-off-by: David Justice <[email protected]>
Signed-off-by: David Justice <[email protected]>
Signed-off-by: David Justice <[email protected]>
Signed-off-by: David Justice <[email protected]>
Signed-off-by: David Justice <[email protected]>
Signed-off-by: David Justice <[email protected]>
Signed-off-by: David Justice <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduces the concept of a "ContentStore", which is an abstraction for storing package content. There are currently 2 implementations for a content store, local and OCI. However, it would be relatively simple to add another for a blob store like S3, Azure Blobs, R2, etc.
In this PR, the default file storage and serving directory is replaced with URIs that are served via the LocalContentStore. It should provide the same functionality as the current local file store / serving.
There is still some work to be done with the current OCI implementation to fill the image config with details more than just empty JSON. Furthermore, since the PR is using the image config media type, the artifactType must be specified, and I don't think that is yet available in oci-distribution lib. I will follow up on both of these details.
I'm opening this PR to start a discussion of implementation that will help to fill in the blanks for #87. Also, it's my first significant contribution to this repo, so I'd really appreciate guidance. Thank you!!
Testing out OCI content store support
Start a local registry
Start warg-server
Tell warg-server to use the OCI v1.1 content store. It will default to connecting to a registry insecurely at localhost:5000
Publish a demo package
Verify the content is stored in the local registry