Thank you for your interest in contributing! Please review the organization-wide contributing guidelines first.
- Rust 1.75+ (
rustup update stable) - Docker (for integration tests)
- kubectl + a Kubernetes cluster (for e2e tests, kind recommended)
cargo build
cargo test
cargo fmt --all -- --check
cargo clippy --all-targets -- -D warnings# With a local kubeconfig
cargo run -- --kubeconfig ~/.kube/config
# Against a kind cluster
kind create cluster
cargo runCRDs are defined in src/crd/. After modifying CRD structs:
- Regenerate CRD manifests (if applicable)
- Update tests
- Test against a real cluster with
kubectl apply
src/crd/— Custom Resource Definitions (StreamlineCluster, StreamlineTopic, StreamlineUser)src/controllers/— Reconciliation logic for each CRDsrc/error.rs— Error types
By contributing, you agree that your contributions will be licensed under the Apache-2.0 License.