Skip to main content

Crate crabka_operator

Crate crabka_operator 

Source
Expand description

Crabka Kubernetes operator library.

The binary entry point is src/main.rs; this library exposes the reusable pieces (controllers, CRD types, telemetry, leader election) so they can be unit-tested without spinning up the binary.

§Runtime config scope

use crabka_operator::config::OperatorConfig;

config.watch_namespaces = vec!["kafka-a".into(), "kafka-b".into()];
assert_eq!(config.watched().unwrap().len(), 2);

config.watch_namespaces.clear();
assert!(config.watched().is_none());

Modules§

config
context
controller
Controllers (reconcilers) for Crabka CRDs. Each kind lives in its own submodule and shares helpers via common (cluster-level rendering, SSA helpers, label / owner-ref builders, status derivation).
crd
CRD type definitions. Each kind lives in its own submodule and is the single source of truth for both the runtime types and the generated CRD YAML manifest (see gen_crds).
gen_crds
health
leader_election
rebalancer_client
Connect-RPC client for the standalone crabka-rebalancer service.
run
run subcommand entry point.
telemetry
version
Kafka version + metadata-version model for upgrade orchestration.