diff --git a/.custom-gcl.yaml b/.custom-gcl.yaml new file mode 100644 index 00000000000..8dc6ace4b13 --- /dev/null +++ b/.custom-gcl.yaml @@ -0,0 +1,7 @@ +version: v2.6.2 +name: golangci-lint-kube-api-linter +destination: "./bin" + +plugins: + - module: 'sigs.k8s.io/kube-api-linter' + version: 'v0.0.0-20251112164541-d94382a24f06' \ No newline at end of file diff --git a/.golangci.yaml b/.golangci.yaml index ff05cad21f0..4d1e6d574e5 100644 --- a/.golangci.yaml +++ b/.golangci.yaml @@ -16,6 +16,7 @@ linters: - govet - importas - ineffassign + - kubeapilinter - misspell - revive # replacement for golint - staticcheck @@ -42,6 +43,18 @@ linters: rules: - name: var-naming disabled: true + custom: + kubeapilinter: + type: "module" + description: Kube API Linter lints Kube like APIs based on API conventions and best practices. + settings: + linters: + disable: + - "*" + enable: + - statusoptional + - statussubresource + lintersConfig: {} exclusions: generated: lax presets: @@ -52,6 +65,9 @@ linters: rules: - path: (.+)\.go$ text: 'deprecated: This package is intended for older projects transitioning from OPA v0.x and will remain for the lifetime of OPA v1.x' + - linters: + - kubeapilinter + path-except: apis/* paths: - pkg/target/matchcrd_constant.go - third_party$ diff --git a/Makefile b/Makefile index bbcc63691b9..b802f313d62 100644 --- a/Makefile +++ b/Makefile @@ -81,6 +81,8 @@ GOLANGCI_LINT_VERSION := v2.4.0 # Detects the location of the user golangci-lint cache. GOLANGCI_LINT_CACHE := $(shell pwd)/.tmp/golangci-lint +TIMEOUT ?= 30m + BENCHMARK_FILE_NAME ?= benchmarks.txt FAKE_SUBSCRIBER_IMAGE ?= fake-subscriber:latest FAKE_READER_IMAGE ?= fake-reader:latest @@ -379,7 +381,17 @@ manifests: __controller-gen # across systems. # Source: https://golangci-lint.run/usage/install/#docker lint: - docker run -t --rm -v $(shell pwd):/app \ + +# Run using Docker + + docker run --rm -t -v $(shell pwd):/app \ + -v ${GOLANGCI_LINT_CACHE}:/root/.cache/golangci-lint \ + -w /app golangci/golangci-lint:${GOLANGCI_LINT_VERSION} \ + sh -c "test -f /app/bin/golangci-lint-kube-api-linter || golangci-lint custom ; \ + /app/bin/golangci-lint-kube-api-linter run --timeout=$(TIMEOUT) --fix --concurrency 2 " + +# Intentionally kept for reference during transition. +# docker run -t --rm -v $(shell pwd):/app \ -v ${GOLANGCI_LINT_CACHE}:/root/.cache/golangci-lint \ -w /app golangci/golangci-lint:${GOLANGCI_LINT_VERSION} \ golangci-lint run -v --fix --concurrency 2 diff --git a/apis/config/v1alpha1/config_types.go b/apis/config/v1alpha1/config_types.go index 672358e1457..16f84453134 100644 --- a/apis/config/v1alpha1/config_types.go +++ b/apis/config/v1alpha1/config_types.go @@ -83,6 +83,7 @@ type ReadinessSpec struct { // ConfigStatus defines the observed state of Config. type ConfigStatus struct { // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []status.ConfigPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/connection/v1alpha1/connection_types.go b/apis/connection/v1alpha1/connection_types.go index 37653a7aaff..13fe5806ce1 100644 --- a/apis/connection/v1alpha1/connection_types.go +++ b/apis/connection/v1alpha1/connection_types.go @@ -37,6 +37,7 @@ type ConnectionSpec struct { // ConnectionStatus defines the observed state of Connection. type ConnectionStatus struct { + // +optional ByPod []statusv1alpha1.ConnectionPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/expansion/unversioned/expansiontemplate_types.go b/apis/expansion/unversioned/expansiontemplate_types.go index 050eceec6e1..8127633973b 100644 --- a/apis/expansion/unversioned/expansiontemplate_types.go +++ b/apis/expansion/unversioned/expansiontemplate_types.go @@ -70,6 +70,7 @@ type ExpansionTemplate struct { // ExpansionTemplateStatus defines the observed state of ExpansionTemplate. type ExpansionTemplateStatus struct { + // +optional ByPod []statusv1alpha1.ExpansionTemplatePodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/expansion/v1alpha1/expansiontemplate_types.go b/apis/expansion/v1alpha1/expansiontemplate_types.go index e693f08dfcf..378a4b91567 100644 --- a/apis/expansion/v1alpha1/expansiontemplate_types.go +++ b/apis/expansion/v1alpha1/expansiontemplate_types.go @@ -71,6 +71,7 @@ type ExpansionTemplate struct { // ExpansionTemplateStatus defines the observed state of ExpansionTemplate. type ExpansionTemplateStatus struct { + // +optional ByPod []status.ExpansionTemplatePodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/expansion/v1beta1/expansiontemplate_types.go b/apis/expansion/v1beta1/expansiontemplate_types.go index 7a3bd77e946..3c8743006cb 100644 --- a/apis/expansion/v1beta1/expansiontemplate_types.go +++ b/apis/expansion/v1beta1/expansiontemplate_types.go @@ -70,6 +70,7 @@ type ExpansionTemplate struct { // ExpansionTemplateStatus defines the observed state of ExpansionTemplate. type ExpansionTemplateStatus struct { + // +optional ByPod []status.ExpansionTemplatePodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/unversioned/assign_types.go b/apis/mutations/unversioned/assign_types.go index f8a4b15df15..9deab27bc6e 100644 --- a/apis/mutations/unversioned/assign_types.go +++ b/apis/mutations/unversioned/assign_types.go @@ -77,6 +77,7 @@ type AssignStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/unversioned/assignimage_types.go b/apis/mutations/unversioned/assignimage_types.go index a02ad637d41..4274e3f347d 100644 --- a/apis/mutations/unversioned/assignimage_types.go +++ b/apis/mutations/unversioned/assignimage_types.go @@ -66,6 +66,7 @@ type AssignImageStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/unversioned/assignmetadata_types.go b/apis/mutations/unversioned/assignmetadata_types.go index 04273454390..e8068732a30 100644 --- a/apis/mutations/unversioned/assignmetadata_types.go +++ b/apis/mutations/unversioned/assignmetadata_types.go @@ -40,6 +40,7 @@ type MetadataParameters struct { type AssignMetadataStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/unversioned/modifyset_types.go b/apis/mutations/unversioned/modifyset_types.go index 755164aad27..58c614880b4 100644 --- a/apis/mutations/unversioned/modifyset_types.go +++ b/apis/mutations/unversioned/modifyset_types.go @@ -115,6 +115,7 @@ type ModifySetStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/v1/assign_types.go b/apis/mutations/v1/assign_types.go index a771f0b94e8..74c08783525 100644 --- a/apis/mutations/v1/assign_types.go +++ b/apis/mutations/v1/assign_types.go @@ -77,6 +77,7 @@ type AssignStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/v1/assignmetadata_types.go b/apis/mutations/v1/assignmetadata_types.go index 641767c2948..343295ff610 100644 --- a/apis/mutations/v1/assignmetadata_types.go +++ b/apis/mutations/v1/assignmetadata_types.go @@ -40,6 +40,7 @@ type MetadataParameters struct { type AssignMetadataStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/v1/modifyset_types.go b/apis/mutations/v1/modifyset_types.go index 5efcede93ab..e7f0722f2f8 100644 --- a/apis/mutations/v1/modifyset_types.go +++ b/apis/mutations/v1/modifyset_types.go @@ -115,6 +115,7 @@ type ModifySetStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/v1alpha1/assign_types.go b/apis/mutations/v1alpha1/assign_types.go index 9ad9f23fa1f..56e627f33f0 100644 --- a/apis/mutations/v1alpha1/assign_types.go +++ b/apis/mutations/v1alpha1/assign_types.go @@ -77,6 +77,7 @@ type AssignStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/v1alpha1/assignimage_types.go b/apis/mutations/v1alpha1/assignimage_types.go index 77d7abdd63e..bdb59bc58f8 100644 --- a/apis/mutations/v1alpha1/assignimage_types.go +++ b/apis/mutations/v1alpha1/assignimage_types.go @@ -66,6 +66,7 @@ type AssignImageStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/v1alpha1/assignmetadata_types.go b/apis/mutations/v1alpha1/assignmetadata_types.go index db3c5e90005..3095770afe4 100644 --- a/apis/mutations/v1alpha1/assignmetadata_types.go +++ b/apis/mutations/v1alpha1/assignmetadata_types.go @@ -40,6 +40,7 @@ type MetadataParameters struct { type AssignMetadataStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/v1alpha1/modifyset_types.go b/apis/mutations/v1alpha1/modifyset_types.go index d98c6a196fa..f64d6fc3210 100644 --- a/apis/mutations/v1alpha1/modifyset_types.go +++ b/apis/mutations/v1alpha1/modifyset_types.go @@ -115,6 +115,7 @@ type ModifySetStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/v1beta1/assign_types.go b/apis/mutations/v1beta1/assign_types.go index 582055271cf..dd3ab9a5c75 100644 --- a/apis/mutations/v1beta1/assign_types.go +++ b/apis/mutations/v1beta1/assign_types.go @@ -77,6 +77,7 @@ type AssignStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/v1beta1/assignmetadata_types.go b/apis/mutations/v1beta1/assignmetadata_types.go index 66275960e29..ea88f941f6b 100644 --- a/apis/mutations/v1beta1/assignmetadata_types.go +++ b/apis/mutations/v1beta1/assignmetadata_types.go @@ -40,6 +40,7 @@ type MetadataParameters struct { type AssignMetadataStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/mutations/v1beta1/modifyset_types.go b/apis/mutations/v1beta1/modifyset_types.go index 621fc591b57..2ae9b7aa524 100644 --- a/apis/mutations/v1beta1/modifyset_types.go +++ b/apis/mutations/v1beta1/modifyset_types.go @@ -115,6 +115,7 @@ type ModifySetStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file + // +optional ByPod []v1beta1.MutatorPodStatusStatus `json:"byPod,omitempty"` } diff --git a/apis/status/v1alpha1/connectionpodstatus_types.go b/apis/status/v1alpha1/connectionpodstatus_types.go index b3e1ac01602..2c62c4f2603 100644 --- a/apis/status/v1alpha1/connectionpodstatus_types.go +++ b/apis/status/v1alpha1/connectionpodstatus_types.go @@ -32,12 +32,18 @@ import ( // ConnectionPodStatusStatus defines the observed state of ConnectionPodStatus. type ConnectionPodStatusStatus struct { // ID is the unique identifier for the pod that wrote the status - ID string `json:"id,omitempty"` - ConnectionUID types.UID `json:"connectionUID,omitempty"` - Operations []string `json:"operations,omitempty"` - ObservedGeneration int64 `json:"observedGeneration,omitempty"` + // +optional + ID string `json:"id,omitempty"` + // +optional + ConnectionUID types.UID `json:"connectionUID,omitempty"` + // +optional + Operations []string `json:"operations,omitempty"` + // +optional + ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Indicator for alive connection with at least one successful publish - Active bool `json:"active,omitempty"` + // +optional + Active bool `json:"active,omitempty"` + // +optional Errors []*ConnectionError `json:"errors,omitempty"` } @@ -55,6 +61,7 @@ const ( // +kubebuilder:object:root=true // ConnectionPodStatus is the Schema for the connectionpodstatuses API. +// +kubebuilder:subresource:status type ConnectionPodStatus struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` diff --git a/apis/status/v1beta1/configpodstatus_types.go b/apis/status/v1beta1/configpodstatus_types.go index 014fa69739e..9094b717f05 100644 --- a/apis/status/v1beta1/configpodstatus_types.go +++ b/apis/status/v1beta1/configpodstatus_types.go @@ -15,11 +15,16 @@ import ( // +kubebuilder:object:generate=true type ConfigPodStatusStatus struct { - ID string `json:"id,omitempty"` - ConfigUID types.UID `json:"configUID,omitempty"` - Operations []string `json:"operations,omitempty"` - ObservedGeneration int64 `json:"observedGeneration,omitempty"` - Errors []*ConfigError `json:"errors,omitempty"` + // +optional + ID string `json:"id,omitempty"` + // +optional + ConfigUID types.UID `json:"configUID,omitempty"` + // +optional + Operations []string `json:"operations,omitempty"` + // +optional + ObservedGeneration int64 `json:"observedGeneration,omitempty"` + // +optional + Errors []*ConfigError `json:"errors,omitempty"` } // +kubebuilder:object:generate=true diff --git a/apis/status/v1beta1/constraintpodstatus_types.go b/apis/status/v1beta1/constraintpodstatus_types.go index 156699c5e4f..e90f0250860 100644 --- a/apis/status/v1beta1/constraintpodstatus_types.go +++ b/apis/status/v1beta1/constraintpodstatus_types.go @@ -35,15 +35,22 @@ const ConstraintsGroup = "constraints.gatekeeper.sh" type ConstraintPodStatusStatus struct { // Important: Run "make" to regenerate code after modifying this file + // +optional ID string `json:"id,omitempty"` // Storing the constraint UID allows us to detect drift, such as // when a constraint has been recreated after its CRD was deleted // out from under it, interrupting the watch - ConstraintUID types.UID `json:"constraintUID,omitempty"` - Operations []string `json:"operations,omitempty"` - Enforced bool `json:"enforced,omitempty"` - Errors []Error `json:"errors,omitempty"` - ObservedGeneration int64 `json:"observedGeneration,omitempty"` + // +optional + ConstraintUID types.UID `json:"constraintUID,omitempty"` + // +optional + Operations []string `json:"operations,omitempty"` + // +optional + Enforced bool `json:"enforced,omitempty"` + // +optional + Errors []Error `json:"errors,omitempty"` + // +optional + ObservedGeneration int64 `json:"observedGeneration,omitempty"` + // +optional EnforcementPointsStatus []EnforcementPointStatus `json:"enforcementPointsStatus,omitempty"` } diff --git a/apis/status/v1beta1/constrainttemplatepodstatus_types.go b/apis/status/v1beta1/constrainttemplatepodstatus_types.go index a06c6696417..b35617eb3e5 100644 --- a/apis/status/v1beta1/constrainttemplatepodstatus_types.go +++ b/apis/status/v1beta1/constrainttemplatepodstatus_types.go @@ -29,12 +29,18 @@ import ( // ConstraintTemplatePodStatusStatus defines the observed state of ConstraintTemplatePodStatus. type ConstraintTemplatePodStatusStatus struct { // Important: Run "make" to regenerate code after modifying this file - ID string `json:"id,omitempty"` - TemplateUID types.UID `json:"templateUID,omitempty"` - Operations []string `json:"operations,omitempty"` - ObservedGeneration int64 `json:"observedGeneration,omitempty"` - Errors []*templatesv1beta1.CreateCRDError `json:"errors,omitempty"` - VAPGenerationStatus *VAPGenerationStatus `json:"vapGenerationStatus,omitempty"` + // +optional + ID string `json:"id,omitempty"` + // +optional + TemplateUID types.UID `json:"templateUID,omitempty"` + // +optional + Operations []string `json:"operations,omitempty"` + // +optional + ObservedGeneration int64 `json:"observedGeneration,omitempty"` + // +optional + Errors []*templatesv1beta1.CreateCRDError `json:"errors,omitempty"` + // +optional + VAPGenerationStatus *VAPGenerationStatus `json:"vapGenerationStatus,omitempty"` } // VAPGenerationStatus represents the status of VAP generation. diff --git a/apis/status/v1beta1/expansiontemplatepodstatus_types.go b/apis/status/v1beta1/expansiontemplatepodstatus_types.go index 1d7cad6829b..bcb1d7faf9b 100644 --- a/apis/status/v1beta1/expansiontemplatepodstatus_types.go +++ b/apis/status/v1beta1/expansiontemplatepodstatus_types.go @@ -13,11 +13,16 @@ import ( // ExpansionTemplatePodStatusStatus defines the observed state of ExpansionTemplatePodStatus. type ExpansionTemplatePodStatusStatus struct { // Important: Run "make" to regenerate code after modifying this file - ID string `json:"id,omitempty"` - TemplateUID types.UID `json:"templateUID,omitempty"` - Operations []string `json:"operations,omitempty"` - ObservedGeneration int64 `json:"observedGeneration,omitempty"` - Errors []*ExpansionTemplateError `json:"errors,omitempty"` + // +optional + ID string `json:"id,omitempty"` + // +optional + TemplateUID types.UID `json:"templateUID,omitempty"` + // +optional + Operations []string `json:"operations,omitempty"` + // +optional + ObservedGeneration int64 `json:"observedGeneration,omitempty"` + // +optional + Errors []*ExpansionTemplateError `json:"errors,omitempty"` } // +kubebuilder:object:generate=true diff --git a/apis/status/v1beta1/mutatorpodstatus_types.go b/apis/status/v1beta1/mutatorpodstatus_types.go index fa13849eee2..aaffe849cf5 100644 --- a/apis/status/v1beta1/mutatorpodstatus_types.go +++ b/apis/status/v1beta1/mutatorpodstatus_types.go @@ -35,15 +35,21 @@ const MutationsGroup = "mutations.gatekeeper.sh" type MutatorPodStatusStatus struct { // Important: Run "make" to regenerate code after modifying this file + // +optional ID string `json:"id,omitempty"` // Storing the mutator UID allows us to detect drift, such as // when a mutator has been recreated after its CRD was deleted // out from under it, interrupting the watch - MutatorUID types.UID `json:"mutatorUID,omitempty"` - Operations []string `json:"operations,omitempty"` - Enforced bool `json:"enforced,omitempty"` - Errors []MutatorError `json:"errors,omitempty"` - ObservedGeneration int64 `json:"observedGeneration,omitempty"` + // +optional + MutatorUID types.UID `json:"mutatorUID,omitempty"` + // +optional + Operations []string `json:"operations,omitempty"` + // +optional + Enforced bool `json:"enforced,omitempty"` + // +optional + Errors []MutatorError `json:"errors,omitempty"` + // +optional + ObservedGeneration int64 `json:"observedGeneration,omitempty"` } // MutatorError represents a single error caught while adding a mutator to a system. diff --git a/apis/status/v1beta1/providerpodstatus_types.go b/apis/status/v1beta1/providerpodstatus_types.go index 0252e0d0de7..f42e48c5d98 100644 --- a/apis/status/v1beta1/providerpodstatus_types.go +++ b/apis/status/v1beta1/providerpodstatus_types.go @@ -32,17 +32,25 @@ import ( type ProviderPodStatusStatus struct { // Important: Run "make" to regenerate code after modifying this file + // +optional ID string `json:"id,omitempty"` // Storing the provider UID allows us to detect drift, such as // when a provider has been recreated after its CRD was deleted // out from under it, interrupting the watch - ProviderUID types.UID `json:"providerUID,omitempty"` - Operations []string `json:"operations,omitempty"` - Active bool `json:"active,omitempty"` - Errors []*ProviderError `json:"errors,omitempty"` - ObservedGeneration int64 `json:"observedGeneration,omitempty"` - LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"` - LastCacheUpdateTime *metav1.Time `json:"lastCacheUpdateTime,omitempty"` + // +optional + ProviderUID types.UID `json:"providerUID,omitempty"` + // +optional + Operations []string `json:"operations,omitempty"` + // +optional + Active bool `json:"active,omitempty"` + // +optional + Errors []*ProviderError `json:"errors,omitempty"` + // +optional + ObservedGeneration int64 `json:"observedGeneration,omitempty"` + // +optional + LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"` + // +optional + LastCacheUpdateTime *metav1.Time `json:"lastCacheUpdateTime,omitempty"` } // ProviderError represents a single error caught while managing providers. @@ -67,6 +75,7 @@ const ( // +kubebuilder:object:root=true // ProviderPodStatus is the Schema for the providerpodstatuses API. +// +kubebuilder:subresource:status type ProviderPodStatus struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` diff --git a/config/crd/bases/status.gatekeeper.sh_connectionpodstatuses.yaml b/config/crd/bases/status.gatekeeper.sh_connectionpodstatuses.yaml index 84f3f80bdf3..99347bbe690 100644 --- a/config/crd/bases/status.gatekeeper.sh_connectionpodstatuses.yaml +++ b/config/crd/bases/status.gatekeeper.sh_connectionpodstatuses.yaml @@ -77,3 +77,5 @@ spec: type: object served: true storage: true + subresources: + status: {} diff --git a/config/crd/bases/status.gatekeeper.sh_providerpodstatuses.yaml b/config/crd/bases/status.gatekeeper.sh_providerpodstatuses.yaml index f931705a389..b6386b6bfaf 100644 --- a/config/crd/bases/status.gatekeeper.sh_providerpodstatuses.yaml +++ b/config/crd/bases/status.gatekeeper.sh_providerpodstatuses.yaml @@ -90,3 +90,5 @@ spec: type: object served: true storage: true + subresources: + status: {} diff --git a/manifest_staging/charts/gatekeeper/crds/connectionpodstatus-customresourcedefinition.yaml b/manifest_staging/charts/gatekeeper/crds/connectionpodstatus-customresourcedefinition.yaml index 61ca65aa695..3ec1094c789 100644 --- a/manifest_staging/charts/gatekeeper/crds/connectionpodstatus-customresourcedefinition.yaml +++ b/manifest_staging/charts/gatekeeper/crds/connectionpodstatus-customresourcedefinition.yaml @@ -77,3 +77,5 @@ spec: type: object served: true storage: true + subresources: + status: {} diff --git a/manifest_staging/charts/gatekeeper/crds/providerpodstatus-customresourcedefinition.yaml b/manifest_staging/charts/gatekeeper/crds/providerpodstatus-customresourcedefinition.yaml index 12e1b34e396..04f5118a2b6 100644 --- a/manifest_staging/charts/gatekeeper/crds/providerpodstatus-customresourcedefinition.yaml +++ b/manifest_staging/charts/gatekeeper/crds/providerpodstatus-customresourcedefinition.yaml @@ -92,3 +92,5 @@ spec: type: object served: true storage: true + subresources: + status: {} diff --git a/manifest_staging/deploy/gatekeeper.yaml b/manifest_staging/deploy/gatekeeper.yaml index 73d028cca52..6294c845846 100644 --- a/manifest_staging/deploy/gatekeeper.yaml +++ b/manifest_staging/deploy/gatekeeper.yaml @@ -2695,6 +2695,8 @@ spec: type: object served: true storage: true + subresources: + status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition @@ -4906,6 +4908,8 @@ spec: type: object served: true storage: true + subresources: + status: {} --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition