-
Notifications
You must be signed in to change notification settings - Fork 22
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
feat: support splitting blobs when stored as OCI layer #1140
Merged
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
github-actions
bot
added
kind/feature
new feature, enhancement, improvement, extension
size/l
Large
labels
Nov 26, 2024
mandelsoft
force-pushed
the
chunked
branch
3 times, most recently
from
November 26, 2024 13:01
193f00a
to
c032dc6
Compare
Relevant context is also #1142 (but not directly correlated) |
fabianburth
reviewed
Nov 27, 2024
fabianburth
reviewed
Nov 27, 2024
fabianburth
reviewed
Nov 27, 2024
Skarlso
reviewed
Nov 27, 2024
api/ocm/extensions/repositories/genericocireg/accessmethod_localblob.go
Outdated
Show resolved
Hide resolved
fabianburth
reviewed
Nov 27, 2024
Skarlso
reviewed
Nov 27, 2024
api/ocm/extensions/repositories/genericocireg/componentversion.go
Outdated
Show resolved
Hide resolved
Skarlso
reviewed
Nov 27, 2024
api/ocm/extensions/repositories/genericocireg/componentversion.go
Outdated
Show resolved
Hide resolved
fabianburth
reviewed
Nov 27, 2024
api/ocm/extensions/repositories/genericocireg/accessmethod_localblob.go
Outdated
Show resolved
Hide resolved
Skarlso
reviewed
Nov 27, 2024
api/ocm/extensions/repositories/genericocireg/componentversion.go
Outdated
Show resolved
Hide resolved
Skarlso
reviewed
Nov 27, 2024
Skarlso
reviewed
Nov 27, 2024
api/ocm/extensions/repositories/genericocireg/accessmethod_localblob.go
Outdated
Show resolved
Hide resolved
Skarlso
reviewed
Nov 27, 2024
Skarlso
reviewed
Nov 27, 2024
Skarlso
reviewed
Nov 27, 2024
api/ocm/extensions/repositories/genericocireg/componentversion.go
Outdated
Show resolved
Hide resolved
Skarlso
reviewed
Nov 27, 2024
fabianburth
reviewed
Nov 27, 2024
fabianburth
reviewed
Nov 27, 2024
Skarlso
reviewed
Nov 27, 2024
api/ocm/extensions/repositories/genericocireg/componentversion.go
Outdated
Show resolved
Hide resolved
fabianburth
reviewed
Nov 27, 2024
Skarlso
reviewed
Nov 27, 2024
Skarlso
reviewed
Nov 27, 2024
fabianburth
reviewed
Nov 27, 2024
Skarlso
reviewed
Nov 27, 2024
mandelsoft
force-pushed
the
chunked
branch
2 times, most recently
from
December 11, 2024 17:43
d2e335c
to
f4cbbb8
Compare
fabianburth
reviewed
Dec 12, 2024
fabianburth
reviewed
Dec 12, 2024
fabianburth
reviewed
Dec 12, 2024
fabianburth
approved these changes
Dec 12, 2024
Skarlso
reviewed
Dec 16, 2024
Skarlso
approved these changes
Dec 16, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with a single comment.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
area/documentation
Documentation related
kind/feature
new feature, enhancement, improvement, extension
size/l
Large
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.
What this PR does / why we need it
There are OCI repositories with a layer size limitation. Because OCM potentially maps any external artifact to a single blob stored as layer on OCI registries, this could lead to problems. An obvious problematic scenario is the transport of a multi-platform OCI image. Its blob format is an archive containing all images and all layers of those images.
This PR introduces the possibility to specify blob limits for OCI registries. The OCM-to-OCI mapping then
splits larger blobs into multiple layers.
The
localBlob
access method then uses a comma-separated list of blob layer-blob digest to remember the sequence of layers.The access then combines the layerblobs again to a single stream.
Which issue(s) this PR fixes
Fixes: open-component-model/ocm-project#12
A follow-up issue open-component-model/ocm-project#338 describes the provisioning of appropriate defaults for common public registries.