-
Bug
-
Resolution: Done
-
Blocker
-
quay-v3.6.0
-
False
-
False
-
undefined
-
Description:
This is an issue found when configure Quay to use unmanaged Azure Postgresql Database with config editor, now after deployed quay with operator, with using all managed components except monitoring(set monitor component to unmanaged), open quay config editor, configure to use Azure Postgresql database, input correct hostname, dbname, username/password, upload the CA Cert of Azure database, validate the configurations and click reconfigure quay, the results is new Qua APP POD are failed to start, checked new Quay APP POD logs ,get error message "Could not connect to database. Error: failed to connect to `host=quay36-quay-database user=quay36-quay-database database=quay36-quay-database`: tls error (server refused TLS connection)", checked the new config bundle secret, found it still use the managed postgersql database, and set to use sslmode and sslrootcert, see the new config bundle secret below.
Note: Quay image is quay-operator-bundle-container-v3.6.0-18
oc get pod NAME READY STATUS RESTARTS AGE quay-operator.v3.6.0-784898d9f8-s57wc 1/1 Running 0 5h22m quay36-clair-app-79b7d8667c-4bgb8 1/1 Running 3 5m35s quay36-clair-app-79b7d8667c-5j4fg 1/1 Running 4 5m37s quay36-clair-postgres-7ccc757458-l9qkz 1/1 Running 0 4m59s quay36-quay-app-556956757c-2r672 0/1 CrashLoopBackOff 5 5m38s quay36-quay-app-556956757c-qv2nw 0/1 CrashLoopBackOff 5 5m36s quay36-quay-app-8687dc9bd4-mz7xg 1/1 Running 4 10m quay36-quay-app-upgrade-mtvs8 0/1 Completed 0 5m43s quay36-quay-config-editor-85867bb888-bzn2v 1/1 Running 0 5m37s quay36-quay-database-74699f6975-q57mb 1/1 Running 1 10m quay36-quay-mirror-7ddb96ff5-8hg8b 0/1 CrashLoopBackOff 5 4m56s quay36-quay-mirror-7ddb96ff5-q9wql 0/1 CrashLoopBackOff 5 4m56s quay36-quay-postgres-init-mkhqh 0/1 Completed 0 10m quay36-quay-redis-799bdf98b5-9zv2m 1/1 Running 0 5m38s oc get pod quay36-quay-config-editor-85867bb888-bzn2v -o json | jq '.spec.containers[0].image' "registry.redhat.io/quay/quay-rhel8@sha256:a4cad2c70cd340029d00f468fc08cab887365d17fe22bbf31beeec36aebeb9e7" oc get pod quay-operator.v3.6.0-784898d9f8-s57wc -o json | jq '.spec.containers[0].image' "registry.redhat.io/quay/quay-operator-rhel8@sha256:a36dfd94f41997aec2d2436f2d4a6aaca7615b52cc291592aff6f34a623370d6"
| Database | Could not connect to database. Error: failed to connect to `host=quay36-quay-database user=quay36-quay-database database=quay36-quay-database`: tls error (server refused TLS connection
Quay config editor:

Quay new config bundle Secret after configured unmanaged Azure Postgresql Database:
ALLOW_PULLS_WITHOUT_STRICT_LOGGING: false AUTHENTICATION_TYPE: Database AVATAR_KIND: local BUILDLOGS_REDIS: host: quay36-quay-redis port: 6379 DATABASE_SECRET_KEY: XsUubMR30mvVWwO12MYoRf7mIkOK0aTIgIGwokaIL788l31IEsSXHqYViAm3MIrh0zDbBtQxDUVDwh2C DB_CONNECTION_ARGS: autorollback: true sslmode: verify-full sslrootcert: conf/stack/database.pem threadlocals: true DB_URI: postgresql://quay36-quay-database:PBneEz8TdEGi3dGFag2YvfOQxrE2TCyQpYv92VfNy8w6VrGSs3o74WIJBdabJHAPWYm0jcEoYfU1ftWd@quay36-quay-database:5432/quay36-quay-database DEFAULT_TAG_EXPIRATION: 2w DISTRIBUTED_STORAGE_CONFIG: local_us: - RHOCSStorage - access_key: Jnt0pLxtEdrAURvBT0f4 bucket_name: quay-datastore-23d1dc11-f44b-4a18-9c48-5b5ed3926407 hostname: s3.openshift-storage.svc.cluster.local is_secure: true port: 443 secret_key: wRbXlCx8ORVfdvuX2KYw5oUC+P2yGp5JZfOigGsd storage_path: /datastorage/registry DISTRIBUTED_STORAGE_DEFAULT_LOCATIONS: - local_us DISTRIBUTED_STORAGE_PREFERENCE: - local_us ENTERPRISE_LOGO_URL: /static/img/quay-horizontal-color.svg EXTERNAL_TLS_TERMINATION: true FEATURE_ACTION_LOG_ROTATION: false FEATURE_ANONYMOUS_ACCESS: true FEATURE_APP_SPECIFIC_TOKENS: true FEATURE_BITBUCKET_BUILD: false FEATURE_BLACKLISTED_EMAILS: false FEATURE_BUILD_SUPPORT: false FEATURE_CHANGE_TAG_EXPIRATION: true FEATURE_DIRECT_LOGIN: true FEATURE_FIPS: false FEATURE_GITHUB_BUILD: false FEATURE_GITHUB_LOGIN: false FEATURE_GITLAB_BUILD: false FEATURE_GOOGLE_LOGIN: false FEATURE_INVITE_ONLY_USER_CREATION: false FEATURE_MAILING: false FEATURE_NONSUPERUSER_TEAM_SYNCING_SETUP: false FEATURE_PARTIAL_USER_AUTOCOMPLETE: true FEATURE_PROXY_STORAGE: true FEATURE_REPO_MIRROR: true FEATURE_SECURITY_NOTIFICATIONS: true FEATURE_SECURITY_SCANNER: true FEATURE_SIGNING: false FEATURE_STORAGE_REPLICATION: false FEATURE_TEAM_SYNCING: false FEATURE_USER_CREATION: true FEATURE_USER_LAST_ACCESSED: true FEATURE_USER_LOG_ACCESS: false FEATURE_USER_METADATA: false FEATURE_USER_RENAME: false FEATURE_USERNAME_CONFIRMATION: true FRESH_LOGIN_TIMEOUT: 10m GITHUB_LOGIN_CONFIG: {} GITHUB_TRIGGER_CONFIG: {} GITLAB_TRIGGER_KIND: {} GPG2_PRIVATE_KEY_FILENAME: signing-private.gpg GPG2_PUBLIC_KEY_FILENAME: signing-public.gpg LDAP_ALLOW_INSECURE_FALLBACK: false LDAP_EMAIL_ATTR: mail LDAP_UID_ATTR: uid LDAP_URI: ldap://localhost LOGS_MODEL: database LOGS_MODEL_CONFIG: {} MAIL_DEFAULT_SENDER: support@quay.io MAIL_PORT: 587 MAIL_USE_AUTH: false MAIL_USE_TLS: false PREFERRED_URL_SCHEME: https REGISTRY_TITLE: Quay REGISTRY_TITLE_SHORT: Quay REPO_MIRROR_INTERVAL: 30 REPO_MIRROR_TLS_VERIFY: true SEARCH_MAX_RESULT_PAGE_COUNT: 10 SEARCH_RESULTS_PER_PAGE: 10 SECRET_KEY: pi9ui-byRrJePwBz1-DSpYjSKsy1-8qQicSjbSmULBOy00-1vo9yJm3KIw1f3FzDklI32dx4qdLhZxFe SECURITY_SCANNER_INDEXING_INTERVAL: 30 SECURITY_SCANNER_V4_ENDPOINT: http://quay36-clair-app:80 SECURITY_SCANNER_V4_NAMESPACE_WHITELIST: - admin SECURITY_SCANNER_V4_PSK: bC1ucDVQUHd2NDRMZHFLMDgxdWl0RE1ZblpUZFc4RFU= SERVER_HOSTNAME: quay36-quay-quay360818.router-default.apps.quay-perf-738.perfscale.devcluster.openshift.com SETUP_COMPLETE: true TAG_EXPIRATION_OPTIONS: - 2w TEAM_RESYNC_STALE_TIME: 60m TESTING: false USER_EVENTS_REDIS: host: quay36-quay-redis port: 6379 USER_RECOVERY_TOKEN_LIFETIME: 30m
Steps:
- Deploy quay with quay Operator, choose using all managed components except monitoring
- Open Quay config editor
- Configure to use Azure Postgersql Database, input valid database Server, db name, username/password, upload correct TLS Root Cert of Azure Postgresql database
- Click Validate Configurations
- Click Reconfigure Quay
- Check the status of new Quay App POD
- Check the new config bundle secret mounted in new Quay App POD
Expected Results:
New config bundle secret mounted in new Quay App POD should use correct Azure Postgresql database configurations and new Quay App POD is in ready status.
Actual Results:
New config bundle secret mounted in new Quay App POD still use previous managed postgresql database configurations , and new Quay App POD was crashed.