-
Bug
-
Resolution: Won't Do
-
Major
-
None
-
quay-v3.3.2, quay-v3.4.0
-
None
Description:
This is an issue found when use Quay Operator to deploy Quay, as officially Quay support use Postgresql and Mysql as Quay's database, and also using Quay-config app admin can choose Mysql database to setup database schema, but when specify Mysql database connection info in Quay CR file, quay deployment was failed with error message "Connection pooling disabled for postgresql", that means Quay operator can only support "Postgresql", if Quay Customers want to use Mysql Database, they need to use Quay-config app to setup db and update Quay config.yaml manually.
Suggestions:
To improve Customer's user experience, suggest Quay Operator add support Mysql database.
Quay Operator Image: V3.3.2
Steps:
- Deploy Quay V3.3.2 Operator on OCP
- Create new Quay CR file by specifying mysql database server
- Create secret including Mysql server's userName, password and dbName
- Trigger Quay Deployment
Expected Results:
Quay deployment complete successfully.
Actual Results:
Quay deployment was failed at setup DB, see logs.
apiVersion: redhatcop.redhat.io/v1alpha1 kind: QuayEcosystem metadata: name: demo-quayecosystem spec: quay: imagePullSecretName: redhat-pull-secret enableRepoMirroring: true image: quay.io/projectquay/quay:0c65f88a registryBackends: - name: default s3: accessKey: ************************ bucketName: quaymysql0909 secretKey: ************************ host: s3.us-east-2.amazonaws.com database: credentialsSecretName: quaydb server: terraform-20200909023133730900000001.cmqwuswughvh.us-east-2.rds.amazonaws.com envVars: - name: DEBUGLOG value: "true" clair: enabled: true image: quay.io/quay/clair-jwt:v3.3.1-2 imagePullSecretName: redhat-pull-secret
Logs:
2020-09-09 06:29:06,606 [53] [INFO] [gunicorn.access] - quayconfig [09/Sep/2020:06:29:06 +0000] "POST /api/v1/configapp/initialization HTTP/1.0" 200 2 "-" "Go-http-client/1.1" gunicorn-config stdout | 2020-09-09 06:29:06,606 [53] [INFO] [gunicorn.access] - quayconfig [09/Sep/2020:06:29:06 +0000] "POST /api/v1/configapp/initialization HTTP/1.0" 200 2 "-" "Go-http-client/1.1" 2020-09-09 06:29:06,608 [53] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-config stdout | 2020-09-09 06:29:06,608 [53] [INFO] [data.database] Connection pooling disabled for postgresql 2020-09-09 06:29:11,641 [53] [ERROR] [util.config.validator] Validation exception Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/peewee.py", line 2993, in connect self._state.set_connection(self._connect()) File "/usr/local/lib/python3.6/site-packages/peewee.py", line 3688, in _connect conn = psycopg2.connect(database=self.database, **self.connect_params) File "/usr/local/lib64/python3.6/site-packages/psycopg2/__init__.py", line 126, in connect conn = _connect(dsn, connection_factory=connection_factory, **kwasync) psycopg2.OperationalError: timeout expired