Skip to content

Commit e63c0d5

Browse files
committed
OCPBUGS-81627: Load ClusterResourceQuota CRD before CVO manifests
The CRD ClusterResourceQuota is required by kube-apiserver in order to access any namespaced resource. Therefore, during bootstrapping it must be applied prior to serveral of the resource manifests that are contributed by the Cluster Version Operator, which (creates a Deployment and several related resources in the cluster-version-operator namespace). This can result in the apiserver failing its startup checks before the ClusterResourceQuota is applied, and going into a failure loop from which it never recovers. Therefore rename the manifest file from 0000_03_config-operator_... to 0000_00_apiserver_... to ensure that it sorts before the 0000_00_cluster-version-operator_* manifests.
1 parent f50e695 commit e63c0d5

7 files changed

Lines changed: 7 additions & 7 deletions

File tree

hack/update-payload-crds.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ crd_globs="\
99
machine/v1/zz_generated.crd-manifests/*.crd*yaml\
1010
operator/v1/zz_generated.crd-manifests//*_config-operator_*.crd*yaml\
1111
operator/v1alpha1/zz_generated.crd-manifests//*_config-operator_*.crd*yaml\
12-
quota/v1/zz_generated.crd-manifests/*_config-operator_*.crd*yaml\
12+
quota/v1/zz_generated.crd-manifests/*.crd.yaml\
1313
security/v1/zz_generated.crd-manifests/*_config-operator_*.crd*yaml\
1414
securityinternal/v1/zz_generated.crd-manifests/*_config-operator_*.crd*yaml
1515
operator/v1/zz_generated.crd-manifests/0000_50_authentication_01_authentications*.crd.yaml

payload-manifests/crds/0000_03_config-operator_01_clusterresourcequotas.crd.yaml renamed to payload-manifests/crds/0000_00_apiserver_01_clusterresourcequotas.crd.yaml

File renamed without changes.

quota/v1/generated.proto

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

quota/v1/types.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import (
1717
// +kubebuilder:resource:path=clusterresourcequotas,scope=Cluster
1818
// +kubebuilder:subresource:status
1919
// +openshift:api-approved.openshift.io=https://github.com/openshift/api/pull/470
20-
// +openshift:file-pattern=cvoRunLevel=0000_03,operatorName=config-operator,operatorOrdering=01
20+
// +openshift:file-pattern=cvoRunLevel=0000_00,operatorName=apiserver,operatorOrdering=01
2121
// +openshift:compatibility-gen:level=1
2222
// +kubebuilder:metadata:annotations=release.openshift.io/bootstrap-required=true
2323
type ClusterResourceQuota struct {

quota/v1/zz_generated.crd-manifests/0000_03_config-operator_01_clusterresourcequotas.crd.yaml renamed to quota/v1/zz_generated.crd-manifests/0000_00_apiserver_01_clusterresourcequotas.crd.yaml

File renamed without changes.

quota/v1/zz_generated.featuregated-crd-manifests.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ clusterresourcequotas.quota.openshift.io:
66
Capability: ""
77
Category: ""
88
FeatureGates: []
9-
FilenameOperatorName: config-operator
9+
FilenameOperatorName: apiserver
1010
FilenameOperatorOrdering: "01"
11-
FilenameRunLevel: "0000_03"
11+
FilenameRunLevel: "0000_00"
1212
GroupName: quota.openshift.io
1313
HasStatus: true
1414
KindName: ClusterResourceQuota

quota/v1/zz_generated.featuregated-crd-manifests/clusterresourcequotas.quota.openshift.io/AAA_ungated.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ kind: CustomResourceDefinition
33
metadata:
44
annotations:
55
api-approved.openshift.io: https://github.com/openshift/api/pull/470
6-
api.openshift.io/filename-cvo-runlevel: "0000_03"
7-
api.openshift.io/filename-operator: config-operator
6+
api.openshift.io/filename-cvo-runlevel: "0000_00"
7+
api.openshift.io/filename-operator: apiserver
88
api.openshift.io/filename-ordering: "01"
99
feature-gate.release.openshift.io/: "true"
1010
release.openshift.io/bootstrap-required: "true"

0 commit comments

Comments
 (0)