-
Bug
-
Resolution: Done
-
Critical
-
quay-v3.4.6, quay-v3.5.3
-
False
-
False
-
Undefined
-
Description:
This is an issue found when use quay 3.4.6 Quay Operator, when create QuayRegistry with all managed components, after use config editor to change quay database to use external postgresql database(Crunchy Postgresql database), Operator reconcile change, but Operator change route component from managed to unmanaged, that's not the expected behavior, see attached operator logs.
Quay Operator Logs:
2021-07-06T03:25:46.461Z INFO server.Reconfigure created new config secret for QuayRegistry: quayv346/demo 2021-07-06T03:25:46.461Z INFO server.Reconfigure marking component as unmanaged {"component": "postgres"} 2021-07-06T03:25:46.461Z INFO server.Reconfigure marking component as managed {"component": "objectstorage"} 2021-07-06T03:25:46.461Z INFO server.Reconfigure marking component as managed {"component": "redis"} 2021-07-06T03:25:46.461Z INFO server.Reconfigure marking component as managed {"component": "horizontalpodautoscaler"} 2021-07-06T03:25:46.461Z INFO server.Reconfigure marking component as unmanaged {"component": "route"} 2021-07-06T03:25:46.461Z INFO server.Reconfigure marking component as managed {"component": "mirror"} 2021-07-06T03:25:46.461Z INFO server.Reconfigure marking component as managed {"component": "clair"} 2021-07-06T03:25:46.468Z INFO controllers.QuayRegistry begin reconcile {"quayregistry": "quayv346/demo"} 2021-07-06T03:25:46.468Z INFO controllers.QuayRegistry successfully retrieved referenced `configBundleSecret` {"quayregistry": "quayv346/demo", "configBundleSecret": "demo-quay-config-bundle-qthvv", "resourceVersion": "715516"}
QuayRegistry CR:
apiVersion: quay.redhat.com/v1 kind: QuayRegistry metadata: name: quay346demo namespace: quay346 spec: components: - managed: true kind: clair - managed: true kind: postgres - managed: true kind: objectstorage - managed: true kind: redis - managed: true kind: horizontalpodautoscaler - managed: true kind: route - managed: true kind: mirror
Quay Operator:
oc get pod -n openshift-operators NAME READY STATUS RESTARTS AGE quay-operator.v3.4.6-64857d46cc-q78bc 1/1 Running 0 3h10m oc get pod quay-operator.v3.4.6-64857d46cc-q78bc -n openshift-operators -o json | jq '.spec.containers[0].image' "registry.redhat.io/quay/quay-operator-rhel8@sha256:ae692ce950655e325ed760c3adf9a2dd90320c4c61efedf9cd1a30a235fe1086" oc get pod NAME READY STATUS RESTARTS AGE demo-clair-app-68648c84fb-5bsj8 1/1 Running 0 149m demo-clair-postgres-9b86bc8fd-6ccbd 1/1 Running 0 171m demo-quay-app-857589f54c-ll6gh 1/1 Running 1 149m demo-quay-app-upgrade-lllfm 0/1 Completed 0 149m demo-quay-config-editor-548d5bbc6-sv594 1/1 Running 0 149m demo-quay-database-7fc9d4b69b-rf99r 1/1 Running 0 3h6m demo-quay-mirror-66b7bbd64b-zzgnj 1/1 Running 0 149m demo-quay-postgres-init-kbmpr 0/1 Completed 0 3h6m demo-quay-redis-845b6b77bc-xfwv2 1/1 Running 0 172m
Steps:
- Deploy OCS 4.7.2 and create OCS Cluster
- Deploy Quay 3.4.6 with Quay 3.4.6 Operator, choose to use all managed components
- Use Quay config editor to configure quay to use external Postgresql Database, input correct database server, db name, credentials, etc.
- Click Validate configurations
- Click Reconfigure Quay
- Check the status of QuayRegistry CR
Expected Results:
Operator reconcile the change successfully and postgres component change to unmanaged, other components keep to managed.
Actual Results:
Operator reconcile the change successfully and postgres component change to unmanaged, but route component change to unmanaged.