0
Fork 0
mirror of https://github.com/project-zot/zot.git synced 2025-03-25 02:32:57 -05:00
zot/pkg/storage
Andrei Aaron ba6f347d8d
refactor(pkg/test): split logic in pkg/test/common.go into multiple packages (#1861)
Which could be imported independently. See more details:
1. "zotregistry.io/zot/pkg/test/common" - currently used as
   tcommon "zotregistry.io/zot/pkg/test/common" - inside pkg/test
   test "zotregistry.io/zot/pkg/test/common" - in tests
   . "zotregistry.io/zot/pkg/test/common" - in tests
Decouple zb from code in test/pkg in order to keep the size small.

2. "zotregistry.io/zot/pkg/test/image-utils" - curently used as
   . "zotregistry.io/zot/pkg/test/image-utils"

3. "zotregistry.io/zot/pkg/test/deprecated" -  curently used as
   "zotregistry.io/zot/pkg/test/deprecated"
This one will bre replaced gradually by image-utils in the future.

4. "zotregistry.io/zot/pkg/test/signature" - (cosign + notation) use as
   "zotregistry.io/zot/pkg/test/signature"

5. "zotregistry.io/zot/pkg/test/auth" - (bearer + oidc)  curently used as
   authutils "zotregistry.io/zot/pkg/test/auth"

 6. "zotregistry.io/zot/pkg/test/oci-utils" -  curently used as
   ociutils "zotregistry.io/zot/pkg/test/oci-utils"

Some unused functions were removed, some were replaced, and in
a few cases specific funtions were moved to the files they were used in.

Added an interface for the StoreController, this reduces the number of imports
of the entire image store, decreasing binary size for tests.
If the zb code was still coupled with pkg/test, this would have reflected in zb size.

Signed-off-by: Andrei Aaron <aaaron@luxoft.com>
2023-09-27 11:34:48 -07:00
..
cache refactor(storage): refactor storage into a single ImageStore (#1656) 2023-09-01 10:54:39 -07:00
common refactor(pkg/test): split logic in pkg/test/common.go into multiple packages (#1861) 2023-09-27 11:34:48 -07:00
constants refactor(storage): refactor storage into a single ImageStore (#1656) 2023-09-01 10:54:39 -07:00
gc refactor(pkg/test): split logic in pkg/test/common.go into multiple packages (#1861) 2023-09-27 11:34:48 -07:00
imagestore fix(dedupe): run dedupe only for repositories found at startup (#1844) 2023-09-27 11:15:08 -07:00
local refactor(pkg/test): split logic in pkg/test/common.go into multiple packages (#1861) 2023-09-27 11:34:48 -07:00
s3 refactor(pkg/test): split logic in pkg/test/common.go into multiple packages (#1861) 2023-09-27 11:34:48 -07:00
types refactor(pkg/test): split logic in pkg/test/common.go into multiple packages (#1861) 2023-09-27 11:34:48 -07:00
cache.go refactor(storage): refactoring storage (#1459) 2023-05-26 11:08:19 -07:00
cache_benchmark_test.go feat(cache): dynamodb implementation (#953) 2022-11-22 10:29:57 -08:00
cache_test.go refactor(storage): refactor storage into a single ImageStore (#1656) 2023-09-01 10:54:39 -07:00
README.md refactor(cache): rewrote/refactored cachedb functionality to use interface (#667) 2022-11-02 15:53:08 -07:00
scrub.go refactor(scrub): replace umoci logic in scrub implementation (#1845) 2023-09-26 11:02:11 -07:00
scrub_test.go refactor(pkg/test): split logic in pkg/test/common.go into multiple packages (#1861) 2023-09-27 11:34:48 -07:00
storage.go fix(gc): sync repodb when gc'ing manifests (#1819) 2023-09-22 11:51:20 -07:00
storage_controller.go refactor(pkg/test): split logic in pkg/test/common.go into multiple packages (#1861) 2023-09-27 11:34:48 -07:00
storage_test.go refactor(pkg/test): split logic in pkg/test/common.go into multiple packages (#1861) 2023-09-27 11:34:48 -07: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