mirror of
https://github.com/project-zot/zot.git
synced 2026-06-18 05:28:07 +08:00
0e2aa81439
* feat(sync): use regclient for sync extension replaced containers/image package with regclient/regclient package Signed-off-by: Eusebiu Petu <petu.eusebiu@gmail.com> * fix(sync): fixed converting innner docker list mediatype Signed-off-by: Eusebiu Petu <petu.eusebiu@gmail.com> * feat(sync): added option to preserve digest Signed-off-by: Eusebiu Petu <petu.eusebiu@gmail.com> * fix(sync): added coverage and various fixes Signed-off-by: Eusebiu Petu <petu.eusebiu@gmail.com> * fix(metadb): fixed converting manifest list not setting platform and annotations Signed-off-by: Eusebiu Petu <petu.eusebiu@gmail.com> * fix(sync): remove read lock on storage, not used concurrently Signed-off-by: Eusebiu Petu <petu.eusebiu@gmail.com> * feat(sync): added cache for repo tags Signed-off-by: Eusebiu Petu <petu.eusebiu@gmail.com> * fix(sync): fixed Makefile removed opengpg tag Signed-off-by: Eusebiu Petu <petu.eusebiu@gmail.com> * fix(sync): add test for on demand referrer Signed-off-by: Eusebiu Petu <petu.eusebiu@gmail.com> --------- Signed-off-by: Eusebiu Petu <petu.eusebiu@gmail.com>
37 lines
661 B
Go
37 lines
661 B
Go
//go:build sync
|
|
// +build sync
|
|
|
|
package sync
|
|
|
|
import (
|
|
ispec "github.com/opencontainers/image-spec/specs-go/v1"
|
|
"github.com/regclient/regclient/types/referrer"
|
|
|
|
"zotregistry.dev/zot/pkg/common"
|
|
)
|
|
|
|
const (
|
|
cosignSignatureTagSuffix = "sig"
|
|
SBOMTagSuffix = "sbom"
|
|
)
|
|
|
|
func hasSignatureReferrers(refs referrer.ReferrerList) bool {
|
|
for _, desc := range refs.Descriptors {
|
|
tag := desc.Annotations[ispec.AnnotationRefName]
|
|
|
|
if common.IsCosignSignature(tag) {
|
|
return true
|
|
}
|
|
|
|
if desc.ArtifactType == common.ArtifactTypeNotation {
|
|
return true
|
|
}
|
|
|
|
if desc.ArtifactType == common.ArtifactTypeCosign {
|
|
return true
|
|
}
|
|
}
|
|
|
|
return false
|
|
}
|