KafkaTopic

API group/version: crabka.io/v1alpha1

Spec

FieldTypeRequiredDefaultDescription
configobjectnoOpaque topic-level config, such as retention.ms and cleanup.policy. The operator reconciles it with an IncrementalAlterConfigs SET and DELETE diff against the cluster's current dynamic-topic overrides.
partitionsintegeryesNumber of partitions. The operator applies increases through CreatePartitions. The operator rejects decreases with ImmutableFieldChanged.
preserveTopicbooleannofalseWhen true, a CRD delete still removes the finalizer but skips the DeleteTopics call, so the Kafka topic survives. Default: false.
replicasintegeryesReplication factor. The operator rejects changes with ImmutableFieldChanged until partition reassignment lands.
topicNamestringnoOptional override for the Kafka topic name. Defaults to metadata.name. The operator validates it at reconcile time against Kafka's rules: length ≤ 249, characters [A-Za-z0-9._-], and not . or ...

Status

FieldTypeRequiredDefaultDescription
conditionsarrayno[]Standard Kubernetes-style condition list. It shows Ready.
observedGenerationintegernometadata.generation of the last successfully-reconciled spec. That is the last time the operator wrote Ready=True reason=Ready.
topicIdstringnoCluster-assigned topic UUID. The operator fills it in once the topic exists.
topicNamestringnoEffective topic name. The operator supplies a default if spec.topicName is unset.