regclient / regclient

Docker and OCI Registry Client in Go and tooling using those libraries.
Apache License 2.0
1.23k stars 87 forks source link

[Issue] Unable to use regsync with self-hosted quay syncing whole registry #789

Open jonas-budde opened 1 month ago

jonas-budde commented 1 month ago

Current Behavior

I don't get an output while trying to sync a self hosted quay registry to an Azure Container Registry. The same setup worked with an ACR to ACR sync.

The Sync between self-hosted quay and ACR currently only works with type: image and repository, but it would me very convenient to just define a registry and not every single repository.

My provided quay user has access to self-hosted-quay.company.com/xyz and everything below that

Am I doing something wrong?

Expected Behavior

I should be able to define my config like this:

version: 1
  sync:
    - source: self-hosted-quay.company.com
      target: my-acr.azurecr.io
      type: registry
      interval: 1m

and it should sync the whole available registry of this user to my specified target registry. As im running regsync as a kubernetes container with the server option, the docker config is used from the /home/appuser path.

Steps To Reproduce

Use the config above.

Version

Docker Container Version: 0.7.0

Environment

additional infos

quay version: https://github.com/quay/quay/releases Quay v3.11.0

sudo-bmitch commented 1 month ago

Does the source registry implement the _catalog API? You can test that with regctl repo ls self-hosted-quay.company.com (replacing with your source registry).

jonas-budde commented 1 month ago

Hi,

I tested it with an ACR and the self-hosted quay. The ACR outputs all repos, but the self-hosted quay just replies with an empty list, even though the robot account has access to a lot of repos.

sudo-bmitch commented 1 month ago

That API is a prerequisite for the type: registry to work. It is fairly common for it to not be supported, though in this case, it probably indicates an access issue with Quay.