# README
controller-runtime-envtest-k3s
A drop in replacement for https://sigs.k8s.io/controller-runtime/pkg/envtest using https://k3s.io
Why?
sigs.k8s.io/controller-runtime/pkg/envtest
uses process execution under the hood to run clusters. This uses containers to wrap those processes!- Lesss CPU and Memory overhead
- Provides a full Kubernetes environment for full end-to-end tests (eg. Nodes provided)
- Easier to debug fails eg. Get a session on the clusters container
Usage
The following example is taking an autogenerated test suite from the Kubebuilder project and converting it to use K3s as it's test Kubernetes cluster.
Can you spot the difference? :)
Before | After |
---|---|
![]() | ![]() |
Thankyou
This project is standing on the shoulders of giants.
# Constants
BindAddress assigned to the K3s cluster.
DefaultImage which will be used if non is provided.
InsecurePort assigned to the K3s cluster.
# Structs
Environment which will back the Kubebuilder testsuite.