{
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
      "type": [
        "string",
        "null"
      ]
    },
    "kind": {
      "description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": [
        "string",
        "null"
      ]
    },
    "metadata": {
      "type": [
        "object",
        "null"
      ]
    },
    "spec": {
      "additionalProperties": false,
      "description": "The specification of the Kafka Connect cluster.",
      "properties": {
        "authentication": {
          "additionalProperties": false,
          "description": "Authentication configuration for Kafka Connect.",
          "properties": {
            "certificateAndKey": {
              "additionalProperties": false,
              "description": "Reference to the `Secret` which holds the certificate and private key pair.",
              "properties": {
                "certificate": {
                  "description": "The name of the file certificate in the Secret.",
                  "type": "string"
                },
                "key": {
                  "description": "The name of the private key in the secret. The private key must be in unencrypted PKCS #8 format. For more information, see RFC 5208: https://datatracker.ietf.org/doc/html/rfc5208.",
                  "type": "string"
                },
                "secretName": {
                  "description": "The name of the Secret containing the certificate.",
                  "type": "string"
                }
              },
              "required": [
                "secretName",
                "certificate",
                "key"
              ],
              "type": [
                "object",
                "null"
              ]
            },
            "config": {
              "description": "Configuration for the custom authentication mechanism. Only properties with the `sasl.` and `ssl.keystore.` prefixes are allowed. Specify other options in the regular configuration section of the custom resource.",
              "type": [
                "object",
                "null"
              ],
              "x-kubernetes-preserve-unknown-fields": true
            },
            "passwordSecret": {
              "additionalProperties": false,
              "description": "Reference to the `Secret` which holds the password.",
              "properties": {
                "password": {
                  "description": "The name of the key in the Secret under which the password is stored.",
                  "type": "string"
                },
                "secretName": {
                  "description": "The name of the Secret containing the password.",
                  "type": "string"
                }
              },
              "required": [
                "secretName",
                "password"
              ],
              "type": [
                "object",
                "null"
              ]
            },
            "sasl": {
              "description": "Enable or disable SASL on this authentication mechanism.",
              "type": [
                "boolean",
                "null"
              ]
            },
            "type": {
              "description": "Specifies the authentication type. Supported types are `tls`, `scram-sha-256`, `scram-sha-512`, `plain`, 'oauth', and `custom`. `tls` uses TLS client authentication and is supported only over TLS connections. `scram-sha-256` and `scram-sha-512` use SASL SCRAM-SHA-256 and SASL SCRAM-SHA-512 authentication, respectively. `plain` uses SASL PLAIN authentication. `oauth` uses SASL OAUTHBEARER authentication. `custom` allows you to configure a custom authentication mechanism. As of Strimzi 0.49.0, `oauth` type is deprecated and will be removed in the `v1` API version. Please use `custom` type instead.",
              "enum": [
                "tls",
                "scram-sha-256",
                "scram-sha-512",
                "plain",
                "custom"
              ],
              "type": "string"
            },
            "username": {
              "description": "Username used for the authentication.",
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "type"
          ],
          "type": [
            "object",
            "null"
          ]
        },
        "bootstrapServers": {
          "description": "Bootstrap servers to connect to. This should be given as a comma separated list of _\u003chostname\u003e_:_\u003cport\u003e_ pairs.",
          "type": "string"
        },
        "build": {
          "additionalProperties": false,
          "description": "Configures how the Connect container image should be built. Optional.",
          "properties": {
            "output": {
              "additionalProperties": false,
              "description": "Configures where should the newly built image be stored. Required.",
              "properties": {
                "additionalBuildOptions": {
                  "description": "Configures additional options to pass to the `build` command of either Kaniko or Buildah (depending on the feature gate setting) when building a new Kafka Connect image. Allowed Kaniko options: --customPlatform, --custom-platform, --insecure, --insecure-pull, --insecure-registry, --log-format, --log-timestamp, --registry-mirror, --reproducible, --single-snapshot, --skip-tls-verify, --skip-tls-verify-pull, --skip-tls-verify-registry, --verbosity, --snapshotMode, --use-new-run, --registry-certificate, --registry-client-cert, --ignore-path. Allowed Buildah `build` options: --authfile, --cert-dir, --creds, --decryption-key, --retry, --retry-delay, --tls-verify. Those options are used only on Kubernetes, where Kaniko and Buildah are available. They are ignored on OpenShift. For more information, see the link:https://github.com/GoogleContainerTools/kaniko[Kaniko GitHub repository^] or the link:https://github.com/containers/buildah/blob/main/docs/buildah-build.1.md[Buildah build document^]. Changing this field does not trigger a rebuild of the Kafka Connect image.",
                  "items": {
                    "type": "string"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "additionalPushOptions": {
                  "description": "Configures additional options to pass to the Buildah `push` command when pushing a new Connect image. Allowed options: --authfile, --cert-dir, --creds, --quiet, --retry, --retry-delay, --tls-verify. Those options are used only on Kubernetes, where Buildah is available. They are ignored on OpenShift. For more information, see the link:https://github.com/containers/buildah/blob/main/docs/buildah-push.1.md[Buildah push document^]. Changing this field does not trigger a rebuild of the Kafka Connect image.",
                  "items": {
                    "type": "string"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "image": {
                  "description": "The name of the image which will be built. Required.",
                  "type": "string"
                },
                "pushSecret": {
                  "description": "Container Registry Secret with the credentials for pushing the newly built image.",
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "type": {
                  "description": "Output type. Must be either `docker` for pushing the newly build image to Docker compatible registry or `imagestream` for pushing the image to OpenShift ImageStream. Required.",
                  "enum": [
                    "docker",
                    "imagestream"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "image",
                "type"
              ],
              "type": "object"
            },
            "plugins": {
              "description": "List of connector plugins which should be added to the Kafka Connect. Required.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "artifacts": {
                    "description": "List of artifacts which belong to this connector plugin. Required.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "artifact": {
                          "description": "Maven artifact id. Applicable to the `maven` artifact type only.",
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "fileName": {
                          "description": "Name under which the artifact will be stored.",
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "group": {
                          "description": "Maven group id. Applicable to the `maven` artifact type only.",
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "insecure": {
                          "description": "By default, connections using TLS are verified to check they are secure. The server certificate used must be valid, trusted, and contain the server name. By setting this option to `true`, all TLS verification is disabled and the artifact will be downloaded, even when the server is considered insecure.",
                          "type": [
                            "boolean",
                            "null"
                          ]
                        },
                        "repository": {
                          "description": "Maven repository to download the artifact from. Applicable to the `maven` artifact type only.",
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "sha512sum": {
                          "description": "SHA512 checksum of the artifact. Optional. If specified, the checksum will be verified while building the new container. If not specified, the downloaded artifact will not be verified. Not applicable to the `maven` artifact type. ",
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "description": "Artifact type. Currently, the supported artifact types are `tgz`, `jar`, `zip`, `other` and `maven`.",
                          "enum": [
                            "jar",
                            "tgz",
                            "zip",
                            "maven",
                            "other"
                          ],
                          "type": "string"
                        },
                        "url": {
                          "description": "URL of the artifact which will be downloaded. Strimzi does not do any security scanning of the downloaded artifacts. For security reasons, you should first verify the artifacts manually and configure the checksum verification to make sure the same artifact is used in the automated build. Required for `jar`, `zip`, `tgz` and `other` artifacts. Not applicable to the `maven` artifact type.",
                          "pattern": "^(https?|ftp)://[-a-zA-Z0-9+\u0026@#/%?=~_|!:,.;]*[-a-zA-Z0-9+\u0026@#/%=~_|]$",
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "version": {
                          "description": "Maven version number. Applicable to the `maven` artifact type only.",
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "type": "object"
                    },
                    "type": "array"
                  },
                  "name": {
                    "description": "The unique name of the connector plugin. Will be used to generate the path where the connector artifacts will be stored. The name has to be unique within the KafkaConnect resource. The name has to follow the following pattern: `^[a-z][-_a-z0-9]*[a-z]$`. Required.",
                    "pattern": "^[a-z0-9][-_a-z0-9]*[a-z0-9]$",
                    "type": "string"
                  }
                },
                "required": [
                  "name",
                  "artifacts"
                ],
                "type": "object"
              },
              "type": "array"
            },
            "resources": {
              "additionalProperties": false,
              "description": "CPU and memory resources to reserve for the build.",
              "properties": {
                "claims": {
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "name": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "request": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "limits": {
                  "additionalProperties": {
                    "oneOf": [
                      {
                        "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
                        "type": "string"
                      },
                      {
                        "type": "integer"
                      }
                    ],
                    "x-kubernetes-int-or-string": true
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "requests": {
                  "additionalProperties": {
                    "oneOf": [
                      {
                        "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
                        "type": "string"
                      },
                      {
                        "type": "integer"
                      }
                    ],
                    "x-kubernetes-int-or-string": true
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            }
          },
          "required": [
            "output",
            "plugins"
          ],
          "type": [
            "object",
            "null"
          ]
        },
        "clientRackInitImage": {
          "description": "The image of the init container used for initializing the `client.rack`.",
          "type": [
            "string",
            "null"
          ]
        },
        "config": {
          "description": "The Kafka Connect configuration. Properties with the following prefixes cannot be set: ssl., sasl., security., listeners, plugin.path, rest., bootstrap.servers, consumer.interceptor.classes, producer.interceptor.classes, prometheus.metrics.reporter. (with the exception of: ssl.endpoint.identification.algorithm, ssl.cipher.suites, ssl.protocol, ssl.enabled.protocols).",
          "type": [
            "object",
            "null"
          ],
          "x-kubernetes-preserve-unknown-fields": true
        },
        "configStorageTopic": {
          "description": "The name of the Kafka topic where connector configurations are stored.",
          "type": "string"
        },
        "groupId": {
          "description": "A unique ID that identifies the Connect cluster group.",
          "type": "string"
        },
        "image": {
          "description": "The container image used for Kafka Connect pods. If no image name is explicitly specified, it is determined based on the `spec.version` configuration. The image names are specifically mapped to corresponding versions in the Cluster Operator configuration.",
          "type": [
            "string",
            "null"
          ]
        },
        "jmxOptions": {
          "additionalProperties": false,
          "description": "JMX Options.",
          "properties": {
            "authentication": {
              "additionalProperties": false,
              "description": "Authentication configuration for connecting to the JMX port.",
              "properties": {
                "type": {
                  "description": "Authentication type. Currently the only supported types are `password`.`password` type creates a username and protected port with no TLS.",
                  "enum": [
                    "password"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": [
                "object",
                "null"
              ]
            }
          },
          "type": [
            "object",
            "null"
          ]
        },
        "jvmOptions": {
          "additionalProperties": false,
          "description": "JVM Options for pods.",
          "properties": {
            "-XX": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "A map of -XX options to the JVM.",
              "type": [
                "object",
                "null"
              ]
            },
            "-Xms": {
              "description": "-Xms option to to the JVM.",
              "pattern": "^[0-9]+[mMgG]?$",
              "type": [
                "string",
                "null"
              ]
            },
            "-Xmx": {
              "description": "-Xmx option to to the JVM.",
              "pattern": "^[0-9]+[mMgG]?$",
              "type": [
                "string",
                "null"
              ]
            },
            "gcLoggingEnabled": {
              "description": "Specifies whether the Garbage Collection logging is enabled. The default is false.",
              "type": [
                "boolean",
                "null"
              ]
            },
            "javaSystemProperties": {
              "description": "A map of additional system properties which will be passed using the `-D` option to the JVM.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "name": {
                    "description": "The system property name.",
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "value": {
                    "description": "The system property value.",
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": [
                "array",
                "null"
              ]
            }
          },
          "type": [
            "object",
            "null"
          ]
        },
        "livenessProbe": {
          "additionalProperties": false,
          "description": "Pod liveness checking.",
          "properties": {
            "failureThreshold": {
              "description": "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.",
              "minimum": 1,
              "type": [
                "integer",
                "null"
              ]
            },
            "initialDelaySeconds": {
              "description": "The initial delay before first the health is first checked. Default to 15 seconds. Minimum value is 0.",
              "minimum": 0,
              "type": [
                "integer",
                "null"
              ]
            },
            "periodSeconds": {
              "description": "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.",
              "minimum": 1,
              "type": [
                "integer",
                "null"
              ]
            },
            "successThreshold": {
              "description": "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness. Minimum value is 1.",
              "minimum": 1,
              "type": [
                "integer",
                "null"
              ]
            },
            "timeoutSeconds": {
              "description": "The timeout for each attempted health check. Default to 5 seconds. Minimum value is 1.",
              "minimum": 1,
              "type": [
                "integer",
                "null"
              ]
            }
          },
          "type": [
            "object",
            "null"
          ]
        },
        "logging": {
          "additionalProperties": false,
          "description": "Logging configuration for Kafka Connect.",
          "properties": {
            "loggers": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "A Map from logger name to logger level.",
              "type": [
                "object",
                "null"
              ]
            },
            "type": {
              "description": "Logging type, must be either 'inline' or 'external'.",
              "enum": [
                "inline",
                "external"
              ],
              "type": "string"
            },
            "valueFrom": {
              "additionalProperties": false,
              "description": "`ConfigMap` entry where the logging configuration is stored. ",
              "properties": {
                "configMapKeyRef": {
                  "additionalProperties": false,
                  "description": "Reference to the key in the ConfigMap containing the configuration.",
                  "properties": {
                    "key": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "name": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "optional": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            }
          },
          "required": [
            "type"
          ],
          "type": [
            "object",
            "null"
          ]
        },
        "metricsConfig": {
          "additionalProperties": false,
          "description": "Metrics configuration.",
          "properties": {
            "type": {
              "description": "Metrics type. The supported types are `jmxPrometheusExporter` and `strimziMetricsReporter`. Type `jmxPrometheusExporter` uses the Prometheus JMX Exporter to expose Kafka JMX metrics in Prometheus format through an HTTP endpoint. Type `strimziMetricsReporter` uses the Strimzi Metrics Reporter to directly expose Kafka metrics in Prometheus format through an HTTP endpoint.",
              "enum": [
                "jmxPrometheusExporter",
                "strimziMetricsReporter"
              ],
              "type": "string"
            },
            "valueFrom": {
              "additionalProperties": false,
              "description": "ConfigMap entry where the Prometheus JMX Exporter configuration is stored.",
              "properties": {
                "configMapKeyRef": {
                  "additionalProperties": false,
                  "description": "Reference to the key in the ConfigMap containing the configuration.",
                  "properties": {
                    "key": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "name": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "optional": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "values": {
              "additionalProperties": false,
              "description": "Configuration values for the Strimzi Metrics Reporter.",
              "properties": {
                "allowList": {
                  "description": "A list of regex patterns to filter the metrics to collect. Should contain at least one element.",
                  "items": {
                    "type": "string"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            }
          },
          "required": [
            "type"
          ],
          "type": [
            "object",
            "null"
          ],
          "x-kubernetes-validations": [
            {
              "message": "valueFrom property is required",
              "rule": "self.type != 'jmxPrometheusExporter' || has(self.valueFrom)"
            }
          ]
        },
        "offsetStorageTopic": {
          "description": "The name of the Kafka topic where source connector offsets are stored.",
          "type": "string"
        },
        "plugins": {
          "description": "List of connector plugins to mount into the `KafkaConnect` pod.",
          "items": {
            "additionalProperties": false,
            "properties": {
              "artifacts": {
                "description": "List of artifacts associated with this connector plugin. Required.",
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "pullPolicy": {
                      "description": "Policy that determines when the container image (OCI artifact) is pulled.\n\nPossible values are:\n\n* `Always`: Always pull the image. If the pull fails, container creation fails.\n* `Never`: Never pull the image. Use only a locally available image. Container creation fails if the image isn’t present.\n* `IfNotPresent`: Pull the image only if it’s not already available locally. Container creation fails if the image isn’t present and the pull fails.\n\nDefaults to `Always` if `:latest` tag is specified, or `IfNotPresent` otherwise.",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "reference": {
                      "description": "Reference to the container image (OCI artifact) containing the Kafka Connect plugin. The image is mounted as a volume and provides the plugin binary. Required.",
                      "type": "string"
                    },
                    "type": {
                      "description": "Artifact type. Currently, the only supported artifact type is `image`.",
                      "enum": [
                        "image"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "reference",
                    "type"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "name": {
                "description": "A unique name for the connector plugin. This name is used to generate the mount path for the connector artifacts. The name has to be unique within the KafkaConnect resource. The name must be unique within the `KafkaConnect` resource and match the pattern: `^[a-z][-_a-z0-9]*[a-z]$`. Required.",
                "pattern": "^[a-z0-9][-_a-z0-9]*[a-z0-9]$",
                "type": "string"
              }
            },
            "required": [
              "name",
              "artifacts"
            ],
            "type": "object"
          },
          "type": [
            "array",
            "null"
          ]
        },
        "rack": {
          "additionalProperties": false,
          "description": "Configuration of the node label which will be used as the `client.rack` consumer configuration.",
          "properties": {
            "topologyKey": {
              "description": "A key that matches labels assigned to the Kubernetes cluster nodes. The value of the label is used to set a broker's `broker.rack` config, and the `client.rack` config for Kafka Connect or MirrorMaker 2.",
              "example": "topology.kubernetes.io/zone",
              "type": "string"
            }
          },
          "required": [
            "topologyKey"
          ],
          "type": [
            "object",
            "null"
          ]
        },
        "readinessProbe": {
          "additionalProperties": false,
          "description": "Pod readiness checking.",
          "properties": {
            "failureThreshold": {
              "description": "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.",
              "minimum": 1,
              "type": [
                "integer",
                "null"
              ]
            },
            "initialDelaySeconds": {
              "description": "The initial delay before first the health is first checked. Default to 15 seconds. Minimum value is 0.",
              "minimum": 0,
              "type": [
                "integer",
                "null"
              ]
            },
            "periodSeconds": {
              "description": "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.",
              "minimum": 1,
              "type": [
                "integer",
                "null"
              ]
            },
            "successThreshold": {
              "description": "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness. Minimum value is 1.",
              "minimum": 1,
              "type": [
                "integer",
                "null"
              ]
            },
            "timeoutSeconds": {
              "description": "The timeout for each attempted health check. Default to 5 seconds. Minimum value is 1.",
              "minimum": 1,
              "type": [
                "integer",
                "null"
              ]
            }
          },
          "type": [
            "object",
            "null"
          ]
        },
        "replicas": {
          "description": "The number of pods in the Kafka Connect group. Required in the `v1` version of the Strimzi API. Defaults to `3` in the `v1beta2` version of the Strimzi API.",
          "type": "integer"
        },
        "resources": {
          "additionalProperties": false,
          "description": "The maximum limits for CPU and memory resources and the requested initial resources.",
          "properties": {
            "claims": {
              "items": {
                "additionalProperties": false,
                "properties": {
                  "name": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "request": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": [
                "array",
                "null"
              ]
            },
            "limits": {
              "additionalProperties": {
                "oneOf": [
                  {
                    "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
                    "type": "string"
                  },
                  {
                    "type": "integer"
                  }
                ],
                "x-kubernetes-int-or-string": true
              },
              "type": [
                "object",
                "null"
              ]
            },
            "requests": {
              "additionalProperties": {
                "oneOf": [
                  {
                    "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
                    "type": "string"
                  },
                  {
                    "type": "integer"
                  }
                ],
                "x-kubernetes-int-or-string": true
              },
              "type": [
                "object",
                "null"
              ]
            }
          },
          "type": [
            "object",
            "null"
          ]
        },
        "statusStorageTopic": {
          "description": "The name of the Kafka topic where connector and task status are stored.",
          "type": "string"
        },
        "template": {
          "additionalProperties": false,
          "description": "Template for Kafka Connect and Kafka MirrorMaker 2 resources. The template allows users to specify how the `Pods`, `Service`, and other services are generated.",
          "properties": {
            "apiService": {
              "additionalProperties": false,
              "description": "Template for Kafka Connect API `Service`.",
              "properties": {
                "ipFamilies": {
                  "description": "Specifies the IP Families used by the service. Available options are `IPv4` and `IPv6`. If unspecified, Kubernetes will choose the default value based on the `ipFamilyPolicy` setting.",
                  "items": {
                    "enum": [
                      "IPv4",
                      "IPv6"
                    ],
                    "type": "string"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "ipFamilyPolicy": {
                  "description": "Specifies the IP Family Policy used by the service. Available options are `SingleStack`, `PreferDualStack` and `RequireDualStack`. `SingleStack` is for a single IP family. `PreferDualStack` is for two IP families on dual-stack configured clusters or a single IP family on single-stack clusters. `RequireDualStack` fails unless there are two IP families on dual-stack configured clusters. If unspecified, Kubernetes will choose the default value based on the service type.",
                  "enum": [
                    "SingleStack",
                    "PreferDualStack",
                    "RequireDualStack"
                  ],
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata applied to the resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "buildConfig": {
              "additionalProperties": false,
              "description": "Template for the Kafka Connect BuildConfig used to build new container images. The BuildConfig is used only on OpenShift.",
              "properties": {
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata to apply to the `PodDisruptionBudgetTemplate` resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "pullSecret": {
                  "description": "Container Registry Secret with the credentials for pulling the base image.",
                  "type": [
                    "string",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "buildContainer": {
              "additionalProperties": false,
              "description": "Template for the Kafka Connect Build container. The build container is used only on Kubernetes.",
              "properties": {
                "env": {
                  "description": "Environment variables which should be applied to the container.",
                  "items": {
                    "additionalProperties": false,
                    "oneOf": [
                      {
                        "properties": {
                          "value": {}
                        },
                        "required": [
                          "value"
                        ]
                      },
                      {
                        "properties": {
                          "valueFrom": {}
                        },
                        "required": [
                          "valueFrom"
                        ]
                      }
                    ],
                    "properties": {
                      "name": {
                        "description": "The environment variable key.",
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "value": {
                        "description": "The environment variable value.",
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "valueFrom": {
                        "additionalProperties": false,
                        "description": "Reference to the secret or config map property to which the environment variable is set.",
                        "oneOf": [
                          {
                            "properties": {
                              "secretKeyRef": {}
                            },
                            "required": [
                              "secretKeyRef"
                            ]
                          },
                          {
                            "properties": {
                              "configMapKeyRef": {}
                            },
                            "required": [
                              "configMapKeyRef"
                            ]
                          }
                        ],
                        "properties": {
                          "configMapKeyRef": {
                            "additionalProperties": false,
                            "description": "Reference to a key in a config map.",
                            "properties": {
                              "key": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "name": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "optional": {
                                "type": [
                                  "boolean",
                                  "null"
                                ]
                              }
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          },
                          "secretKeyRef": {
                            "additionalProperties": false,
                            "description": "Reference to a key in a secret.",
                            "properties": {
                              "key": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "name": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "optional": {
                                "type": [
                                  "boolean",
                                  "null"
                                ]
                              }
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          }
                        },
                        "type": "object"
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "securityContext": {
                  "additionalProperties": false,
                  "description": "Security context for the container.",
                  "properties": {
                    "allowPrivilegeEscalation": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "appArmorProfile": {
                      "additionalProperties": false,
                      "properties": {
                        "localhostProfile": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "capabilities": {
                      "additionalProperties": false,
                      "properties": {
                        "add": {
                          "items": {
                            "type": "string"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        },
                        "drop": {
                          "items": {
                            "type": "string"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "privileged": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "procMount": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "readOnlyRootFilesystem": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "runAsGroup": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "runAsNonRoot": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "runAsUser": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "seLinuxOptions": {
                      "additionalProperties": false,
                      "properties": {
                        "level": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "role": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "user": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "seccompProfile": {
                      "additionalProperties": false,
                      "properties": {
                        "localhostProfile": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "windowsOptions": {
                      "additionalProperties": false,
                      "properties": {
                        "gmsaCredentialSpec": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "gmsaCredentialSpecName": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "hostProcess": {
                          "type": [
                            "boolean",
                            "null"
                          ]
                        },
                        "runAsUserName": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "volumeMounts": {
                  "description": "Additional volume mounts which should be applied to the container.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "mountPath": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "mountPropagation": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "name": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "readOnly": {
                        "type": [
                          "boolean",
                          "null"
                        ]
                      },
                      "recursiveReadOnly": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "subPath": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "subPathExpr": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "buildPod": {
              "additionalProperties": false,
              "description": "Template for Kafka Connect Build `Pods`. The build pod is used only on Kubernetes.",
              "properties": {
                "affinity": {
                  "additionalProperties": false,
                  "description": "The pod's affinity rules.",
                  "properties": {
                    "nodeAffinity": {
                      "additionalProperties": false,
                      "properties": {
                        "preferredDuringSchedulingIgnoredDuringExecution": {
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "preference": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchFields": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "weight": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              }
                            },
                            "type": "object"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        },
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "additionalProperties": false,
                          "properties": {
                            "nodeSelectorTerms": {
                              "items": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchFields": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  }
                                },
                                "type": "object"
                              },
                              "type": [
                                "array",
                                "null"
                              ]
                            }
                          },
                          "type": [
                            "object",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "podAffinity": {
                      "additionalProperties": false,
                      "properties": {
                        "preferredDuringSchedulingIgnoredDuringExecution": {
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "podAffinityTerm": {
                                "additionalProperties": false,
                                "properties": {
                                  "labelSelector": {
                                    "additionalProperties": false,
                                    "properties": {
                                      "matchExpressions": {
                                        "items": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "key": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "operator": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "values": {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": [
                                                "array",
                                                "null"
                                              ]
                                            }
                                          },
                                          "type": "object"
                                        },
                                        "type": [
                                          "array",
                                          "null"
                                        ]
                                      },
                                      "matchLabels": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "type": [
                                          "object",
                                          "null"
                                        ]
                                      }
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  },
                                  "matchLabelKeys": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "mismatchLabelKeys": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "namespaceSelector": {
                                    "additionalProperties": false,
                                    "properties": {
                                      "matchExpressions": {
                                        "items": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "key": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "operator": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "values": {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": [
                                                "array",
                                                "null"
                                              ]
                                            }
                                          },
                                          "type": "object"
                                        },
                                        "type": [
                                          "array",
                                          "null"
                                        ]
                                      },
                                      "matchLabels": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "type": [
                                          "object",
                                          "null"
                                        ]
                                      }
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  },
                                  "namespaces": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "topologyKey": {
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "weight": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              }
                            },
                            "type": "object"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        },
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "labelSelector": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchLabels": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "matchLabelKeys": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "mismatchLabelKeys": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "namespaceSelector": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchLabels": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "namespaces": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "topologyKey": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            },
                            "type": "object"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "podAntiAffinity": {
                      "additionalProperties": false,
                      "properties": {
                        "preferredDuringSchedulingIgnoredDuringExecution": {
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "podAffinityTerm": {
                                "additionalProperties": false,
                                "properties": {
                                  "labelSelector": {
                                    "additionalProperties": false,
                                    "properties": {
                                      "matchExpressions": {
                                        "items": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "key": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "operator": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "values": {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": [
                                                "array",
                                                "null"
                                              ]
                                            }
                                          },
                                          "type": "object"
                                        },
                                        "type": [
                                          "array",
                                          "null"
                                        ]
                                      },
                                      "matchLabels": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "type": [
                                          "object",
                                          "null"
                                        ]
                                      }
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  },
                                  "matchLabelKeys": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "mismatchLabelKeys": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "namespaceSelector": {
                                    "additionalProperties": false,
                                    "properties": {
                                      "matchExpressions": {
                                        "items": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "key": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "operator": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "values": {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": [
                                                "array",
                                                "null"
                                              ]
                                            }
                                          },
                                          "type": "object"
                                        },
                                        "type": [
                                          "array",
                                          "null"
                                        ]
                                      },
                                      "matchLabels": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "type": [
                                          "object",
                                          "null"
                                        ]
                                      }
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  },
                                  "namespaces": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "topologyKey": {
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "weight": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              }
                            },
                            "type": "object"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        },
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "labelSelector": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchLabels": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "matchLabelKeys": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "mismatchLabelKeys": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "namespaceSelector": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchLabels": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "namespaces": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "topologyKey": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            },
                            "type": "object"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "dnsConfig": {
                  "additionalProperties": false,
                  "description": "The pod's DNSConfig. If specified, it will be merged to the generated DNS configuration based on the DNSPolicy.",
                  "properties": {
                    "nameservers": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "options": {
                      "items": {
                        "additionalProperties": false,
                        "properties": {
                          "name": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "value": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        },
                        "type": "object"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "searches": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "dnsPolicy": {
                  "description": "The pod's DNSPolicy. Defaults to `ClusterFirst`. Valid values are `ClusterFirstWithHostNet`, `ClusterFirst`, `Default` or `None`.",
                  "enum": [
                    "ClusterFirst",
                    "ClusterFirstWithHostNet",
                    "Default",
                    "None"
                  ],
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "enableServiceLinks": {
                  "description": "Indicates whether information about services should be injected into Pod's environment variables.",
                  "type": [
                    "boolean",
                    "null"
                  ]
                },
                "hostAliases": {
                  "description": "The pod's HostAliases. HostAliases is an optional list of hosts and IPs that will be injected into the Pod's hosts file if specified.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "hostnames": {
                        "items": {
                          "type": "string"
                        },
                        "type": [
                          "array",
                          "null"
                        ]
                      },
                      "ip": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "hostUsers": {
                  "description": "Use the host user namespace. Optional. Defaults to `true`. When `true` or not set, the pod runs in the host user namespace. This is required when the pod needs features available only in the host namespace, such as loading kernel modules with `CAP_SYS_MODULE`.When set to `false`, the pod runs in a new user namespace. Setting `false` helps mitigate container breakout vulnerabilities and allows containers to run as `root` without granting `root` privileges on the host. This property is alpha-level in Kubernetes and is supported only by Kubernetes clusters that enable the `UserNamespacesSupport` feature.",
                  "type": [
                    "boolean",
                    "null"
                  ]
                },
                "imagePullSecrets": {
                  "description": "List of references to secrets in the same namespace to use for pulling any of the images used by this Pod. When the `STRIMZI_IMAGE_PULL_SECRETS` environment variable in Cluster Operator and the `imagePullSecrets` option are specified, only the `imagePullSecrets` variable is used and the `STRIMZI_IMAGE_PULL_SECRETS` variable is ignored.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "name": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata applied to the resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "priorityClassName": {
                  "description": "The name of the priority class used to assign priority to the pods. ",
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "schedulerName": {
                  "description": "The name of the scheduler used to dispatch this `Pod`. If not specified, the default scheduler will be used.",
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "securityContext": {
                  "additionalProperties": false,
                  "description": "Configures pod-level security attributes and common container settings.",
                  "properties": {
                    "appArmorProfile": {
                      "additionalProperties": false,
                      "properties": {
                        "localhostProfile": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "fsGroup": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "fsGroupChangePolicy": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "runAsGroup": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "runAsNonRoot": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "runAsUser": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "seLinuxChangePolicy": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "seLinuxOptions": {
                      "additionalProperties": false,
                      "properties": {
                        "level": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "role": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "user": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "seccompProfile": {
                      "additionalProperties": false,
                      "properties": {
                        "localhostProfile": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "supplementalGroups": {
                      "items": {
                        "type": "integer"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "supplementalGroupsPolicy": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "sysctls": {
                      "items": {
                        "additionalProperties": false,
                        "properties": {
                          "name": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "value": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        },
                        "type": "object"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "windowsOptions": {
                      "additionalProperties": false,
                      "properties": {
                        "gmsaCredentialSpec": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "gmsaCredentialSpecName": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "hostProcess": {
                          "type": [
                            "boolean",
                            "null"
                          ]
                        },
                        "runAsUserName": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "terminationGracePeriodSeconds": {
                  "description": "The grace period is the duration in seconds after the processes running in the pod are sent a termination signal, and the time when the processes are forcibly halted with a kill signal. Set this value to longer than the expected cleanup time for your process. Value must be a non-negative integer. A zero value indicates delete immediately. You might need to increase the grace period for very large Kafka clusters, so that the Kafka brokers have enough time to transfer their work to another broker before they are terminated. Defaults to 30 seconds.",
                  "minimum": 0,
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "tmpDirSizeLimit": {
                  "description": "Defines the total amount of pod memory allocated for the temporary `EmptyDir` volume `/tmp`. Specify the allocation in memory units, for example, `100Mi` for 100 mebibytes. Default value is `5Mi`. The `/tmp` volume is backed by pod memory, not disk storage, so avoid setting a high value as it consumes pod memory resources.",
                  "pattern": "^([0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$",
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "tolerations": {
                  "description": "The pod's tolerations.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "effect": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "key": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "operator": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "tolerationSeconds": {
                        "type": [
                          "integer",
                          "null"
                        ]
                      },
                      "value": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "topologySpreadConstraints": {
                  "description": "The pod's topology spread constraints.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "labelSelector": {
                        "additionalProperties": false,
                        "properties": {
                          "matchExpressions": {
                            "items": {
                              "additionalProperties": false,
                              "properties": {
                                "key": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "operator": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "values": {
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": [
                                    "array",
                                    "null"
                                  ]
                                }
                              },
                              "type": "object"
                            },
                            "type": [
                              "array",
                              "null"
                            ]
                          },
                          "matchLabels": {
                            "additionalProperties": {
                              "type": "string"
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "matchLabelKeys": {
                        "items": {
                          "type": "string"
                        },
                        "type": [
                          "array",
                          "null"
                        ]
                      },
                      "maxSkew": {
                        "type": [
                          "integer",
                          "null"
                        ]
                      },
                      "minDomains": {
                        "type": [
                          "integer",
                          "null"
                        ]
                      },
                      "nodeAffinityPolicy": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "nodeTaintsPolicy": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "topologyKey": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "whenUnsatisfiable": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "volumes": {
                  "description": "Additional volumes that can be mounted to the pod.",
                  "items": {
                    "additionalProperties": false,
                    "oneOf": [
                      {
                        "properties": {
                          "configMap": {},
                          "csi": {},
                          "emptyDir": {},
                          "image": {},
                          "persistentVolumeClaim": {},
                          "secret": {}
                        }
                      }
                    ],
                    "properties": {
                      "configMap": {
                        "additionalProperties": false,
                        "description": "`ConfigMap` to use to populate the volume.",
                        "properties": {
                          "defaultMode": {
                            "type": [
                              "integer",
                              "null"
                            ]
                          },
                          "items": {
                            "items": {
                              "additionalProperties": false,
                              "properties": {
                                "key": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "mode": {
                                  "type": [
                                    "integer",
                                    "null"
                                  ]
                                },
                                "path": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                }
                              },
                              "type": "object"
                            },
                            "type": [
                              "array",
                              "null"
                            ]
                          },
                          "name": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "optional": {
                            "type": [
                              "boolean",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "csi": {
                        "additionalProperties": false,
                        "description": "`CSIVolumeSource` object to use to populate the volume.",
                        "properties": {
                          "driver": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "fsType": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "nodePublishSecretRef": {
                            "additionalProperties": false,
                            "properties": {
                              "name": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          },
                          "readOnly": {
                            "type": [
                              "boolean",
                              "null"
                            ]
                          },
                          "volumeAttributes": {
                            "additionalProperties": {
                              "type": "string"
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "emptyDir": {
                        "additionalProperties": false,
                        "description": "`EmptyDir` to use to populate the volume.",
                        "properties": {
                          "medium": {
                            "description": "Medium represents the type of storage medium should back this volume. Valid values are unset or `Memory`. When not set, it will use the node's default medium.",
                            "enum": [
                              "Memory"
                            ],
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "sizeLimit": {
                            "description": "The total amount of local storage required for this EmptyDir volume (for example 1Gi).",
                            "pattern": "^([0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$",
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "image": {
                        "additionalProperties": false,
                        "description": "`ImageVolumeSource` object to use to populate the volume.",
                        "properties": {
                          "pullPolicy": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "reference": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "name": {
                        "description": "Name to use for the volume. Required.",
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "persistentVolumeClaim": {
                        "additionalProperties": false,
                        "description": "`PersistentVolumeClaim` object to use to populate the volume.",
                        "properties": {
                          "claimName": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "readOnly": {
                            "type": [
                              "boolean",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "secret": {
                        "additionalProperties": false,
                        "description": "`Secret` to use to populate the volume.",
                        "properties": {
                          "defaultMode": {
                            "type": [
                              "integer",
                              "null"
                            ]
                          },
                          "items": {
                            "items": {
                              "additionalProperties": false,
                              "properties": {
                                "key": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "mode": {
                                  "type": [
                                    "integer",
                                    "null"
                                  ]
                                },
                                "path": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                }
                              },
                              "type": "object"
                            },
                            "type": [
                              "array",
                              "null"
                            ]
                          },
                          "optional": {
                            "type": [
                              "boolean",
                              "null"
                            ]
                          },
                          "secretName": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "buildServiceAccount": {
              "additionalProperties": false,
              "description": "Template for the Kafka Connect Build service account.",
              "properties": {
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata applied to the resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "clusterRoleBinding": {
              "additionalProperties": false,
              "description": "Template for the Kafka Connect ClusterRoleBinding.",
              "properties": {
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata applied to the resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "connectContainer": {
              "additionalProperties": false,
              "description": "Template for the Kafka Connect container.",
              "properties": {
                "env": {
                  "description": "Environment variables which should be applied to the container.",
                  "items": {
                    "additionalProperties": false,
                    "oneOf": [
                      {
                        "properties": {
                          "value": {}
                        },
                        "required": [
                          "value"
                        ]
                      },
                      {
                        "properties": {
                          "valueFrom": {}
                        },
                        "required": [
                          "valueFrom"
                        ]
                      }
                    ],
                    "properties": {
                      "name": {
                        "description": "The environment variable key.",
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "value": {
                        "description": "The environment variable value.",
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "valueFrom": {
                        "additionalProperties": false,
                        "description": "Reference to the secret or config map property to which the environment variable is set.",
                        "oneOf": [
                          {
                            "properties": {
                              "secretKeyRef": {}
                            },
                            "required": [
                              "secretKeyRef"
                            ]
                          },
                          {
                            "properties": {
                              "configMapKeyRef": {}
                            },
                            "required": [
                              "configMapKeyRef"
                            ]
                          }
                        ],
                        "properties": {
                          "configMapKeyRef": {
                            "additionalProperties": false,
                            "description": "Reference to a key in a config map.",
                            "properties": {
                              "key": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "name": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "optional": {
                                "type": [
                                  "boolean",
                                  "null"
                                ]
                              }
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          },
                          "secretKeyRef": {
                            "additionalProperties": false,
                            "description": "Reference to a key in a secret.",
                            "properties": {
                              "key": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "name": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "optional": {
                                "type": [
                                  "boolean",
                                  "null"
                                ]
                              }
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          }
                        },
                        "type": "object"
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "securityContext": {
                  "additionalProperties": false,
                  "description": "Security context for the container.",
                  "properties": {
                    "allowPrivilegeEscalation": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "appArmorProfile": {
                      "additionalProperties": false,
                      "properties": {
                        "localhostProfile": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "capabilities": {
                      "additionalProperties": false,
                      "properties": {
                        "add": {
                          "items": {
                            "type": "string"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        },
                        "drop": {
                          "items": {
                            "type": "string"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "privileged": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "procMount": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "readOnlyRootFilesystem": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "runAsGroup": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "runAsNonRoot": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "runAsUser": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "seLinuxOptions": {
                      "additionalProperties": false,
                      "properties": {
                        "level": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "role": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "user": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "seccompProfile": {
                      "additionalProperties": false,
                      "properties": {
                        "localhostProfile": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "windowsOptions": {
                      "additionalProperties": false,
                      "properties": {
                        "gmsaCredentialSpec": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "gmsaCredentialSpecName": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "hostProcess": {
                          "type": [
                            "boolean",
                            "null"
                          ]
                        },
                        "runAsUserName": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "volumeMounts": {
                  "description": "Additional volume mounts which should be applied to the container.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "mountPath": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "mountPropagation": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "name": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "readOnly": {
                        "type": [
                          "boolean",
                          "null"
                        ]
                      },
                      "recursiveReadOnly": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "subPath": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "subPathExpr": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "headlessService": {
              "additionalProperties": false,
              "description": "Template for Kafka Connect headless `Service`.",
              "properties": {
                "ipFamilies": {
                  "description": "Specifies the IP Families used by the service. Available options are `IPv4` and `IPv6`. If unspecified, Kubernetes will choose the default value based on the `ipFamilyPolicy` setting.",
                  "items": {
                    "enum": [
                      "IPv4",
                      "IPv6"
                    ],
                    "type": "string"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "ipFamilyPolicy": {
                  "description": "Specifies the IP Family Policy used by the service. Available options are `SingleStack`, `PreferDualStack` and `RequireDualStack`. `SingleStack` is for a single IP family. `PreferDualStack` is for two IP families on dual-stack configured clusters or a single IP family on single-stack clusters. `RequireDualStack` fails unless there are two IP families on dual-stack configured clusters. If unspecified, Kubernetes will choose the default value based on the service type.",
                  "enum": [
                    "SingleStack",
                    "PreferDualStack",
                    "RequireDualStack"
                  ],
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata applied to the resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "initContainer": {
              "additionalProperties": false,
              "description": "Template for the Kafka init container.",
              "properties": {
                "env": {
                  "description": "Environment variables which should be applied to the container.",
                  "items": {
                    "additionalProperties": false,
                    "oneOf": [
                      {
                        "properties": {
                          "value": {}
                        },
                        "required": [
                          "value"
                        ]
                      },
                      {
                        "properties": {
                          "valueFrom": {}
                        },
                        "required": [
                          "valueFrom"
                        ]
                      }
                    ],
                    "properties": {
                      "name": {
                        "description": "The environment variable key.",
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "value": {
                        "description": "The environment variable value.",
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "valueFrom": {
                        "additionalProperties": false,
                        "description": "Reference to the secret or config map property to which the environment variable is set.",
                        "oneOf": [
                          {
                            "properties": {
                              "secretKeyRef": {}
                            },
                            "required": [
                              "secretKeyRef"
                            ]
                          },
                          {
                            "properties": {
                              "configMapKeyRef": {}
                            },
                            "required": [
                              "configMapKeyRef"
                            ]
                          }
                        ],
                        "properties": {
                          "configMapKeyRef": {
                            "additionalProperties": false,
                            "description": "Reference to a key in a config map.",
                            "properties": {
                              "key": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "name": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "optional": {
                                "type": [
                                  "boolean",
                                  "null"
                                ]
                              }
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          },
                          "secretKeyRef": {
                            "additionalProperties": false,
                            "description": "Reference to a key in a secret.",
                            "properties": {
                              "key": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "name": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "optional": {
                                "type": [
                                  "boolean",
                                  "null"
                                ]
                              }
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          }
                        },
                        "type": "object"
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "securityContext": {
                  "additionalProperties": false,
                  "description": "Security context for the container.",
                  "properties": {
                    "allowPrivilegeEscalation": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "appArmorProfile": {
                      "additionalProperties": false,
                      "properties": {
                        "localhostProfile": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "capabilities": {
                      "additionalProperties": false,
                      "properties": {
                        "add": {
                          "items": {
                            "type": "string"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        },
                        "drop": {
                          "items": {
                            "type": "string"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "privileged": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "procMount": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "readOnlyRootFilesystem": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "runAsGroup": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "runAsNonRoot": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "runAsUser": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "seLinuxOptions": {
                      "additionalProperties": false,
                      "properties": {
                        "level": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "role": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "user": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "seccompProfile": {
                      "additionalProperties": false,
                      "properties": {
                        "localhostProfile": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "windowsOptions": {
                      "additionalProperties": false,
                      "properties": {
                        "gmsaCredentialSpec": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "gmsaCredentialSpecName": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "hostProcess": {
                          "type": [
                            "boolean",
                            "null"
                          ]
                        },
                        "runAsUserName": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "volumeMounts": {
                  "description": "Additional volume mounts which should be applied to the container.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "mountPath": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "mountPropagation": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "name": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "readOnly": {
                        "type": [
                          "boolean",
                          "null"
                        ]
                      },
                      "recursiveReadOnly": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "subPath": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "subPathExpr": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "jmxSecret": {
              "additionalProperties": false,
              "description": "Template for Secret of the Kafka Connect Cluster JMX authentication.",
              "properties": {
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata applied to the resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "pod": {
              "additionalProperties": false,
              "description": "Template for Kafka Connect `Pods`.",
              "properties": {
                "affinity": {
                  "additionalProperties": false,
                  "description": "The pod's affinity rules.",
                  "properties": {
                    "nodeAffinity": {
                      "additionalProperties": false,
                      "properties": {
                        "preferredDuringSchedulingIgnoredDuringExecution": {
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "preference": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchFields": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "weight": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              }
                            },
                            "type": "object"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        },
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "additionalProperties": false,
                          "properties": {
                            "nodeSelectorTerms": {
                              "items": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchFields": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  }
                                },
                                "type": "object"
                              },
                              "type": [
                                "array",
                                "null"
                              ]
                            }
                          },
                          "type": [
                            "object",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "podAffinity": {
                      "additionalProperties": false,
                      "properties": {
                        "preferredDuringSchedulingIgnoredDuringExecution": {
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "podAffinityTerm": {
                                "additionalProperties": false,
                                "properties": {
                                  "labelSelector": {
                                    "additionalProperties": false,
                                    "properties": {
                                      "matchExpressions": {
                                        "items": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "key": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "operator": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "values": {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": [
                                                "array",
                                                "null"
                                              ]
                                            }
                                          },
                                          "type": "object"
                                        },
                                        "type": [
                                          "array",
                                          "null"
                                        ]
                                      },
                                      "matchLabels": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "type": [
                                          "object",
                                          "null"
                                        ]
                                      }
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  },
                                  "matchLabelKeys": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "mismatchLabelKeys": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "namespaceSelector": {
                                    "additionalProperties": false,
                                    "properties": {
                                      "matchExpressions": {
                                        "items": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "key": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "operator": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "values": {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": [
                                                "array",
                                                "null"
                                              ]
                                            }
                                          },
                                          "type": "object"
                                        },
                                        "type": [
                                          "array",
                                          "null"
                                        ]
                                      },
                                      "matchLabels": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "type": [
                                          "object",
                                          "null"
                                        ]
                                      }
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  },
                                  "namespaces": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "topologyKey": {
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "weight": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              }
                            },
                            "type": "object"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        },
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "labelSelector": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchLabels": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "matchLabelKeys": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "mismatchLabelKeys": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "namespaceSelector": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchLabels": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "namespaces": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "topologyKey": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            },
                            "type": "object"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "podAntiAffinity": {
                      "additionalProperties": false,
                      "properties": {
                        "preferredDuringSchedulingIgnoredDuringExecution": {
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "podAffinityTerm": {
                                "additionalProperties": false,
                                "properties": {
                                  "labelSelector": {
                                    "additionalProperties": false,
                                    "properties": {
                                      "matchExpressions": {
                                        "items": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "key": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "operator": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "values": {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": [
                                                "array",
                                                "null"
                                              ]
                                            }
                                          },
                                          "type": "object"
                                        },
                                        "type": [
                                          "array",
                                          "null"
                                        ]
                                      },
                                      "matchLabels": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "type": [
                                          "object",
                                          "null"
                                        ]
                                      }
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  },
                                  "matchLabelKeys": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "mismatchLabelKeys": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "namespaceSelector": {
                                    "additionalProperties": false,
                                    "properties": {
                                      "matchExpressions": {
                                        "items": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "key": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "operator": {
                                              "type": [
                                                "string",
                                                "null"
                                              ]
                                            },
                                            "values": {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": [
                                                "array",
                                                "null"
                                              ]
                                            }
                                          },
                                          "type": "object"
                                        },
                                        "type": [
                                          "array",
                                          "null"
                                        ]
                                      },
                                      "matchLabels": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "type": [
                                          "object",
                                          "null"
                                        ]
                                      }
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  },
                                  "namespaces": {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "topologyKey": {
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "weight": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              }
                            },
                            "type": "object"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        },
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "labelSelector": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchLabels": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "matchLabelKeys": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "mismatchLabelKeys": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "namespaceSelector": {
                                "additionalProperties": false,
                                "properties": {
                                  "matchExpressions": {
                                    "items": {
                                      "additionalProperties": false,
                                      "properties": {
                                        "key": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "operator": {
                                          "type": [
                                            "string",
                                            "null"
                                          ]
                                        },
                                        "values": {
                                          "items": {
                                            "type": "string"
                                          },
                                          "type": [
                                            "array",
                                            "null"
                                          ]
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "type": [
                                      "array",
                                      "null"
                                    ]
                                  },
                                  "matchLabels": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": [
                                      "object",
                                      "null"
                                    ]
                                  }
                                },
                                "type": [
                                  "object",
                                  "null"
                                ]
                              },
                              "namespaces": {
                                "items": {
                                  "type": "string"
                                },
                                "type": [
                                  "array",
                                  "null"
                                ]
                              },
                              "topologyKey": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            },
                            "type": "object"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "dnsConfig": {
                  "additionalProperties": false,
                  "description": "The pod's DNSConfig. If specified, it will be merged to the generated DNS configuration based on the DNSPolicy.",
                  "properties": {
                    "nameservers": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "options": {
                      "items": {
                        "additionalProperties": false,
                        "properties": {
                          "name": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "value": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        },
                        "type": "object"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "searches": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "dnsPolicy": {
                  "description": "The pod's DNSPolicy. Defaults to `ClusterFirst`. Valid values are `ClusterFirstWithHostNet`, `ClusterFirst`, `Default` or `None`.",
                  "enum": [
                    "ClusterFirst",
                    "ClusterFirstWithHostNet",
                    "Default",
                    "None"
                  ],
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "enableServiceLinks": {
                  "description": "Indicates whether information about services should be injected into Pod's environment variables.",
                  "type": [
                    "boolean",
                    "null"
                  ]
                },
                "hostAliases": {
                  "description": "The pod's HostAliases. HostAliases is an optional list of hosts and IPs that will be injected into the Pod's hosts file if specified.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "hostnames": {
                        "items": {
                          "type": "string"
                        },
                        "type": [
                          "array",
                          "null"
                        ]
                      },
                      "ip": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "hostUsers": {
                  "description": "Use the host user namespace. Optional. Defaults to `true`. When `true` or not set, the pod runs in the host user namespace. This is required when the pod needs features available only in the host namespace, such as loading kernel modules with `CAP_SYS_MODULE`.When set to `false`, the pod runs in a new user namespace. Setting `false` helps mitigate container breakout vulnerabilities and allows containers to run as `root` without granting `root` privileges on the host. This property is alpha-level in Kubernetes and is supported only by Kubernetes clusters that enable the `UserNamespacesSupport` feature.",
                  "type": [
                    "boolean",
                    "null"
                  ]
                },
                "imagePullSecrets": {
                  "description": "List of references to secrets in the same namespace to use for pulling any of the images used by this Pod. When the `STRIMZI_IMAGE_PULL_SECRETS` environment variable in Cluster Operator and the `imagePullSecrets` option are specified, only the `imagePullSecrets` variable is used and the `STRIMZI_IMAGE_PULL_SECRETS` variable is ignored.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "name": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata applied to the resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "priorityClassName": {
                  "description": "The name of the priority class used to assign priority to the pods. ",
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "schedulerName": {
                  "description": "The name of the scheduler used to dispatch this `Pod`. If not specified, the default scheduler will be used.",
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "securityContext": {
                  "additionalProperties": false,
                  "description": "Configures pod-level security attributes and common container settings.",
                  "properties": {
                    "appArmorProfile": {
                      "additionalProperties": false,
                      "properties": {
                        "localhostProfile": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "fsGroup": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "fsGroupChangePolicy": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "runAsGroup": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "runAsNonRoot": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "runAsUser": {
                      "type": [
                        "integer",
                        "null"
                      ]
                    },
                    "seLinuxChangePolicy": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "seLinuxOptions": {
                      "additionalProperties": false,
                      "properties": {
                        "level": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "role": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "user": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "seccompProfile": {
                      "additionalProperties": false,
                      "properties": {
                        "localhostProfile": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "supplementalGroups": {
                      "items": {
                        "type": "integer"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "supplementalGroupsPolicy": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "sysctls": {
                      "items": {
                        "additionalProperties": false,
                        "properties": {
                          "name": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "value": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        },
                        "type": "object"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "windowsOptions": {
                      "additionalProperties": false,
                      "properties": {
                        "gmsaCredentialSpec": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "gmsaCredentialSpecName": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "hostProcess": {
                          "type": [
                            "boolean",
                            "null"
                          ]
                        },
                        "runAsUserName": {
                          "type": [
                            "string",
                            "null"
                          ]
                        }
                      },
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "terminationGracePeriodSeconds": {
                  "description": "The grace period is the duration in seconds after the processes running in the pod are sent a termination signal, and the time when the processes are forcibly halted with a kill signal. Set this value to longer than the expected cleanup time for your process. Value must be a non-negative integer. A zero value indicates delete immediately. You might need to increase the grace period for very large Kafka clusters, so that the Kafka brokers have enough time to transfer their work to another broker before they are terminated. Defaults to 30 seconds.",
                  "minimum": 0,
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "tmpDirSizeLimit": {
                  "description": "Defines the total amount of pod memory allocated for the temporary `EmptyDir` volume `/tmp`. Specify the allocation in memory units, for example, `100Mi` for 100 mebibytes. Default value is `5Mi`. The `/tmp` volume is backed by pod memory, not disk storage, so avoid setting a high value as it consumes pod memory resources.",
                  "pattern": "^([0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$",
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "tolerations": {
                  "description": "The pod's tolerations.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "effect": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "key": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "operator": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "tolerationSeconds": {
                        "type": [
                          "integer",
                          "null"
                        ]
                      },
                      "value": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "topologySpreadConstraints": {
                  "description": "The pod's topology spread constraints.",
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "labelSelector": {
                        "additionalProperties": false,
                        "properties": {
                          "matchExpressions": {
                            "items": {
                              "additionalProperties": false,
                              "properties": {
                                "key": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "operator": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "values": {
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": [
                                    "array",
                                    "null"
                                  ]
                                }
                              },
                              "type": "object"
                            },
                            "type": [
                              "array",
                              "null"
                            ]
                          },
                          "matchLabels": {
                            "additionalProperties": {
                              "type": "string"
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "matchLabelKeys": {
                        "items": {
                          "type": "string"
                        },
                        "type": [
                          "array",
                          "null"
                        ]
                      },
                      "maxSkew": {
                        "type": [
                          "integer",
                          "null"
                        ]
                      },
                      "minDomains": {
                        "type": [
                          "integer",
                          "null"
                        ]
                      },
                      "nodeAffinityPolicy": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "nodeTaintsPolicy": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "topologyKey": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "whenUnsatisfiable": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                },
                "volumes": {
                  "description": "Additional volumes that can be mounted to the pod.",
                  "items": {
                    "additionalProperties": false,
                    "oneOf": [
                      {
                        "properties": {
                          "configMap": {},
                          "csi": {},
                          "emptyDir": {},
                          "image": {},
                          "persistentVolumeClaim": {},
                          "secret": {}
                        }
                      }
                    ],
                    "properties": {
                      "configMap": {
                        "additionalProperties": false,
                        "description": "`ConfigMap` to use to populate the volume.",
                        "properties": {
                          "defaultMode": {
                            "type": [
                              "integer",
                              "null"
                            ]
                          },
                          "items": {
                            "items": {
                              "additionalProperties": false,
                              "properties": {
                                "key": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "mode": {
                                  "type": [
                                    "integer",
                                    "null"
                                  ]
                                },
                                "path": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                }
                              },
                              "type": "object"
                            },
                            "type": [
                              "array",
                              "null"
                            ]
                          },
                          "name": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "optional": {
                            "type": [
                              "boolean",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "csi": {
                        "additionalProperties": false,
                        "description": "`CSIVolumeSource` object to use to populate the volume.",
                        "properties": {
                          "driver": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "fsType": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "nodePublishSecretRef": {
                            "additionalProperties": false,
                            "properties": {
                              "name": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          },
                          "readOnly": {
                            "type": [
                              "boolean",
                              "null"
                            ]
                          },
                          "volumeAttributes": {
                            "additionalProperties": {
                              "type": "string"
                            },
                            "type": [
                              "object",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "emptyDir": {
                        "additionalProperties": false,
                        "description": "`EmptyDir` to use to populate the volume.",
                        "properties": {
                          "medium": {
                            "description": "Medium represents the type of storage medium should back this volume. Valid values are unset or `Memory`. When not set, it will use the node's default medium.",
                            "enum": [
                              "Memory"
                            ],
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "sizeLimit": {
                            "description": "The total amount of local storage required for this EmptyDir volume (for example 1Gi).",
                            "pattern": "^([0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$",
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "image": {
                        "additionalProperties": false,
                        "description": "`ImageVolumeSource` object to use to populate the volume.",
                        "properties": {
                          "pullPolicy": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "reference": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "name": {
                        "description": "Name to use for the volume. Required.",
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "persistentVolumeClaim": {
                        "additionalProperties": false,
                        "description": "`PersistentVolumeClaim` object to use to populate the volume.",
                        "properties": {
                          "claimName": {
                            "type": [
                              "string",
                              "null"
                            ]
                          },
                          "readOnly": {
                            "type": [
                              "boolean",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      },
                      "secret": {
                        "additionalProperties": false,
                        "description": "`Secret` to use to populate the volume.",
                        "properties": {
                          "defaultMode": {
                            "type": [
                              "integer",
                              "null"
                            ]
                          },
                          "items": {
                            "items": {
                              "additionalProperties": false,
                              "properties": {
                                "key": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "mode": {
                                  "type": [
                                    "integer",
                                    "null"
                                  ]
                                },
                                "path": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                }
                              },
                              "type": "object"
                            },
                            "type": [
                              "array",
                              "null"
                            ]
                          },
                          "optional": {
                            "type": [
                              "boolean",
                              "null"
                            ]
                          },
                          "secretName": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        },
                        "type": [
                          "object",
                          "null"
                        ]
                      }
                    },
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "podDisruptionBudget": {
              "additionalProperties": false,
              "description": "Template for Kafka Connect `PodDisruptionBudget`.",
              "properties": {
                "maxUnavailable": {
                  "description": "Maximum number of unavailable pods to allow automatic Pod eviction. A Pod eviction is allowed when the `maxUnavailable` number of pods or fewer are unavailable after the eviction. Setting this value to 0 prevents all voluntary evictions, so the pods must be evicted manually. Defaults to 1.",
                  "minimum": 0,
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata to apply to the `PodDisruptionBudgetTemplate` resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "podSet": {
              "additionalProperties": false,
              "description": "Template for Kafka Connect `StrimziPodSet` resource.",
              "properties": {
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata applied to the resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            },
            "serviceAccount": {
              "additionalProperties": false,
              "description": "Template for the Kafka Connect service account.",
              "properties": {
                "metadata": {
                  "additionalProperties": false,
                  "description": "Metadata applied to the resource.",
                  "properties": {
                    "annotations": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Annotations added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels added to the Kubernetes resource.",
                      "type": [
                        "object",
                        "null"
                      ]
                    }
                  },
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "type": [
                "object",
                "null"
              ]
            }
          },
          "type": [
            "object",
            "null"
          ]
        },
        "tls": {
          "additionalProperties": false,
          "description": "TLS configuration.",
          "properties": {
            "trustedCertificates": {
              "description": "Trusted certificates for TLS connection.",
              "items": {
                "additionalProperties": false,
                "oneOf": [
                  {
                    "properties": {
                      "certificate": {}
                    },
                    "required": [
                      "certificate"
                    ]
                  },
                  {
                    "properties": {
                      "pattern": {}
                    },
                    "required": [
                      "pattern"
                    ]
                  }
                ],
                "properties": {
                  "certificate": {
                    "description": "The name of the file certificate in the secret.",
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "pattern": {
                    "description": "Pattern for the certificate files in the secret. Use the link:https://en.wikipedia.org/wiki/Glob_(programming)[_glob syntax_] for the pattern. All files in the secret that match the pattern are used.",
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "secretName": {
                    "description": "The name of the Secret containing the certificate.",
                    "type": "string"
                  }
                },
                "required": [
                  "secretName"
                ],
                "type": "object"
              },
              "type": [
                "array",
                "null"
              ]
            }
          },
          "type": [
            "object",
            "null"
          ]
        },
        "tracing": {
          "additionalProperties": false,
          "description": "The configuration of tracing in Kafka Connect.",
          "properties": {
            "type": {
              "description": "Type of the tracing used. Currently the only supported type is `opentelemetry` for OpenTelemetry tracing. As of Strimzi 0.37.0, `jaeger` type is not supported anymore and this option is ignored.",
              "enum": [
                "opentelemetry"
              ],
              "type": "string"
            }
          },
          "required": [
            "type"
          ],
          "type": [
            "object",
            "null"
          ]
        },
        "version": {
          "description": "The Kafka Connect version. Defaults to the latest version. Consult the user documentation to understand the process required to upgrade or downgrade the version.",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "replicas",
        "bootstrapServers",
        "groupId",
        "configStorageTopic",
        "statusStorageTopic",
        "offsetStorageTopic"
      ],
      "type": "object"
    },
    "status": {
      "additionalProperties": false,
      "description": "The status of the Kafka Connect cluster.",
      "properties": {
        "conditions": {
          "description": "List of status conditions.",
          "items": {
            "additionalProperties": false,
            "properties": {
              "lastTransitionTime": {
                "description": "Last time the condition of a type changed from one status to another. The required format is 'yyyy-MM-ddTHH:mm:ssZ', in the UTC time zone.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "message": {
                "description": "Human-readable message indicating details about the condition's last transition.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "reason": {
                "description": "The reason for the condition's last transition (a single word in CamelCase).",
                "type": [
                  "string",
                  "null"
                ]
              },
              "status": {
                "description": "The status of the condition, either True, False or Unknown.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "type": {
                "description": "The unique identifier of a condition, used to distinguish between other conditions in the resource.",
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "type": [
            "array",
            "null"
          ]
        },
        "connectorPlugins": {
          "description": "The list of connector plugins available in this Kafka Connect deployment.",
          "items": {
            "additionalProperties": false,
            "properties": {
              "class": {
                "description": "The class of the connector plugin.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "type": {
                "description": "The type of the connector plugin. The available types are `sink` and `source`.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "version": {
                "description": "The version of the connector plugin.",
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "type": [
            "array",
            "null"
          ]
        },
        "labelSelector": {
          "description": "Label selector for pods providing this resource.",
          "type": [
            "string",
            "null"
          ]
        },
        "observedGeneration": {
          "description": "The generation of the CRD that was last reconciled by the operator.",
          "type": [
            "integer",
            "null"
          ]
        },
        "replicas": {
          "description": "The current number of pods being used to provide this resource.",
          "type": [
            "integer",
            "null"
          ]
        },
        "url": {
          "description": "The URL of the REST API endpoint for managing and monitoring Kafka Connect connectors.",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "type": [
        "object",
        "null"
      ]
    }
  },
  "required": [
    "spec"
  ],
  "type": "object"
}