Uploaded image for project: 'Project Quay'
  1. Project Quay
  2. PROJQUAY-3822

Deploy Quay by Operator with unmanaged Route and managed TLS should throw out error

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • None
    • quay-v3.7.0
    • quay-operator
    • False
    • None
    • False
    • 0

    Description

      Description of problem:

      When Deploy Quay by Operator with unmanaged Route and managed TLS, it should get error like

       

      2021-08-04T08:58:14.650Z ERROR controllers.QuayRegistry could not ensure default `spec.components` {"quayregistry": "quay360802/quay360", "error": "cannot use `tls` component when `Route` API not available or TLS cert/key pair is provided"}

       

      But in 3.7.0,  all pods are running, the route can not work. There is no error message in operator pod log.

      Version-Release number of selected component (if applicable):

      quay-operator-bundle-container-v3.7.0-134
      Index image v4.7: registry-proxy.engineering.redhat.com/rh-osbs/iib:235016

      How reproducible:

      always

      Steps to Reproduce:
      1. deploy quay with below configuration

      config.yaml

      DISTRIBUTED_STORAGE_DEFAULT_LOCATIONS: 
        - default
      DISTRIBUTED_STORAGE_PREFERENCE:
        - default
      DISTRIBUTED_STORAGE_CONFIG:
        default:
          - AzureStorage
          - azure_account_name: whusc2 
            azure_account_key: C5hi...gog==
            azure_container: whusc2container 
            sas_token: ?sv=.....c2KNQYNMvI8Yb8%3D 
            storage_path: /quaydata
      SUPER_USERS:
          - whuquay
          - whutest
      SERVER_HOSTNAME: quaywhu.apps.whu47az3.qe.azure.devcluster.openshift.com 
      FEATURE_ANONYMOUS_ACCESS: true 
      FEATURE_QUOTA_MANAGEMENT: true
      FEATURE_PROXY_CACHE: true
      BROWSER_API_CALLS_XHR_ONLY: false
      CREATE_PRIVATE_REPO_ON_PUSH: true
      CREATE_NAMESPACE_ON_PUSH: true
      FEATURE_USERNAME_CONFIRMATION: false
      FEATURE_USER_INITIALIZE: true 
      AUTHENTICATION_TYPE: Database

       

      quayregistry.yaml 

      apiVersion: quay.redhat.com/v1
      kind: QuayRegistry
      metadata:
        name: quayregistry
        namespace: quay-enterprise 
      spec:
        configBundleSecret:  config-bundle-secret-20220519-124148
        components:
          - kind: clair
            managed: true 
          - kind: postgres
            managed: true 
          - kind: objectstorage
            managed: false 
          - kind: tls
            managed: true
          - kind: redis
            managed: true 
          - kind: horizontalpodautoscaler
            managed: true 
          - kind: route
            managed: false 
          - kind: mirror
            managed: true 
          - kind: monitoring
            managed: false 

       

      2. check quay deployment result

      Actual results:

      All pods are running. There is no error message in operator pod log. The route can not work.

      $ oc get pod
      NAME                                               READY   STATUS      RESTARTS   AGE
      quay-operator.v3.7.0-df8f456cd-2n8bv               1/1     Running     0          68m
      quayregistry-clair-app-748d6d4bc-9pnqm             1/1     Running     0          55m
      quayregistry-clair-app-748d6d4bc-lbwqm             1/1     Running     0          55m
      quayregistry-clair-postgres-64d88c4955-kfflh       1/1     Running     1          67m
      quayregistry-quay-app-8c7d7f8-tddlj                1/1     Running     0          55m
      quayregistry-quay-app-8c7d7f8-zxpt8                1/1     Running     0          54m
      quayregistry-quay-app-upgrade-s8g6r                0/1     Completed   0          67m
      quayregistry-quay-config-editor-5cd774984c-xdtq8   1/1     Running     0          55m
      quayregistry-quay-database-5cb6ddcff4-pncf8        1/1     Running     0          67m
      quayregistry-quay-mirror-784b44fb5d-8f4bw          1/1     Running     0          55m
      quayregistry-quay-mirror-784b44fb5d-98wp8          1/1     Running     0          55m
      quayregistry-quay-redis-7ff9b54946-p47l2           1/1     Running     0          55m
      
      $ oc get route
      No resources found in quay-enterprise namespace.
      

      Expected results:

      There is error message in operator pod log. the deployment is failed.

      Additional info:

      The attachment includes the log of quay-operator.v3.7.0 pod.

       

      $ oc get quayregistries.quay.redhat.com -o yaml
      apiVersion: v1
      items:
      - apiVersion: quay.redhat.com/v1
        kind: QuayRegistry
        metadata:
          creationTimestamp: "2022-05-19T12:29:42Z"
          finalizers:
          - quay-operator/finalizer
          generation: 3
          managedFields:
          - apiVersion: quay.redhat.com/v1
            fieldsType: FieldsV1
            fieldsV1:
              f:spec: {}
            manager: kubectl-create
            operation: Update
            time: "2022-05-19T12:29:42Z"
          - apiVersion: quay.redhat.com/v1
            fieldsType: FieldsV1
            fieldsV1:
              f:metadata:
                f:finalizers: {}
              f:spec:
                f:components: {}
              f:status:
                .: {}
                f:conditions: {}
                f:configEditorCredentialsSecret: {}
                f:currentVersion: {}
                f:lastUpdated: {}
                f:registryEndpoint: {}
            manager: manager
            operation: Update
            time: "2022-05-19T12:31:02Z"
          - apiVersion: quay.redhat.com/v1
            fieldsType: FieldsV1
            fieldsV1:
              f:spec:
                f:configBundleSecret: {}
            manager: kubectl-patch
            operation: Update
            time: "2022-05-19T12:41:51Z"
          name: quayregistry
          namespace: quay-enterprise
          resourceVersion: "143040"
          selfLink: /apis/quay.redhat.com/v1/namespaces/quay-enterprise/quayregistries/quayregistry
          uid: cc970143-4811-476a-9a10-6bda5b9cfd14
        spec:
          components:
          - kind: clair
            managed: true
          - kind: postgres
            managed: true
          - kind: objectstorage
            managed: false
          - kind: redis
            managed: true
          - kind: horizontalpodautoscaler
            managed: true
          - kind: route
            managed: false
          - kind: mirror
            managed: true
          - kind: monitoring
            managed: false
          - kind: quay
            managed: true
          - kind: tls
            managed: true
          - kind: clairpostgres
            managed: true
          configBundleSecret: config-bundle-secret-20220519-124148
        status:
          conditions:
          - lastTransitionTime: "2022-05-19T12:29:56Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: Horizontal pod autoscaler found
            reason: ComponentReady
            status: "True"
            type: ComponentHPAReady
          - lastTransitionTime: "2022-05-19T12:29:43Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: Route is not managed by the operator
            reason: ComponentNotManaged
            status: "True"
            type: ComponentRouteReady
          - lastTransitionTime: "2022-05-19T12:29:43Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: Monitoring not managed by the operator
            reason: ComponentNotManaged
            status: "True"
            type: ComponentMonitoringReady
          - lastTransitionTime: "2022-05-19T12:30:44Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: Deployment quayregistry-quay-database healthy
            reason: ComponentReady
            status: "True"
            type: ComponentPostgresReady
          - lastTransitionTime: "2022-05-19T12:29:43Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: Object storage not managed by the operator
            reason: ComponentNotManaged
            status: "True"
            type: ComponentObjectStorageReady
          - lastTransitionTime: "2022-05-19T12:30:44Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: Clair component healthy
            reason: ComponentReady
            status: "True"
            type: ComponentClairReady
          - lastTransitionTime: "2022-05-19T12:30:44Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: ClairPostgres component healthy
            reason: ComponentReady
            status: "True"
            type: ComponentClairPostgresReady
          - lastTransitionTime: "2022-05-19T12:29:48Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: Using cluster wildcard certs
            reason: ComponentReady
            status: "True"
            type: ComponentTLSReady
          - lastTransitionTime: "2022-05-19T12:30:44Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: Deployment quayregistry-quay-redis healthy
            reason: ComponentReady
            status: "True"
            type: ComponentRedisReady
          - lastTransitionTime: "2022-05-19T12:32:44Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: Quay component healthy
            reason: ComponentReady
            status: "True"
            type: ComponentQuayReady
          - lastTransitionTime: "2022-05-19T12:42:51Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: Deployment quayregistry-quay-mirror healthy
            reason: ComponentReady
            status: "True"
            type: ComponentMirrorReady
          - lastTransitionTime: "2022-05-19T12:42:51Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: All components reporting as healthy
            reason: HealthChecksPassing
            status: "True"
            type: Available
          - lastTransitionTime: "2022-05-19T12:30:48Z"
            lastUpdateTime: "2022-05-19T12:30:48Z"
            message: All registry components created
            reason: ComponentsCreationSuccess
            status: "True"
            type: ComponentsCreated
          - lastTransitionTime: "2022-05-19T13:33:21Z"
            lastUpdateTime: "2022-05-19T13:33:21Z"
            message: All objects created/updated successfully
            reason: ComponentsCreationSuccess
            status: "False"
            type: RolloutBlocked
          configEditorCredentialsSecret: quayregistry-quay-config-editor-credentials-9gf72hbt7f
          currentVersion: v3.7.0
          lastUpdated: 2022-05-19 13:33:21.303345241 +0000 UTC
          registryEndpoint: https://quaywhu.apps.whu47az3.qe.azure.devcluster.openshift.com
      kind: List
      metadata:
        resourceVersion: ""
        selfLink: ""

      Attachments

        Activity

          People

            Unassigned Unassigned
            rhwhu Weihua Hu
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: