I'm trying to use a Zot registry that I have configured with an ingress that points to a base path /zot.However, the ociRepo resource is unable to connect properly to the registry. During the v2 lookup it omits the basepath.
Here is my spec:
apiVersion: v1
items:
- apiVersion: source.toolkit.fluxcd.io/v1
kind: OCIRepository
metadata:
creationTimestamp: "2025-10-14T05:45:58Z"
finalizers:
- finalizers.fluxcd.io
generation: 1
name: mural-spoke-definitions
namespace: mural-system
resourceVersion: "549568"
uid: 6120aece-2a73-415f-9526-5e8a4335f542
spec:
insecure: true
interval: 1m0s
provider: generic
ref:
tag: mural-spoke-definitions
secretRef:
name: oci-basic-auth-hub
timeout: 1m0s
url: oci://example.abc.com/zot/mural-workloads # REPLACED WITH MOCK EXAMPLE
The status conditions are
status:
conditions:
- lastTransitionTime: "2025-10-14T16:38:55Z"
message: building artifact
observedGeneration: 1
reason: ProgressingWithRetry
status: "True"
type: Reconciling
- lastTransitionTime: "2025-10-14T16:38:55Z"
message: "failed to determine artifact digest: GET https://example.abc.com/v2/:
unexpected status code 404 Not Found: <html>\r\n<head><title>404 Not Found</title></head>\r\n<body>\r\n<center><h1>404
Not Found</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n;
Get \"http://example.abc.com/v2/\": dial tcp 4.211.199.12:80:
i/o timeout"
observedGeneration: 1
reason: OCIArtifactPullFailed
status: "False"
type: Ready
- lastTransitionTime: "2025-10-14T16:38:55Z"
message: "failed to determine artifact digest: GET https://example.abc.com/v2/:
unexpected status code 404 Not Found: <html>\r\n<head><title>404 Not Found</title></head>\r\n<body>\r\n<center><h1>404
Not Found</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n;
Get \"http://example.abc.com/v2/\": dial tcp 4.211.199.12:80:
i/o timeout"
observedGeneration: 1
reason: OCIArtifactPullFailed
status: "True"
type: FetchFailed
observedGeneration: -1
kind: List
metadata:
resourceVersion: ""
It's hitting the endpoint correctly but it needs to include the basepath for it to properly work. Below is an example with curl where I target the endpoint and get a response.
curl -u example:'notarealpwd' https://example.abc.com/zot/v2/_catalog
{"repositories":["zot/mural-workloads"]}
I'm trying to use a Zot registry that I have configured with an ingress that points to a base path
/zot.However, the ociRepo resource is unable to connect properly to the registry. During thev2lookup it omits the basepath.Here is my spec:
The status conditions are
status: conditions: - lastTransitionTime: "2025-10-14T16:38:55Z" message: building artifact observedGeneration: 1 reason: ProgressingWithRetry status: "True" type: Reconciling - lastTransitionTime: "2025-10-14T16:38:55Z" message: "failed to determine artifact digest: GET https://example.abc.com/v2/: unexpected status code 404 Not Found: <html>\r\n<head><title>404 Not Found</title></head>\r\n<body>\r\n<center><h1>404 Not Found</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n; Get \"http://example.abc.com/v2/\": dial tcp 4.211.199.12:80: i/o timeout" observedGeneration: 1 reason: OCIArtifactPullFailed status: "False" type: Ready - lastTransitionTime: "2025-10-14T16:38:55Z" message: "failed to determine artifact digest: GET https://example.abc.com/v2/: unexpected status code 404 Not Found: <html>\r\n<head><title>404 Not Found</title></head>\r\n<body>\r\n<center><h1>404 Not Found</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n; Get \"http://example.abc.com/v2/\": dial tcp 4.211.199.12:80: i/o timeout" observedGeneration: 1 reason: OCIArtifactPullFailed status: "True" type: FetchFailed observedGeneration: -1 kind: List metadata: resourceVersion: ""It's hitting the endpoint correctly but it needs to include the basepath for it to properly work. Below is an example with curl where I target the endpoint and get a response.