{
  "description": "ValidatingWebhookConfigurationCustomization is the Schema for customizing the validating webhook\nconfigurations in config connector.",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
      "type": "string"
    },
    "kind": {
      "description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": "string"
    },
    "metadata": {
      "properties": {
        "name": {
          "enum": [
            "validating-webhook",
            "abandon-on-uninstall"
          ],
          "type": "string"
        }
      },
      "type": "object",
      "additionalProperties": false
    },
    "spec": {
      "description": "WebhookConfigurationCustomizationSpec is the specification for customizing the webhooks of a config\nconnector webhook configuration.",
      "properties": {
        "webhooks": {
          "description": "The list of webhooks whose configuration to be customized.\nRequired",
          "items": {
            "description": "WebhookCustomizationSpec is the specification for customizing for a specific webhook in config connector.",
            "properties": {
              "name": {
                "description": "The name of the webhook. Do not include the `.cnrm.cloud.google.com` suffix.\nRequired",
                "enum": [
                  "abandon-on-uninstall",
                  "deny-immutable-field-updates",
                  "deny-unknown-fields",
                  "iam-validation",
                  "resource-validation",
                  "container-annotation-handler",
                  "generic-defaulter",
                  "iam-defaulter",
                  "management-conflict-annotation-defaulter"
                ],
                "type": "string"
              },
              "timeoutSeconds": {
                "description": "TimeoutSeconds customizes the timeout of the webhook.\nThe timeout value must be between 1 and 30 seconds.\nThe default timeout in Kubernetes is 10 seconds.\nRequired",
                "format": "int32",
                "maximum": 30,
                "minimum": 1,
                "type": "integer"
              }
            },
            "required": [
              "name"
            ],
            "type": "object",
            "additionalProperties": false
          },
          "type": "array"
        }
      },
      "required": [
        "webhooks"
      ],
      "type": "object",
      "additionalProperties": false
    },
    "status": {
      "description": "WebhookConfigurationCustomizationStatus defines the observed state of ValidatingWebhookConfigurationCustomization and\nMutatingWebhookConfigurationCustomization.",
      "properties": {
        "errors": {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "healthy": {
          "type": "boolean"
        },
        "observedGeneration": {
          "default": 0,
          "format": "int64",
          "type": "integer"
        },
        "phase": {
          "type": "string"
        }
      },
      "required": [
        "healthy",
        "observedGeneration"
      ],
      "type": "object",
      "additionalProperties": false
    }
  },
  "required": [
    "spec"
  ],
  "type": "object"
}
