diff options
author | Harmen Stoppels <me@harmenstoppels.nl> | 2024-08-16 15:24:04 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-16 15:24:04 +0200 |
commit | 725ef8f5c8065baddbdc559c1acb793d7ec43740 (patch) | |
tree | 9b18a2980ea33a108d2c006f82e959b847376590 /.gitignore | |
parent | f51a9a9107f145021fb89e9447ea06be522cb20d (diff) | |
download | spack-725ef8f5c8065baddbdc559c1acb793d7ec43740.tar.gz spack-725ef8f5c8065baddbdc559c1acb793d7ec43740.tar.bz2 spack-725ef8f5c8065baddbdc559c1acb793d7ec43740.tar.xz spack-725ef8f5c8065baddbdc559c1acb793d7ec43740.zip |
oci: support --only=package (#45775)
Previously `spack buildcache push --only=package` errored in the OCI
case, but it's been requested that OCI can be used as pure storage w/o
the need for runnable container images.
This commit makes it so that
1. manifests refer only to runtime dependencies that were selected to be
pushed
2. failure to upload a blob among the selected specs does not prevent a
manifest/tag to be created for dependents: they just don't refer to
the missing blob as a layer/dependency
This fixes the following issues:
1. dependents of non-redistributable specs can now be pushed to oci
build caches without error
2. failure to upload one tarball does not cause cascading failures for
dependents whose tarballs do upload succesfully -- so it's better
best-effort behavior
3. for some people uploading with deps caused a massive amount of
fetches of their manifests (which certain registries count as a
download of an image, even though their layers are not fetched) --
being able to specify --only=package reduces the number of fetches.
Diffstat (limited to '.gitignore')
0 files changed, 0 insertions, 0 deletions