This is the Kubernetes operator of Kairos, for day-2 operations of Kairos clusters. It provides custom resources for running operations on nodes, upgrading Kairos, and building OS artifacts.
For user documentation (installation, usage, examples), see the Kairos Operator docs.
This project is managed with kubebuilder.
There are multiple test suites in this project:
Unit tests (using envtest):
make testController tests (OSArtifact tests requiring a real cluster):
make controller-testsThis will set up a kind cluster, deploy the operator, and run OSArtifact controller tests.
End-to-end tests:
make test-e2eOr using ginkgo directly:
ginkgo test/e2eAll controller tests (including NodeOp, NodeOpUpgrade, and OSArtifact):
ginkgo internal/controllerNote: OSArtifact controller tests require USE_EXISTING_CLUSTER=true and will be skipped in the unit test suite. Use make controller-tests to run them: it sets up a Kind cluster and installs CRDs but does not deploy the operator, so the test (using a direct client) is the only actor.
TODO