rancher-partner-charts/charts/confluent/confluent-for-kubernetes/crds/platform.confluent.io_schem...

475 lines
20 KiB
YAML

---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.9.2
creationTimestamp: null
name: schemas.platform.confluent.io
spec:
group: platform.confluent.io
names:
categories:
- all
- confluent-platform
- confluent
kind: Schema
listKind: SchemaList
plural: schemas
shortNames:
- schema
singular: schema
scope: Namespaced
versions:
- additionalPrinterColumns:
- jsonPath: .status.format
name: Format
type: string
- jsonPath: .status.id
name: ID
type: string
- jsonPath: .status.version
name: Version
type: string
- jsonPath: .status.phase
name: Status
type: string
- jsonPath: .metadata.creationTimestamp
name: Age
type: date
- jsonPath: .status.schemaRegistryEndpoint
name: SchemaRegistryEndpoint
priority: 1
type: string
name: v1beta1
schema:
openAPIV3Schema:
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 Schema.
properties:
compatibilityLevel:
description: 'compatibilityLevel specifies the compatibility level
requirement for the schema under the specified subject. Valid options
are `BACKWARD`, `BACKWARD_TRANSITIVE`, `FORWARD`, `FORWARD_TRANSITIVE`,
`FULL`, `FULL_TRANSITIVE` and `NONE`. more info: https://docs.confluent.io/platform/current/schema-registry/avro.html#schema-evolution-and-compatibility'
enum:
- BACKWARD
- BACKWARD_TRANSITIVE
- FORWARD
- FORWARD_TRANSITIVE
- FULL
- FULL_TRANSITIVE
- NONE
type: string
data:
description: data defines the data required to create the schema.
properties:
configRef:
description: configRef is the name of the Kubernetes ConfigMap
resource containing the schema.
minLength: 1
type: string
format:
description: format is the format type of the encoded schema.
Valid options are `avro`, `json`, and `protobuf`.
enum:
- avro
- json
- protobuf
minLength: 1
type: string
required:
- configRef
- format
type: object
name:
description: name specifies the subject name of schema. If not configured,
the Schema CR name is used as the subject name.
maxLength: 255
minLength: 1
pattern: ^[^\\]*$
type: string
schemaReferences:
description: schemaReferences defines the schema references in the
schema data.
items:
description: SchemaReference is the schema to be used as a reference
for the new schema.
properties:
avro:
description: avro is the data for the referenced Avro schema.
properties:
avro:
description: name is the fully qualified name of the referenced
Avro schema.
minLength: 1
type: string
required:
- avro
type: object
format:
description: format is the format type of the referenced schema.
Valid options are `avro`, `json`, and `protobuf`.
enum:
- avro
- json
- protobuf
minLength: 1
type: string
json:
description: json is the data for the referenced JSON schema.
properties:
url:
description: url is the referenced JSON schema url.
minLength: 1
type: string
required:
- url
type: object
protobuf:
description: protobuf is the data for the referenced Protobuf
schema.
properties:
file:
description: file is the file name of the referenced Protobuf
schema.
minLength: 1
type: string
required:
- file
type: object
subject:
description: subject is the subject name for the referenced
schema through the configRef.
minLength: 1
type: string
version:
description: version is the version type of the referenced schema.
format: int32
type: integer
required:
- format
- subject
- version
type: object
type: array
schemaRegistryClusterRef:
description: schemaRegistryClusterRef references the CFK-managed Schema
Registry 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
schemaRegistryRest:
description: schemaRegistryRest specifies the Schema Registry 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
required:
- data
type: object
status:
description: status defines the observed state of the Schema.
properties:
appState:
default: Unknown
description: appState is the current state of the Schema application.
enum:
- Unknown
- Created
- Failed
- Deleted
type: string
compatibilityLevel:
description: compatibilityLevel specifies the compatibility level
of the schema under the subject.
type: string
conditions:
description: conditions are the latest available observed state of
the schema.
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
deletedVersions:
description: deletedVersions are the successfully hard deleted versions
for the subject.
items:
format: int32
type: integer
type: array
format:
description: format is the format of the latest schema for the subject.
type: string
id:
description: id is the id of the latest schema for the subject.
format: int32
type: integer
observedGeneration:
description: observedGeneration is the most recent generation observed
for this Confluent component.
format: int64
type: integer
schemaReferences:
description: schemaReferences are the schema references for the subject.
items:
description: SchemaReference is the schema to be used as a reference
for the new schema.
properties:
avro:
description: avro is the data for the referenced Avro schema.
properties:
avro:
description: name is the fully qualified name of the referenced
Avro schema.
minLength: 1
type: string
required:
- avro
type: object
format:
description: format is the format type of the referenced schema.
Valid options are `avro`, `json`, and `protobuf`.
enum:
- avro
- json
- protobuf
minLength: 1
type: string
json:
description: json is the data for the referenced JSON schema.
properties:
url:
description: url is the referenced JSON schema url.
minLength: 1
type: string
required:
- url
type: object
protobuf:
description: protobuf is the data for the referenced Protobuf
schema.
properties:
file:
description: file is the file name of the referenced Protobuf
schema.
minLength: 1
type: string
required:
- file
type: object
subject:
description: subject is the subject name for the referenced
schema through the configRef.
minLength: 1
type: string
version:
description: version is the version type of the referenced schema.
format: int32
type: integer
required:
- format
- subject
- version
type: object
type: array
schemaRegistryAuthenticationType:
description: schemaRegistryAuthenticationType is the authentication
method used.
type: string
schemaRegistryEndpoint:
description: schemaRegistryEndpoint is the Schema Registry REST endpoint.
type: string
schemaRegistryTLS:
description: schemaRegistryTLS shows whether the Schema Registry is
using TLS.
type: boolean
softDeletedVersions:
description: softDeletedVersions are the successfully soft deleted
versions for the subject.
items:
format: int32
type: integer
type: array
state:
description: state is the state of the Schema CR.
type: string
subject:
description: subject is the subject of the schema.
type: string
version:
description: version is the version of the latest schema for the subject.
format: int32
type: integer
type: object
required:
- spec
type: object
served: true
storage: true
subresources:
status: {}