kubernetes
| Version | 2026.144.1443 |
| Repo | box/github.com/opencharly/layer-kubernetes:v2026.241.0654 |
Kubernetes client toolchain — kubectl, helm, and k3d — at stable /usr/bin paths The kubernetes candy installs the three core Kubernetes client tools uniformly across every distro: kubectl (the API client — from the distro package on arch/fedora, or the official dl.k8s.io release mirror as a fallback binary), helm (the chart package manager — from the distro package or the upstream get-helm-3 script), and k3d (the k3d-in-docker cluster manager, always a standalone release binary). Each one lands at a predictable /usr/bin path and answers a version query, so any box composing this candy can drive a cluster with no further setup. The scenarios and check block assert exactly that — they FAIL if any of the three binaries is missing or cannot report its version.
Acceptance plan
Section titled “Acceptance plan”This candy’s plan: — the runnable spec charly check executes against a live deployment. check: steps are idempotent probes; run: steps change state.
| Intent | Step |
|---|---|
run |
download=https://github.com/k3d-io/k3d/releases/download/${K3D_VERSION}/k3d-linux-${ARCH} |
run |
download the kubectl binary (the declarative download verb — content-addressed cache, atomic rename; ARCH is the auto-exported TARGETARCH amd64/arm64, which is the k8s release asset naming) |
run |
download and run the helm installer script (the declarative download verb, extract sh mode — content-addressed cache, atomic rename) |
run |
symlink helm onto PATH |
check |
the kubectl API client binary is installed at /usr/bin/kubectl |
check |
kubectl reports its client version and exits cleanly |
check |
the helm chart package manager binary is installed at /usr/bin/helm |
check |
helm reports its short version string and exits cleanly |
check |
the k3d cluster manager binary is installed at /usr/bin/k3d |
check |
k3d reports its release version and exits cleanly |
agent-check |
with a container runtime available, k3d can provision a local multi-node Kubernetes cluster for development and testing |
check |
command=/usr/bin/kubectl version –client |
check |
command=/usr/bin/k3d version |