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

unrecognized baselineCapabilitySet "v4.17" with `oc adm release extract --install-config --included`

    • Icon: Bug Bug
    • Resolution: Done-Errata
    • Icon: Minor Minor
    • None
    • 4.17.0
    • oc / update
    • Important
    • None
    • 3
    • OTA 259, OTA 260, OTA 261, OTA 262
    • 4
    • Rejected
    • False
    • Hide

      None

      Show
      None
    • N/A
    • Release Note Not Required
    • Done

      This is a clone of issue OCPBUGS-41111. The following is the description of the original issue:
      โ€”
      Description of problem:

      v4.17 baselineCapabilitySet is not recognized.
        
      # ./oc adm release extract --install-config v4.17-basecap.yaml --included --credentials-requests --from quay.io/openshift-release-dev/ocp-release:4.17.0-rc.1-x86_64 --to /tmp/test
      
      error: unrecognized baselineCapabilitySet "v4.17"
      
      # cat v4.17-basecap.yaml
      ---
      apiVersion: v1
      platform:
        gcp:
          foo: bar
      capabilities:
        baselineCapabilitySet: v4.17 

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

          4.17.0-0.nightly-2024-09-04-132247

      How reproducible:

          always

      Steps to Reproduce:

          1. Run `oc adm release extract --install-config --included` against an install-config file including baselineCapabilitySet: v4.17. 
          2.
          3.
          

      Actual results:

          `oc adm release extract` throw unrecognized error

      Expected results:

          `oc adm release extract` should extract correct manifests

      Additional info:

          If specifying baselineCapabilitySet: v4.16, it works well. 

            [OCPBUGS-41642] unrecognized baselineCapabilitySet "v4.17" with `oc adm release extract --install-config --included`

            Errata Tool added a comment -

            Since the problem described in this issue should be resolved in a recent advisory, it has been closed.

            For information on the advisory (Important: OpenShift Container Platform 4.17.4 bug fix and security update), and where to find the updated files, follow the link below.

            If the solution does not work for you, open a new bug report.
            https://access.redhat.com/errata/RHSA-2024:8981

            Errata Tool added a comment - Since the problem described in this issue should be resolved in a recent advisory, it has been closed. For information on the advisory (Important: OpenShift Container Platform 4.17.4 bug fix and security update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2024:8981

            Jia Liu added a comment -

            Pass on 4.17.0-0.nightly-2024-11-06-131426 for the installer pr.

             

            // Trigger ipi installation while setting baselineCapabilitySet: v4.17 in install-config.yaml, installation succeed. 
            
            ---
            apiVersion: v1
            ...
            capabilities:
              baselineCapabilitySet: v4.17
            ...
            
            # ./oc get clusterversion version -ojson|jq .status.capabilities
            {
              "enabledCapabilities": [
                "Build",
                "CSISnapshot",
                "CloudControllerManager",
                "CloudCredential",
                "Console",
                "DeploymentConfig",
                "ImageRegistry",
                "Ingress",
                "Insights",
                "MachineAPI",
                "NodeTuning",
                "OperatorLifecycleManager",
                "Storage",
                "baremetal",
                "marketplace",
                "openshift-samples"
              ],
              "knownCapabilities": [
                "Build",
                "CSISnapshot",
                "CloudControllerManager",
                "CloudCredential",
                "Console",
                "DeploymentConfig",
                "ImageRegistry",
                "Ingress",
                "Insights",
                "MachineAPI",
                "NodeTuning",
                "OperatorLifecycleManager",
                "Storage",
                "baremetal",
                "marketplace",
                "openshift-samples"
              ]
            }
            
            # ./oc get CustomResourceDefinition clusterversions.config.openshift.io -oyaml|grep baselineCapabilitySet: -A15
                              baselineCapabilitySet:
                                description: baselineCapabilitySet selects an initial set of optional
                                  capabilities to enable, which can be extended via additionalEnabledCapabilities.  If
                                  unset, the cluster will choose a default, and the default may
                                  change over time. The current default is vCurrent.
                                enum:
                                - None
                                - v4.11
                                - v4.12
                                - v4.13
                                - v4.14
                                - v4.15
                                - v4.16
                                - v4.17
                                - vCurrent
                                type: string

            Both cvo and oc pr were pre-merge verified before.

            Move the bug status to verified.

             

            Jia Liu added a comment - Pass on 4.17.0-0.nightly-2024-11-06-131426 for the installer pr.   // Trigger ipi installation while setting baselineCapabilitySet: v4.17 in install-config.yaml, installation succeed. --- apiVersion: v1 ... capabilities: baselineCapabilitySet: v4.17 ... # ./oc get clusterversion version -ojson|jq .status.capabilities {   "enabledCapabilities" : [     "Build" ,     "CSISnapshot" ,     "CloudControllerManager" ,     "CloudCredential" ,     "Console" ,     "DeploymentConfig" ,     "ImageRegistry" ,     "Ingress" ,     "Insights" ,     "MachineAPI" ,     "NodeTuning" ,     "OperatorLifecycleManager" ,     "Storage" ,     "baremetal" ,     "marketplace" ,     "openshift-samples"   ],   "knownCapabilities" : [     "Build" ,     "CSISnapshot" ,     "CloudControllerManager" ,     "CloudCredential" ,     "Console" ,     "DeploymentConfig" ,     "ImageRegistry" ,     "Ingress" ,     "Insights" ,     "MachineAPI" ,     "NodeTuning" ,     "OperatorLifecycleManager" ,     "Storage" ,     "baremetal" ,     "marketplace" ,     "openshift-samples"   ] } # ./oc get CustomResourceDefinition clusterversions.config.openshift.io -oyaml|grep baselineCapabilitySet: -A15                   baselineCapabilitySet:                     description: baselineCapabilitySet selects an initial set of optional                       capabilities to enable, which can be extended via additionalEnabledCapabilities.  If                       unset, the cluster will choose a default , and the default may                       change over time. The current default is vCurrent.                     enum :                     - None                     - v4.11                     - v4.12                     - v4.13                     - v4.14                     - v4.15                     - v4.16                     - v4.17                     - vCurrent                     type: string Both cvo and oc pr were pre-merge verified before. Move the bug status to verified.  

            Jia Liu added a comment -

            Pre-merge verify against https://github.com/openshift/cluster-version-operator/pull/1087, pass

            // launch a cluster with pr 1087
            
            # ./oc get clusterversion
            NAME      VERSION                                                AVAILABLE   PROGRESSING   SINCE   STATUS
            version   4.17.0-0.test-2024-09-13-020321-ci-ln-zg0zq4k-latest   True        False         26m     Cluster version is 4.17.0-0.test-2024-09-13-020321-ci-ln-zg0zq4k-latest
            
            # ./oc get CustomResourceDefinition clusterversions.config.openshift.io -oyaml|grep baselineCapabilitySet: -A14
                              baselineCapabilitySet:
                                description: baselineCapabilitySet selects an initial set of optional
                                  capabilities to enable, which can be extended via additionalEnabledCapabilities.  If
                                  unset, the cluster will choose a default, and the default may
                                  change over time. The current default is vCurrent.
                                enum:
                                - None
                                - v4.11
                                - v4.12
                                - v4.13
                                - v4.14
                                - v4.15
                                - v4.16
                                - v4.17
                                - vCurrent
            
            # ./oc get clusterversion version -ojson|jq .status.capabilities
            {
              "enabledCapabilities": [
                "Build",
                "CSISnapshot",
                "CloudControllerManager",
                "CloudCredential",
                "Console",
                "DeploymentConfig",
                "ImageRegistry",
                "Ingress",
                "Insights",
                "MachineAPI",
                "NodeTuning",
                "OperatorLifecycleManager",
                "Storage",
                "baremetal",
                "marketplace",
                "openshift-samples"
              ],
              "knownCapabilities": [
                "Build",
                "CSISnapshot",
                "CloudControllerManager",
                "CloudCredential",
                "Console",
                "DeploymentConfig",
                "ImageRegistry",
                "Ingress",
                "Insights",
                "MachineAPI",
                "NodeTuning",
                "OperatorLifecycleManager",
                "Storage",
                "baremetal",
                "marketplace",
                "openshift-samples"
              ]
            } 

            Pre-merge verify against https://github.com/openshift/oc/pull/1876 , pass

            # git checkout release-4.17-v4.17-capability-set
            Branch 'release-4.17-v4.17-capability-set' set up to track remote branch 'release-4.17-v4.17-capability-set' from 'origin'.
            Switched to a new branch 'release-4.17-v4.17-capability-set'
            
            # make oc
            ...
            
            # ./oc version
            Client Version: v4.2.0-alpha.0-2429-gf10e4ab
            Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
            Server Version: 4.17.0-0.test-2024-09-13-020321-ci-ln-zg0zq4k-latest
            Kubernetes Version: v1.30.4-dirty
            
            # ls /tmp/test/
            #
            
            # cat v4.17-basecap.yaml
            ---
            apiVersion: v1
            platform:
              gcp:
                foo: bar
            capabilities:
              baselineCapabilitySet: v4.17
            
            # ./oc adm release extract --install-config v4.17-basecap.yaml --included --credentials-requests --from quay.io/openshift-release-dev/ocp-release:4.17.0-rc.2-x86_64 --to /tmp/test
            I0913 03:24:17.296154  216988 extract_tools.go:1214] If the eventual cluster will not be the same minor version as this v4.2.0-alpha.0-2429-gf10e4ab 'oc', the known capability sets may differ.
            Extracted release payload from digest sha256:1bab1d84ec69f8c7bc72ca5e60fda16ea49d42598092b8afd7b50378b6ede8ed created at 2024-09-06T15:17:34Z
            
            # ls /tmp/test
            0000_26_cloud-controller-manager-operator_16_credentialsrequest-gcp.yaml
            0000_30_machine-api-operator_00_credentials-request.yaml
            0000_50_cloud-credential-operator_05-gcp-ro-credentialsrequest.yaml
            0000_50_cluster-image-registry-operator_01-registry-credentials-request-gcs.yaml
            0000_50_cluster-ingress-operator_00-ingress-credentials-request.yaml
            0000_50_cluster-network-operator_02-cncc-credentials.yaml
            0000_50_cluster-storage-operator_03_credentials_request_gcp.yaml 

            Jia Liu added a comment - Pre-merge verify against https://github.com/openshift/cluster-version-operator/pull/1087, pass // launch a cluster with pr 1087 # ./oc get clusterversion NAME      VERSION                                                AVAILABLE   PROGRESSING   SINCE   STATUS version   4.17.0-0.test-2024-09-13-020321-ci-ln-zg0zq4k-latest   True        False         26m     Cluster version is 4.17.0-0.test-2024-09-13-020321-ci-ln-zg0zq4k-latest # ./oc get CustomResourceDefinition clusterversions.config.openshift.io -oyaml|grep baselineCapabilitySet: -A14                   baselineCapabilitySet:                     description: baselineCapabilitySet selects an initial set of optional                       capabilities to enable, which can be extended via additionalEnabledCapabilities.  If                       unset, the cluster will choose a default , and the default may                       change over time. The current default is vCurrent.                     enum :                     - None                     - v4.11                     - v4.12                     - v4.13                     - v4.14                     - v4.15                     - v4.16                     - v4.17                     - vCurrent # ./oc get clusterversion version -ojson|jq .status.capabilities {   "enabledCapabilities" : [     "Build" ,     "CSISnapshot" ,     "CloudControllerManager" ,     "CloudCredential" ,     "Console" ,     "DeploymentConfig" ,     "ImageRegistry" ,     "Ingress" ,     "Insights" ,     "MachineAPI" ,     "NodeTuning" ,     "OperatorLifecycleManager" ,     "Storage" ,     "baremetal" ,     "marketplace" ,     "openshift-samples"   ],   "knownCapabilities" : [     "Build" ,     "CSISnapshot" ,     "CloudControllerManager" ,     "CloudCredential" ,     "Console" ,     "DeploymentConfig" ,     "ImageRegistry" ,     "Ingress" ,     "Insights" ,     "MachineAPI" ,     "NodeTuning" ,     "OperatorLifecycleManager" ,     "Storage" ,     "baremetal" ,     "marketplace" ,     "openshift-samples"   ] } Pre-merge verify against https://github.com/openshift/oc/pull/1876 , pass # git checkout release-4.17-v4.17-capability-set Branch 'release-4.17-v4.17-capability-set' set up to track remote branch 'release-4.17-v4.17-capability-set' from 'origin' . Switched to a new branch 'release-4.17-v4.17-capability-set' # make oc ... # ./oc version Client Version: v4.2.0-alpha.0-2429-gf10e4ab Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3 Server Version: 4.17.0-0.test-2024-09-13-020321-ci-ln-zg0zq4k-latest Kubernetes Version: v1.30.4-dirty # ls /tmp/test/ # # cat v4.17-basecap.yaml --- apiVersion: v1 platform:   gcp:     foo: bar capabilities:   baselineCapabilitySet: v4.17 # ./oc adm release extract --install-config v4.17-basecap.yaml --included --credentials-requests --from quay.io/openshift-release-dev/ocp-release:4.17.0-rc.2-x86_64 --to /tmp/test I0913 03:24:17.296154  216988 extract_tools.go:1214] If the eventual cluster will not be the same minor version as this v4.2.0-alpha.0-2429-gf10e4ab 'oc' , the known capability sets may differ. Extracted release payload from digest sha256:1bab1d84ec69f8c7bc72ca5e60fda16ea49d42598092b8afd7b50378b6ede8ed created at 2024-09-06T15:17:34Z # ls /tmp/test 0000_26_cloud-controller-manager-operator_16_credentialsrequest-gcp.yaml 0000_30_machine-api-operator_00_credentials-request.yaml 0000_50_cloud-credential-operator_05-gcp-ro-credentialsrequest.yaml 0000_50_cluster-image-registry-operator_01-registry-credentials-request-gcs.yaml 0000_50_cluster-ingress-operator_00-ingress-credentials-request.yaml 0000_50_cluster-network-operator_02-cncc-credentials.yaml 0000_50_cluster-storage-operator_03_credentials_request_gcp.yaml

            Marked as not a blocker, "v4.16" is effectively the same and can be used in 4.17 but lets try to get these in place before RC going forward and/or decide soon if we continue adding these indefinitely once we achieve steady state on capabilities.

            Scott Dodson added a comment - Marked as not a blocker, "v4.16" is effectively the same and can be used in 4.17 but lets try to get these in place before RC going forward and/or decide soon if we continue adding these indefinitely once we achieve steady state on capabilities.

            Defining v4.y synonyms with each 4.y still seems like long-term busywork to me, but asking around, I seem to be the lone member with that opinion at the moment.  I've opened API pulls for dev/4.18 (OCPBUGS-41111) and 4.17 (this ticket), and set both Release Blocker: Approved (because if we're defining these sets, we want them available at GA time in 4.y.0).  I hope we'll have time to revisit when 4.18 forks off from the dev branch, and can avoid declaring a v4.19 at that point, but we'll see, maybe we'll have another rush where folks think it's easier to extend the existing set-for-each-4.y pattern than it is to find an approach that reduces dev/QE/docs time.

            W. Trevor King added a comment - Defining v4.y synonyms with each 4.y still seems like long-term busywork to me, but asking around, I seem to be the lone member with that opinion at the moment.  I've opened API pulls for dev/4.18 ( OCPBUGS-41111 ) and 4.17 (this ticket), and set both Release Blocker: Approved (because if we're defining these sets, we want them available at GA time in 4.y.0).  I hope we'll have time to revisit when 4.18 forks off from the dev branch, and can avoid declaring a v4.19 at that point, but we'll see, maybe we'll have another rush where folks think it's easier to extend the existing set-for-each-4.y pattern than it is to find an approach that reduces dev/QE/docs time.

              trking W. Trevor King
              openshift-crt-jira-prow OpenShift Prow Bot
              Jia Liu Jia Liu
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

                Created:
                Updated:
                Resolved: