Fix list_type_missing in api/admissionregistration

This commit is contained in:
Tim Hockin 2023-11-12 15:02:25 -08:00
parent b8982be268
commit 460df86f2a
No known key found for this signature in database
8 changed files with 127 additions and 20 deletions

View File

@ -1,15 +1,3 @@
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1,MutatingWebhook,AdmissionReviewVersions
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1,MutatingWebhook,Rules
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1,MutatingWebhookConfiguration,Webhooks
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1,ValidatingWebhook,AdmissionReviewVersions
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1,ValidatingWebhook,Rules
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1,ValidatingWebhookConfiguration,Webhooks
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1beta1,MutatingWebhook,AdmissionReviewVersions
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1beta1,MutatingWebhook,Rules
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1beta1,MutatingWebhookConfiguration,Webhooks
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1beta1,ValidatingWebhook,AdmissionReviewVersions
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1beta1,ValidatingWebhook,Rules
API rule violation: list_type_missing,k8s.io/api/admissionregistration/v1beta1,ValidatingWebhookConfiguration,Webhooks
API rule violation: list_type_missing,k8s.io/api/apps/v1,DaemonSetStatus,Conditions API rule violation: list_type_missing,k8s.io/api/apps/v1,DaemonSetStatus,Conditions
API rule violation: list_type_missing,k8s.io/api/apps/v1,DeploymentStatus,Conditions API rule violation: list_type_missing,k8s.io/api/apps/v1,DeploymentStatus,Conditions
API rule violation: list_type_missing,k8s.io/api/apps/v1,ReplicaSetStatus,Conditions API rule violation: list_type_missing,k8s.io/api/apps/v1,ReplicaSetStatus,Conditions

View File

@ -26,7 +26,8 @@
"items": { "items": {
"type": "string" "type": "string"
}, },
"type": "array" "type": "array",
"x-kubernetes-list-type": "atomic"
}, },
"clientConfig": { "clientConfig": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.WebhookClientConfig", "$ref": "#/definitions/io.k8s.api.admissionregistration.v1.WebhookClientConfig",
@ -74,7 +75,8 @@
"items": { "items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.RuleWithOperations" "$ref": "#/definitions/io.k8s.api.admissionregistration.v1.RuleWithOperations"
}, },
"type": "array" "type": "array",
"x-kubernetes-list-type": "atomic"
}, },
"sideEffects": { "sideEffects": {
"description": "SideEffects states whether this webhook has side effects. Acceptable values are: None, NoneOnDryRun (webhooks created via v1beta1 may also specify Some or Unknown). Webhooks with side effects MUST implement a reconciliation system, since a request may be rejected by a future step in the admission chain and the side effects therefore need to be undone. Requests with the dryRun attribute will be auto-rejected if they match a webhook with sideEffects == Unknown or Some.", "description": "SideEffects states whether this webhook has side effects. Acceptable values are: None, NoneOnDryRun (webhooks created via v1beta1 may also specify Some or Unknown). Webhooks with side effects MUST implement a reconciliation system, since a request may be rejected by a future step in the admission chain and the side effects therefore need to be undone. Requests with the dryRun attribute will be auto-rejected if they match a webhook with sideEffects == Unknown or Some.",
@ -115,6 +117,10 @@
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.MutatingWebhook" "$ref": "#/definitions/io.k8s.api.admissionregistration.v1.MutatingWebhook"
}, },
"type": "array", "type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map",
"x-kubernetes-patch-merge-key": "name", "x-kubernetes-patch-merge-key": "name",
"x-kubernetes-patch-strategy": "merge" "x-kubernetes-patch-strategy": "merge"
} }
@ -240,7 +246,8 @@
"items": { "items": {
"type": "string" "type": "string"
}, },
"type": "array" "type": "array",
"x-kubernetes-list-type": "atomic"
}, },
"clientConfig": { "clientConfig": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.WebhookClientConfig", "$ref": "#/definitions/io.k8s.api.admissionregistration.v1.WebhookClientConfig",
@ -284,7 +291,8 @@
"items": { "items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.RuleWithOperations" "$ref": "#/definitions/io.k8s.api.admissionregistration.v1.RuleWithOperations"
}, },
"type": "array" "type": "array",
"x-kubernetes-list-type": "atomic"
}, },
"sideEffects": { "sideEffects": {
"description": "SideEffects states whether this webhook has side effects. Acceptable values are: None, NoneOnDryRun (webhooks created via v1beta1 may also specify Some or Unknown). Webhooks with side effects MUST implement a reconciliation system, since a request may be rejected by a future step in the admission chain and the side effects therefore need to be undone. Requests with the dryRun attribute will be auto-rejected if they match a webhook with sideEffects == Unknown or Some.", "description": "SideEffects states whether this webhook has side effects. Acceptable values are: None, NoneOnDryRun (webhooks created via v1beta1 may also specify Some or Unknown). Webhooks with side effects MUST implement a reconciliation system, since a request may be rejected by a future step in the admission chain and the side effects therefore need to be undone. Requests with the dryRun attribute will be auto-rejected if they match a webhook with sideEffects == Unknown or Some.",
@ -325,6 +333,10 @@
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.ValidatingWebhook" "$ref": "#/definitions/io.k8s.api.admissionregistration.v1.ValidatingWebhook"
}, },
"type": "array", "type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map",
"x-kubernetes-patch-merge-key": "name", "x-kubernetes-patch-merge-key": "name",
"x-kubernetes-patch-strategy": "merge" "x-kubernetes-patch-strategy": "merge"
} }

View File

@ -30,7 +30,8 @@
"default": "", "default": "",
"type": "string" "type": "string"
}, },
"type": "array" "type": "array",
"x-kubernetes-list-type": "atomic"
}, },
"clientConfig": { "clientConfig": {
"allOf": [ "allOf": [
@ -102,7 +103,8 @@
], ],
"default": {} "default": {}
}, },
"type": "array" "type": "array",
"x-kubernetes-list-type": "atomic"
}, },
"sideEffects": { "sideEffects": {
"description": "SideEffects states whether this webhook has side effects. Acceptable values are: None, NoneOnDryRun (webhooks created via v1beta1 may also specify Some or Unknown). Webhooks with side effects MUST implement a reconciliation system, since a request may be rejected by a future step in the admission chain and the side effects therefore need to be undone. Requests with the dryRun attribute will be auto-rejected if they match a webhook with sideEffects == Unknown or Some.", "description": "SideEffects states whether this webhook has side effects. Acceptable values are: None, NoneOnDryRun (webhooks created via v1beta1 may also specify Some or Unknown). Webhooks with side effects MUST implement a reconciliation system, since a request may be rejected by a future step in the admission chain and the side effects therefore need to be undone. Requests with the dryRun attribute will be auto-rejected if they match a webhook with sideEffects == Unknown or Some.",
@ -153,6 +155,10 @@
"default": {} "default": {}
}, },
"type": "array", "type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map",
"x-kubernetes-patch-merge-key": "name", "x-kubernetes-patch-merge-key": "name",
"x-kubernetes-patch-strategy": "merge" "x-kubernetes-patch-strategy": "merge"
} }
@ -295,7 +301,8 @@
"default": "", "default": "",
"type": "string" "type": "string"
}, },
"type": "array" "type": "array",
"x-kubernetes-list-type": "atomic"
}, },
"clientConfig": { "clientConfig": {
"allOf": [ "allOf": [
@ -363,7 +370,8 @@
], ],
"default": {} "default": {}
}, },
"type": "array" "type": "array",
"x-kubernetes-list-type": "atomic"
}, },
"sideEffects": { "sideEffects": {
"description": "SideEffects states whether this webhook has side effects. Acceptable values are: None, NoneOnDryRun (webhooks created via v1beta1 may also specify Some or Unknown). Webhooks with side effects MUST implement a reconciliation system, since a request may be rejected by a future step in the admission chain and the side effects therefore need to be undone. Requests with the dryRun attribute will be auto-rejected if they match a webhook with sideEffects == Unknown or Some.", "description": "SideEffects states whether this webhook has side effects. Acceptable values are: None, NoneOnDryRun (webhooks created via v1beta1 may also specify Some or Unknown). Webhooks with side effects MUST implement a reconciliation system, since a request may be rejected by a future step in the admission chain and the side effects therefore need to be undone. Requests with the dryRun attribute will be auto-rejected if they match a webhook with sideEffects == Unknown or Some.",
@ -414,6 +422,10 @@
"default": {} "default": {}
}, },
"type": "array", "type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map",
"x-kubernetes-patch-merge-key": "name", "x-kubernetes-patch-merge-key": "name",
"x-kubernetes-patch-strategy": "merge" "x-kubernetes-patch-strategy": "merge"
} }

View File

@ -1219,6 +1219,11 @@ func schema_k8sio_api_admissionregistration_v1_MutatingWebhook(ref common.Refere
}, },
}, },
"rules": { "rules": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule. However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks from putting the cluster in a state which cannot be recovered from without completely disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.", Description: "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule. However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks from putting the cluster in a state which cannot be recovered from without completely disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.",
Type: []string{"array"}, Type: []string{"array"},
@ -1276,6 +1281,11 @@ func schema_k8sio_api_admissionregistration_v1_MutatingWebhook(ref common.Refere
}, },
}, },
"admissionReviewVersions": { "admissionReviewVersions": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy.", Description: "AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy.",
Type: []string{"array"}, Type: []string{"array"},
@ -1362,6 +1372,10 @@ func schema_k8sio_api_admissionregistration_v1_MutatingWebhookConfiguration(ref
"webhooks": { "webhooks": {
VendorExtensible: spec.VendorExtensible{ VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{ Extensions: spec.Extensions{
"x-kubernetes-list-map-keys": []interface{}{
"name",
},
"x-kubernetes-list-type": "map",
"x-kubernetes-patch-merge-key": "name", "x-kubernetes-patch-merge-key": "name",
"x-kubernetes-patch-strategy": "merge", "x-kubernetes-patch-strategy": "merge",
}, },
@ -1685,6 +1699,11 @@ func schema_k8sio_api_admissionregistration_v1_ValidatingWebhook(ref common.Refe
}, },
}, },
"rules": { "rules": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule. However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks from putting the cluster in a state which cannot be recovered from without completely disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.", Description: "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule. However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks from putting the cluster in a state which cannot be recovered from without completely disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.",
Type: []string{"array"}, Type: []string{"array"},
@ -1742,6 +1761,11 @@ func schema_k8sio_api_admissionregistration_v1_ValidatingWebhook(ref common.Refe
}, },
}, },
"admissionReviewVersions": { "admissionReviewVersions": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy.", Description: "AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy.",
Type: []string{"array"}, Type: []string{"array"},
@ -1820,6 +1844,10 @@ func schema_k8sio_api_admissionregistration_v1_ValidatingWebhookConfiguration(re
"webhooks": { "webhooks": {
VendorExtensible: spec.VendorExtensible{ VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{ Extensions: spec.Extensions{
"x-kubernetes-list-map-keys": []interface{}{
"name",
},
"x-kubernetes-list-type": "map",
"x-kubernetes-patch-merge-key": "name", "x-kubernetes-patch-merge-key": "name",
"x-kubernetes-patch-strategy": "merge", "x-kubernetes-patch-strategy": "merge",
}, },
@ -3018,6 +3046,11 @@ func schema_k8sio_api_admissionregistration_v1beta1_MutatingWebhook(ref common.R
}, },
}, },
"rules": { "rules": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule. However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks from putting the cluster in a state which cannot be recovered from without completely disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.", Description: "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule. However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks from putting the cluster in a state which cannot be recovered from without completely disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.",
Type: []string{"array"}, Type: []string{"array"},
@ -3072,6 +3105,11 @@ func schema_k8sio_api_admissionregistration_v1beta1_MutatingWebhook(ref common.R
}, },
}, },
"admissionReviewVersions": { "admissionReviewVersions": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy. Default to `['v1beta1']`.", Description: "AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy. Default to `['v1beta1']`.",
Type: []string{"array"}, Type: []string{"array"},
@ -3157,6 +3195,10 @@ func schema_k8sio_api_admissionregistration_v1beta1_MutatingWebhookConfiguration
"webhooks": { "webhooks": {
VendorExtensible: spec.VendorExtensible{ VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{ Extensions: spec.Extensions{
"x-kubernetes-list-map-keys": []interface{}{
"name",
},
"x-kubernetes-list-type": "map",
"x-kubernetes-patch-merge-key": "name", "x-kubernetes-patch-merge-key": "name",
"x-kubernetes-patch-strategy": "merge", "x-kubernetes-patch-strategy": "merge",
}, },
@ -3955,6 +3997,11 @@ func schema_k8sio_api_admissionregistration_v1beta1_ValidatingWebhook(ref common
}, },
}, },
"rules": { "rules": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule. However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks from putting the cluster in a state which cannot be recovered from without completely disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.", Description: "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule. However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks from putting the cluster in a state which cannot be recovered from without completely disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.",
Type: []string{"array"}, Type: []string{"array"},
@ -3995,6 +4042,11 @@ func schema_k8sio_api_admissionregistration_v1beta1_ValidatingWebhook(ref common
}, },
}, },
"sideEffects": { "sideEffects": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "SideEffects states whether this webhook has side effects. Acceptable values are: Unknown, None, Some, NoneOnDryRun Webhooks with side effects MUST implement a reconciliation system, since a request may be rejected by a future step in the admission chain and the side effects therefore need to be undone. Requests with the dryRun attribute will be auto-rejected if they match a webhook with sideEffects == Unknown or Some. Defaults to Unknown.", Description: "SideEffects states whether this webhook has side effects. Acceptable values are: Unknown, None, Some, NoneOnDryRun Webhooks with side effects MUST implement a reconciliation system, since a request may be rejected by a future step in the admission chain and the side effects therefore need to be undone. Requests with the dryRun attribute will be auto-rejected if they match a webhook with sideEffects == Unknown or Some. Defaults to Unknown.",
Type: []string{"string"}, Type: []string{"string"},
@ -4009,6 +4061,11 @@ func schema_k8sio_api_admissionregistration_v1beta1_ValidatingWebhook(ref common
}, },
}, },
"admissionReviewVersions": { "admissionReviewVersions": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy. Default to `['v1beta1']`.", Description: "AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy. Default to `['v1beta1']`.",
Type: []string{"array"}, Type: []string{"array"},
@ -4087,6 +4144,10 @@ func schema_k8sio_api_admissionregistration_v1beta1_ValidatingWebhookConfigurati
"webhooks": { "webhooks": {
VendorExtensible: spec.VendorExtensible{ VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{ Extensions: spec.Extensions{
"x-kubernetes-list-map-keys": []interface{}{
"name",
},
"x-kubernetes-list-type": "map",
"x-kubernetes-patch-merge-key": "name", "x-kubernetes-patch-merge-key": "name",
"x-kubernetes-patch-strategy": "merge", "x-kubernetes-patch-strategy": "merge",
}, },

View File

@ -76,6 +76,7 @@ message MutatingWebhook {
// from putting the cluster in a state which cannot be recovered from without completely // from putting the cluster in a state which cannot be recovered from without completely
// disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called // disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called
// on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects. // on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.
// +listType=atomic
repeated RuleWithOperations rules = 3; repeated RuleWithOperations rules = 3;
// FailurePolicy defines how unrecognized errors from the admission endpoint are handled - // FailurePolicy defines how unrecognized errors from the admission endpoint are handled -
@ -183,6 +184,7 @@ message MutatingWebhook {
// If a persisted webhook configuration specifies allowed versions and does not // If a persisted webhook configuration specifies allowed versions and does not
// include any versions known to the API Server, calls to the webhook will fail // include any versions known to the API Server, calls to the webhook will fail
// and be subject to the failure policy. // and be subject to the failure policy.
// +listType=atomic
repeated string admissionReviewVersions = 8; repeated string admissionReviewVersions = 8;
// reinvocationPolicy indicates whether this webhook should be called multiple times as part of a single admission evaluation. // reinvocationPolicy indicates whether this webhook should be called multiple times as part of a single admission evaluation.
@ -236,6 +238,8 @@ message MutatingWebhookConfiguration {
// +optional // +optional
// +patchMergeKey=name // +patchMergeKey=name
// +patchStrategy=merge // +patchStrategy=merge
// +listType=map
// +listMapKey=name
repeated MutatingWebhook Webhooks = 2; repeated MutatingWebhook Webhooks = 2;
} }
@ -352,6 +356,7 @@ message ValidatingWebhook {
// from putting the cluster in a state which cannot be recovered from without completely // from putting the cluster in a state which cannot be recovered from without completely
// disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called // disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called
// on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects. // on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.
// +listType=atomic
repeated RuleWithOperations rules = 3; repeated RuleWithOperations rules = 3;
// FailurePolicy defines how unrecognized errors from the admission endpoint are handled - // FailurePolicy defines how unrecognized errors from the admission endpoint are handled -
@ -459,6 +464,7 @@ message ValidatingWebhook {
// If a persisted webhook configuration specifies allowed versions and does not // If a persisted webhook configuration specifies allowed versions and does not
// include any versions known to the API Server, calls to the webhook will fail // include any versions known to the API Server, calls to the webhook will fail
// and be subject to the failure policy. // and be subject to the failure policy.
// +listType=atomic
repeated string admissionReviewVersions = 8; repeated string admissionReviewVersions = 8;
// MatchConditions is a list of conditions that must be met for a request to be sent to this // MatchConditions is a list of conditions that must be met for a request to be sent to this
@ -494,6 +500,8 @@ message ValidatingWebhookConfiguration {
// +optional // +optional
// +patchMergeKey=name // +patchMergeKey=name
// +patchStrategy=merge // +patchStrategy=merge
// +listType=map
// +listMapKey=name
repeated ValidatingWebhook Webhooks = 2; repeated ValidatingWebhook Webhooks = 2;
} }

View File

@ -134,6 +134,8 @@ type ValidatingWebhookConfiguration struct {
// +optional // +optional
// +patchMergeKey=name // +patchMergeKey=name
// +patchStrategy=merge // +patchStrategy=merge
// +listType=map
// +listMapKey=name
Webhooks []ValidatingWebhook `json:"webhooks,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=Webhooks"` Webhooks []ValidatingWebhook `json:"webhooks,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=Webhooks"`
} }
@ -164,6 +166,8 @@ type MutatingWebhookConfiguration struct {
// +optional // +optional
// +patchMergeKey=name // +patchMergeKey=name
// +patchStrategy=merge // +patchStrategy=merge
// +listType=map
// +listMapKey=name
Webhooks []MutatingWebhook `json:"webhooks,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=Webhooks"` Webhooks []MutatingWebhook `json:"webhooks,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=Webhooks"`
} }
@ -199,6 +203,7 @@ type ValidatingWebhook struct {
// from putting the cluster in a state which cannot be recovered from without completely // from putting the cluster in a state which cannot be recovered from without completely
// disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called // disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called
// on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects. // on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.
// +listType=atomic
Rules []RuleWithOperations `json:"rules,omitempty" protobuf:"bytes,3,rep,name=rules"` Rules []RuleWithOperations `json:"rules,omitempty" protobuf:"bytes,3,rep,name=rules"`
// FailurePolicy defines how unrecognized errors from the admission endpoint are handled - // FailurePolicy defines how unrecognized errors from the admission endpoint are handled -
@ -306,6 +311,7 @@ type ValidatingWebhook struct {
// If a persisted webhook configuration specifies allowed versions and does not // If a persisted webhook configuration specifies allowed versions and does not
// include any versions known to the API Server, calls to the webhook will fail // include any versions known to the API Server, calls to the webhook will fail
// and be subject to the failure policy. // and be subject to the failure policy.
// +listType=atomic
AdmissionReviewVersions []string `json:"admissionReviewVersions" protobuf:"bytes,8,rep,name=admissionReviewVersions"` AdmissionReviewVersions []string `json:"admissionReviewVersions" protobuf:"bytes,8,rep,name=admissionReviewVersions"`
// MatchConditions is a list of conditions that must be met for a request to be sent to this // MatchConditions is a list of conditions that must be met for a request to be sent to this
@ -350,6 +356,7 @@ type MutatingWebhook struct {
// from putting the cluster in a state which cannot be recovered from without completely // from putting the cluster in a state which cannot be recovered from without completely
// disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called // disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called
// on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects. // on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.
// +listType=atomic
Rules []RuleWithOperations `json:"rules,omitempty" protobuf:"bytes,3,rep,name=rules"` Rules []RuleWithOperations `json:"rules,omitempty" protobuf:"bytes,3,rep,name=rules"`
// FailurePolicy defines how unrecognized errors from the admission endpoint are handled - // FailurePolicy defines how unrecognized errors from the admission endpoint are handled -
@ -457,6 +464,7 @@ type MutatingWebhook struct {
// If a persisted webhook configuration specifies allowed versions and does not // If a persisted webhook configuration specifies allowed versions and does not
// include any versions known to the API Server, calls to the webhook will fail // include any versions known to the API Server, calls to the webhook will fail
// and be subject to the failure policy. // and be subject to the failure policy.
// +listType=atomic
AdmissionReviewVersions []string `json:"admissionReviewVersions" protobuf:"bytes,8,rep,name=admissionReviewVersions"` AdmissionReviewVersions []string `json:"admissionReviewVersions" protobuf:"bytes,8,rep,name=admissionReviewVersions"`
// reinvocationPolicy indicates whether this webhook should be called multiple times as part of a single admission evaluation. // reinvocationPolicy indicates whether this webhook should be called multiple times as part of a single admission evaluation.

View File

@ -222,6 +222,7 @@ message MutatingWebhook {
// from putting the cluster in a state which cannot be recovered from without completely // from putting the cluster in a state which cannot be recovered from without completely
// disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called // disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called
// on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects. // on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.
// +listType=atomic
repeated k8s.io.api.admissionregistration.v1.RuleWithOperations rules = 3; repeated k8s.io.api.admissionregistration.v1.RuleWithOperations rules = 3;
// FailurePolicy defines how unrecognized errors from the admission endpoint are handled - // FailurePolicy defines how unrecognized errors from the admission endpoint are handled -
@ -332,6 +333,7 @@ message MutatingWebhook {
// and be subject to the failure policy. // and be subject to the failure policy.
// Default to `['v1beta1']`. // Default to `['v1beta1']`.
// +optional // +optional
// +listType=atomic
repeated string admissionReviewVersions = 8; repeated string admissionReviewVersions = 8;
// reinvocationPolicy indicates whether this webhook should be called multiple times as part of a single admission evaluation. // reinvocationPolicy indicates whether this webhook should be called multiple times as part of a single admission evaluation.
@ -386,6 +388,8 @@ message MutatingWebhookConfiguration {
// +optional // +optional
// +patchMergeKey=name // +patchMergeKey=name
// +patchStrategy=merge // +patchStrategy=merge
// +listType=map
// +listMapKey=name
repeated MutatingWebhook Webhooks = 2; repeated MutatingWebhook Webhooks = 2;
} }
@ -765,6 +769,7 @@ message ValidatingWebhook {
// from putting the cluster in a state which cannot be recovered from without completely // from putting the cluster in a state which cannot be recovered from without completely
// disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called // disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called
// on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects. // on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.
// +listType=atomic
repeated k8s.io.api.admissionregistration.v1.RuleWithOperations rules = 3; repeated k8s.io.api.admissionregistration.v1.RuleWithOperations rules = 3;
// FailurePolicy defines how unrecognized errors from the admission endpoint are handled - // FailurePolicy defines how unrecognized errors from the admission endpoint are handled -
@ -856,6 +861,7 @@ message ValidatingWebhook {
// Requests with the dryRun attribute will be auto-rejected if they match a webhook with // Requests with the dryRun attribute will be auto-rejected if they match a webhook with
// sideEffects == Unknown or Some. Defaults to Unknown. // sideEffects == Unknown or Some. Defaults to Unknown.
// +optional // +optional
// +listType=atomic
optional string sideEffects = 6; optional string sideEffects = 6;
// TimeoutSeconds specifies the timeout for this webhook. After the timeout passes, // TimeoutSeconds specifies the timeout for this webhook. After the timeout passes,
@ -875,6 +881,7 @@ message ValidatingWebhook {
// and be subject to the failure policy. // and be subject to the failure policy.
// Default to `['v1beta1']`. // Default to `['v1beta1']`.
// +optional // +optional
// +listType=atomic
repeated string admissionReviewVersions = 8; repeated string admissionReviewVersions = 8;
// MatchConditions is a list of conditions that must be met for a request to be sent to this // MatchConditions is a list of conditions that must be met for a request to be sent to this
@ -911,6 +918,8 @@ message ValidatingWebhookConfiguration {
// +optional // +optional
// +patchMergeKey=name // +patchMergeKey=name
// +patchStrategy=merge // +patchStrategy=merge
// +listType=map
// +listMapKey=name
repeated ValidatingWebhook Webhooks = 2; repeated ValidatingWebhook Webhooks = 2;
} }

View File

@ -684,6 +684,8 @@ type ValidatingWebhookConfiguration struct {
// +optional // +optional
// +patchMergeKey=name // +patchMergeKey=name
// +patchStrategy=merge // +patchStrategy=merge
// +listType=map
// +listMapKey=name
Webhooks []ValidatingWebhook `json:"webhooks,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=Webhooks"` Webhooks []ValidatingWebhook `json:"webhooks,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=Webhooks"`
} }
@ -723,6 +725,8 @@ type MutatingWebhookConfiguration struct {
// +optional // +optional
// +patchMergeKey=name // +patchMergeKey=name
// +patchStrategy=merge // +patchStrategy=merge
// +listType=map
// +listMapKey=name
Webhooks []MutatingWebhook `json:"webhooks,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=Webhooks"` Webhooks []MutatingWebhook `json:"webhooks,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=Webhooks"`
} }
@ -762,6 +766,7 @@ type ValidatingWebhook struct {
// from putting the cluster in a state which cannot be recovered from without completely // from putting the cluster in a state which cannot be recovered from without completely
// disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called // disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called
// on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects. // on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.
// +listType=atomic
Rules []RuleWithOperations `json:"rules,omitempty" protobuf:"bytes,3,rep,name=rules"` Rules []RuleWithOperations `json:"rules,omitempty" protobuf:"bytes,3,rep,name=rules"`
// FailurePolicy defines how unrecognized errors from the admission endpoint are handled - // FailurePolicy defines how unrecognized errors from the admission endpoint are handled -
@ -853,6 +858,7 @@ type ValidatingWebhook struct {
// Requests with the dryRun attribute will be auto-rejected if they match a webhook with // Requests with the dryRun attribute will be auto-rejected if they match a webhook with
// sideEffects == Unknown or Some. Defaults to Unknown. // sideEffects == Unknown or Some. Defaults to Unknown.
// +optional // +optional
// +listType=atomic
SideEffects *SideEffectClass `json:"sideEffects,omitempty" protobuf:"bytes,6,opt,name=sideEffects,casttype=SideEffectClass"` SideEffects *SideEffectClass `json:"sideEffects,omitempty" protobuf:"bytes,6,opt,name=sideEffects,casttype=SideEffectClass"`
// TimeoutSeconds specifies the timeout for this webhook. After the timeout passes, // TimeoutSeconds specifies the timeout for this webhook. After the timeout passes,
@ -872,6 +878,7 @@ type ValidatingWebhook struct {
// and be subject to the failure policy. // and be subject to the failure policy.
// Default to `['v1beta1']`. // Default to `['v1beta1']`.
// +optional // +optional
// +listType=atomic
AdmissionReviewVersions []string `json:"admissionReviewVersions,omitempty" protobuf:"bytes,8,rep,name=admissionReviewVersions"` AdmissionReviewVersions []string `json:"admissionReviewVersions,omitempty" protobuf:"bytes,8,rep,name=admissionReviewVersions"`
// MatchConditions is a list of conditions that must be met for a request to be sent to this // MatchConditions is a list of conditions that must be met for a request to be sent to this
@ -916,6 +923,7 @@ type MutatingWebhook struct {
// from putting the cluster in a state which cannot be recovered from without completely // from putting the cluster in a state which cannot be recovered from without completely
// disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called // disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called
// on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects. // on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.
// +listType=atomic
Rules []RuleWithOperations `json:"rules,omitempty" protobuf:"bytes,3,rep,name=rules"` Rules []RuleWithOperations `json:"rules,omitempty" protobuf:"bytes,3,rep,name=rules"`
// FailurePolicy defines how unrecognized errors from the admission endpoint are handled - // FailurePolicy defines how unrecognized errors from the admission endpoint are handled -
@ -1026,6 +1034,7 @@ type MutatingWebhook struct {
// and be subject to the failure policy. // and be subject to the failure policy.
// Default to `['v1beta1']`. // Default to `['v1beta1']`.
// +optional // +optional
// +listType=atomic
AdmissionReviewVersions []string `json:"admissionReviewVersions,omitempty" protobuf:"bytes,8,rep,name=admissionReviewVersions"` AdmissionReviewVersions []string `json:"admissionReviewVersions,omitempty" protobuf:"bytes,8,rep,name=admissionReviewVersions"`
// reinvocationPolicy indicates whether this webhook should be called multiple times as part of a single admission evaluation. // reinvocationPolicy indicates whether this webhook should be called multiple times as part of a single admission evaluation.