Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-34906

openshift/api verify-crd-schema job fails for IngressController CRD

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done-Errata
    • Icon: Major Major
    • None
    • 4.17
    • Networking / router
    • Important
    • No
    • Sprint 254, NE Sprint 255, NE Sprint 256
    • 3
    • Rejected
    • False
    • Hide

      None

      Show
      None
    • N/A (Internal CI Fix)
    • Release Note Not Required
    • Done

      Description of problem:

      The ci/prow/verify-crd-schema job on openshift/api fails due to missing listType tags when adding a tech preview feature to the IngressController because it branches the CRDs into separate versions via features sets. 
      
      As an example, it fails on: https://github.com/openshift/api/pull/1841.
      
      
      The errors "must set x-kubernetes-list-type" need to resolved by adding:
          // +listType=atomic
      or
          // +listType=map
          // +listMapKey=<key>
      
      to the fields that are missing the tags.

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

      4.17

      How reproducible:

      100%    

      Steps to Reproduce:

          1. Add a techpreview field to the IngressController API
          2. make update
          3. ./hack/verify-crd-schema-checker.sh     

      Actual results:

      t.io version/v1 field/^.spec.httpHeaders.headerNameCaseAdjustments must set x-kubernetes-list-type
              error in operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers-CustomNoUpgrade.crd.yaml: ListsMustHaveSSATags: crd/ingresscontrollers.operator.openshift.io version/v1 field/^.spec.logging.access.httpCaptureCookies must set x-kubernetes-list-type
      
      ...    

      Expected results:

      No errors except for any errors for embedded external fields. E.g. this error is unavoidable and must always be overridden:
      
      error in operator/v1/zz_generated.featuregated-crd-manifests/ingresscontrollers.operator.openshift.io/IngressControllerLBSubnetsAWS.yaml: NoMaps: crd/ingresscontrollers.operator.openshift.io version/v1 field/^.spec.routeSelector.matchLabels may not be a map

      Additional info:

          

              gspence@redhat.com Grant Spence
              gspence@redhat.com Grant Spence
              Hongan Li Hongan Li
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: