--- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: kafkarestclasses.platform.confluent.io spec: group: platform.confluent.io names: categories: - all - confluent-platform - confluent kind: KafkaRestClass listKind: KafkaRestClassList plural: kafkarestclasses shortNames: - krc - kafkarestclass singular: kafkarestclass scope: Namespaced versions: - additionalPrinterColumns: - jsonPath: .metadata.creationTimestamp name: Age type: date name: v1beta1 schema: openAPIV3Schema: description: KafkaRestClass is the schema for the Kafka REST API. 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 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 metadata: type: object spec: description: spec defines the desired state of the KafkaRestClass. properties: kafkaClusterRef: description: kafkaClusterRef specifies the name of the Kafka cluster. properties: name: description: name specifies the name of the Confluent Platform component cluster. type: string namespace: description: namespace specifies the namespace where the Confluent Platform component cluster is running. type: string required: - name type: object kafkaRest: description: kafkaRest specifies the Kafka REST API configuration. properties: authentication: description: authentication specifies the REST API authentication mechanism. properties: basic: description: basic specifies the basic authentication settings for the REST API client. properties: debug: description: debug enables the basic authentication debug logs for JaaS configuration. type: boolean directoryPathInContainer: description: 'directoryPathInContainer allows to pass the basic credential through a directory path in the container. More info: https://docs.confluent.io/operator/current/co-authenticate.html#basic-authentication' minLength: 1 type: string restrictedRoles: description: restrictedRoles specify the restricted roles on the server side only. Changes will be only reflected in Control Center. This configuration is ignored on the client side configuration. items: type: string minItems: 1 type: array roles: description: roles specify the roles on the server side only. This configuration is ignored on the client side configuration. items: type: string type: array secretRef: description: 'secretRef defines secret reference to pass the required credentials. More info: https://docs.confluent.io/operator/current/co-authenticate.html#basic-authentication' maxLength: 30 minLength: 1 pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ type: string type: object bearer: description: bearer specifies the bearer authentication settings for the REST API client. properties: directoryPathInContainer: description: directoryPathInContainer specifies the directory path in the container where the credential is mounted. minLength: 1 type: string secretRef: description: 'secretRef specifies the name of the secret that contains the credential. More info: https://docs.confluent.io/operator/current/co-authenticate.html#bearer-authentication' maxLength: 30 minLength: 1 pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ type: string type: object type: description: type specifies the REST API authentication type. Valid options are `basic`, `bearer`, and `mtls`. enum: - basic - bearer - mtls type: string required: - type type: object endpoint: description: endpoint specifies where Confluent REST API is running. minLength: 1 pattern: ^https?://.* type: string kafkaClusterID: description: kafkaClusterID specifies the id of Kafka cluster. It takes precedence over using the Kafka REST API to get the cluster id. minLength: 1 type: string tls: description: tls specifies the custom TLS structure for the application resources, e.g. connector, topic, schema, of the Confluent Platform components. properties: directoryPathInContainer: description: directoryPathInContainer contains the directory path in the container where `keystore.jks`, `truststore.jks`, `jksPassword.txt` keys are mounted. minLength: 1 type: string jksPassword: description: jksPassword specifies the secret name that contains the JKS password. properties: secretRef: description: 'secretRef references the name of the secret containing the JKS password. More info: https://docs.confluent.io/operator/current/co-network-encryption.html#configure-user-provided-tls-certificates' maxLength: 30 minLength: 1 pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ type: string required: - secretRef type: object secretRef: description: 'secretRef specifies the secret name that contains the certificates. More info about certificates key/value format: https://docs.confluent.io/operator/current/co-network-encryption.html#configure-user-provided-tls-certificates' maxLength: 63 minLength: 1 pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ type: string type: object type: object secondaryKafkaClusterRef: description: secondaryKafkaClusterRef specifies the name of the secondary Kafka cluster when using centralized RBAC. properties: name: description: name specifies the name of the Confluent Platform component cluster. type: string namespace: description: namespace specifies the namespace where the Confluent Platform component cluster is running. type: string required: - name type: object secondaryKafkaRest: description: secondaryKafkaRest specifies the secondary Kafka REST API configuration when using centralized RBAC. properties: authentication: description: authentication specifies the REST API authentication mechanism. properties: basic: description: basic specifies the basic authentication settings for the REST API client. properties: debug: description: debug enables the basic authentication debug logs for JaaS configuration. type: boolean directoryPathInContainer: description: 'directoryPathInContainer allows to pass the basic credential through a directory path in the container. More info: https://docs.confluent.io/operator/current/co-authenticate.html#basic-authentication' minLength: 1 type: string restrictedRoles: description: restrictedRoles specify the restricted roles on the server side only. Changes will be only reflected in Control Center. This configuration is ignored on the client side configuration. items: type: string minItems: 1 type: array roles: description: roles specify the roles on the server side only. This configuration is ignored on the client side configuration. items: type: string type: array secretRef: description: 'secretRef defines secret reference to pass the required credentials. More info: https://docs.confluent.io/operator/current/co-authenticate.html#basic-authentication' maxLength: 30 minLength: 1 pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ type: string type: object bearer: description: bearer specifies the bearer authentication settings for the REST API client. properties: directoryPathInContainer: description: directoryPathInContainer specifies the directory path in the container where the credential is mounted. minLength: 1 type: string secretRef: description: 'secretRef specifies the name of the secret that contains the credential. More info: https://docs.confluent.io/operator/current/co-authenticate.html#bearer-authentication' maxLength: 30 minLength: 1 pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ type: string type: object type: description: type specifies the REST API authentication type. Valid options are `basic`, `bearer`, and `mtls`. enum: - basic - bearer - mtls type: string required: - type type: object endpoint: description: endpoint specifies where Confluent REST API is running. minLength: 1 pattern: ^https?://.* type: string kafkaClusterID: description: kafkaClusterID specifies the id of Kafka cluster. It takes precedence over using the Kafka REST API to get the cluster id. minLength: 1 type: string tls: description: tls specifies the custom TLS structure for the application resources, e.g. connector, topic, schema, of the Confluent Platform components. properties: directoryPathInContainer: description: directoryPathInContainer contains the directory path in the container where `keystore.jks`, `truststore.jks`, `jksPassword.txt` keys are mounted. minLength: 1 type: string jksPassword: description: jksPassword specifies the secret name that contains the JKS password. properties: secretRef: description: 'secretRef references the name of the secret containing the JKS password. More info: https://docs.confluent.io/operator/current/co-network-encryption.html#configure-user-provided-tls-certificates' maxLength: 30 minLength: 1 pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ type: string required: - secretRef type: object secretRef: description: 'secretRef specifies the secret name that contains the certificates. More info about certificates key/value format: https://docs.confluent.io/operator/current/co-network-encryption.html#configure-user-provided-tls-certificates' maxLength: 63 minLength: 1 pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ type: string type: object type: object type: object status: description: status defines the observed state of the KafkaRestClass. properties: conditions: description: conditions are the latest available observed state of the kafkaRestClass. items: description: Condition represent the latest available observations of the current state. properties: lastProbeTime: description: lastProbeTime shows the last time the condition was evaluated. format: date-time type: string lastTransitionTime: description: lastTransitionTime shows the last time the condition was transitioned from one status to another. format: date-time type: string message: description: message shows a human-readable message with details about the transition. type: string reason: description: reason shows the reason for the last transition of the condition. type: string status: description: status shows the status of the condition, one of `True`, `False`, or `Unknown`. type: string type: description: type shows the condition type. type: string type: object type: array endpoint: description: endpoint specifies the Kafka REST API / MDS endpoint. type: string kafkaClusterID: description: kafkaClusterID specifies the id of the Kafka cluster. If using centralized RBAC and kafkaRestClass is for the secondary Kafka cluster, it will be the cluster id of the secondary Kafka cluster. type: string observedGeneration: description: observedGeneration is the most recent generation observed for this Confluent component. format: int64 type: integer type: object required: - spec type: object served: true storage: true subresources: status: {}