0
Fork 0
mirror of https://github.com/project-zot/zot.git synced 2025-04-01 02:42:32 -05:00
zot/pkg/storage
peusebiu 168d21da1e
fix(storage): deleting manifests with identical digests (#951)
Suppose we push two identical manifests (sharing same digest) but with
different tags, then deleting by digest should throw an error otherwise
we end up deleting all image tags (with gc) or dangling references
(without gc)

This behaviour is controlled via Authorization, added a new policy
action named detectManifestsCollision which enables this behaviour

Signed-off-by: Ramkumar Chinchani <rchincha@cisco.com>
Signed-off-by: Petu Eusebiu <peusebiu@cisco.com>

Co-authored-by: Ramkumar Chinchani <rchincha@cisco.com>
2022-11-18 09:35:28 -08:00
..
cache
constants feat(artifact): add OCI references support (#936) 2022-11-08 00:38:16 -08:00
local fix(storage): deleting manifests with identical digests (#951) 2022-11-18 09:35:28 -08:00
s3 fix(storage): deleting manifests with identical digests (#951) 2022-11-18 09:35:28 -08:00
cache.go
cache_test.go
common.go fix(storage): deleting manifests with identical digests (#951) 2022-11-18 09:35:28 -08:00
common_test.go feat(sync,s3): added s3 logic for ORAS and OCI artifacts (#985) 2022-11-14 22:21:49 -08:00
lint-interface.go
README.md
scrub.go
scrub_test.go
storage.go fix(storage): deleting manifests with identical digests (#951) 2022-11-18 09:35:28 -08:00
storage_controller.go
storage_test.go fix(storage): deleting manifests with identical digests (#951) 2022-11-18 09:35:28 -08:00

zot currently supports two types of underlying filesystems:

  1. local - a locally mounted filesystem

  2. remote - a remote filesystem such as AWS S3

The cache database can be configured independently of storage. Right now, zot supports the following database implementations:

  1. BoltDB - local storage. Set the "cloudCache" field in the config file to false. Example: examples/config-boltdb.json