mirror of
https://github.com/containerd/containerd.git
synced 2026-06-24 08:48:48 +00:00
Allows management of referrer objects when performing pull, archive export and archive import. Referrer objects are linked to their subjects via GC labels. The label is based on sha256 checksum of the object instead of incremental numbers as referrers are not immutable and don't have any strict order. In OCI-layout referrers that are not already in the exported tree are added to the main index.json with io.containerd.manifest.subject annotation. On import such descriptors with that annotation do not create digest-based images in the image store. Note that this does not mean all the referrer objects in the registry are now pulled/exported/imported by default. The caller of the client pkg functions can choose which referrer objects should also be handled. Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
30 lines
1.1 KiB
Go
30 lines
1.1 KiB
Go
/*
|
|
Copyright The containerd Authors.
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
*/
|
|
|
|
package images
|
|
|
|
const (
|
|
// AnnotationImageName is an annotation on a Descriptor in an index.json
|
|
// containing the `Name` value as used by an `Image` struct
|
|
AnnotationImageName = "io.containerd.image.name"
|
|
|
|
// AnnotationManifestSubject is an annotation on a Descriptor that means
|
|
// that current descriptor is a referrer to the subject manifest.
|
|
// If descriptor in image.json has this annotation, it will not create
|
|
// a new image.
|
|
AnnotationManifestSubject = "io.containerd.manifest.subject"
|
|
)
|