-
Bug
-
Resolution: Done
-
Blocker
-
None
-
quay-v3.6.0
Description:
This is an issue found when enable repository mirroring with config editor, when deploy Quay with Operator, choose to use managed route, unmanaged mirror, unmanaged tls components, and provide tls cert/key pair, after QuayRegistry come to healthy status, use config editor to enable repository mirroring. After Operator reconcile the change, found mirror components is still unmanaged and no new mirror pod was provisioning, refer to detailed Quay Operator Pod logs quay_360_operator_pod_enable_mirror.logs
Note: This issue is not existed when tls component is managed.
Quay Image is "quay-operator-bundle-container-v3.6.0-27"
2021-09-03T08:12:12.717Z INFO server.Reconfigure created new config secret for QuayRegistry: quay360/quay360 2021-09-03T08:12:12.718Z INFO server.Reconfigure marking component as unmanaged {"component": "tls"} 2021-09-03T08:12:12.718Z INFO server.Reconfigure marking component as unmanaged {"component": "mirror"} 2021-09-03T08:12:12.718Z INFO server.Reconfigure marking component as managed {"component": "postgres"} 2021-09-03T08:12:12.718Z INFO server.Reconfigure marking component as managed {"component": "clair"} 2021-09-03T08:12:12.718Z INFO server.Reconfigure marking component as managed {"component": "redis"} 2021-09-03T08:12:12.718Z INFO server.Reconfigure marking component as unmanaged {"component": "objectstorage"} 2021-09-03T08:12:12.730Z INFO controllers.QuayRegistryStatus quay components conditions reconciled (no changes) {"quayregistrystatus": "quay360/quay360"} 2021-09-03T08:12:12.730Z INFO controllers.QuayRegistry begin reconcile {"quayregistry": "quay360/quay360"} 2021-09-03T08:12:12.734Z INFO controllers.QuayRegistry successfully retrieved referenced `configBundleSecret` {"quayregistry": "quay360/quay360", "configBundleSecret": "quay360-quay-config-bundle-mzkct", "resourceVersion": "14358883"} 2021-09-03T08:12:12.735Z INFO controllers.QuayRegistry provided TLS cert/key pair in `configBundleSecret` will be used 2021-09-03T08:12:12.758Z INFO controllers.QuayRegistry cluster supports `Routes` API 2021-09-03T08:12:13.258Z INFO controllers.QuayRegistry Detected cluster hostname apps.quay-perf-738.perfscale.devcluster.openshift.com 2021-09-03T08:12:13.258Z INFO controllers.QuayRegistry detected router canonical hostname: apps.quay-perf-738.perfscale.devcluster.openshift.com 2021-09-03T08:12:13.269Z INFO controllers.QuayRegistry detected cluster wildcard certificate for apps.quay-perf-738.perfscale.devcluster.openshift.com 2021-09-03T08:12:13.288Z INFO controllers.QuayRegistry cluster supports `ObjectBucketClaims` API 2021-09-03T08:12:13.288Z INFO controllers.QuayRegistry `ObjectBucketClaim` not found 2021-09-03T08:12:13.288Z INFO controllers.QuayRegistry monitoring is only supported in AllNamespaces mode. Disabling component monitoring 2021-09-03T08:12:13.289Z INFO controllers.QuayRegistry inflating QuayRegistry into Kubernetes objects using Kustomize {"quayregistry": "quay360/quay360"} 2021-09-03T08:12:13.289Z INFO controllers.QuayRegistry `DATABASE_SECRET_KEY` found in user-provided config {"quayregistry": "quay360/quay360"} 2021-09-03T08:12:13.289Z INFO controllers.QuayRegistry `SECRET_KEY` found in user-provided config {"quayregistry": "quay360/quay360"} 2021-09-03T08:12:13.290Z INFO controllers.QuayRegistry Ensuring TLS cert/key pair for Quay app {"quayregistry": "quay360/quay360"}

After Operator reconcile the change, no mirror pod is provisioning:
oc get pod
NAME READY STATUS RESTARTS AGE
quay-operator.v3.6.0-7dc8cbc5bd-qdnsf 1/1 Running 0 5h55m
quay360-clair-app-6ff44b975d-f97df 1/1 Running 0 9m47s
quay360-clair-app-6ff44b975d-zzmtl 1/1 Running 0 9m47s
quay360-clair-postgres-5656b7c88d-v68w4 1/1 Running 1 24m
quay360-quay-app-76fd9b8ffb-5prp9 1/1 Running 0 9m47s
quay360-quay-app-76fd9b8ffb-glbzr 1/1 Running 0 9m33s
quay360-quay-app-upgrade-s9xkm 0/1 Completed 0 10m
quay360-quay-config-editor-66cf86d796-n27k7 1/1 Running 0 9m47s
quay360-quay-database-bb7bd4584-q9ljh 1/1 Running 0 24m
quay360-quay-database-ccfd7b878-8f8wx 0/1 ContainerCreating 0 9m47s
quay360-quay-postgres-init-l8wsl 1/1 Running 0 9m49s
quay360-quay-redis-679675cd65-njlpw 1/1 Running 0 24m

Steps:
- Deploy Quay with Operator, choose to use managed route, unmanaged mirror, unmanaged tls components, and provide tls cert/key pair
- Login Quay config editor, enable "Repository Mirroring"
- Click Validate Changes
- Click Reconfigure Quay
- After Operator reconcile the change, check QuayRegistry Status
- Check if new Mirror POD was provisioning
- Check if FEATURE_REPO_MIRROR is set as True
Expected Results:
Mirror Component is set to managed, FEATURE_REPO_MIRROR is set to True, and new Mirror POD was provisioned.
Actual Results:
Mirror Component is set to unmanaged, FEATURE_REPO_MIRROR is set to True, and No new Mirror POD was provisioned.