Skip to content

Prerequisites

Before bootstrapping a cluster, ensure the following tools are installed.

Required Tools

Tool Purpose Installation
kubectl Kubernetes CLI Install kubectl
helm Helm package manager Install Helm
sops Encrypted secrets management Install SOPS
age Encryption tool (used by SOPS) Install age
go To install/build the CLI tool Install Go (1.25+)

Development Tools (optional)

Only needed if building from source or contributing:

Tool Purpose Installation
task Task runner for development Install Task
pre-commit Git hooks for code quality Install pre-commit

Cluster Access

You need a running Kubernetes cluster with kubectl configured to access it. Any conformant cluster works — local (kind, minikube, k3s) or cloud-managed (EKS, GKE, AKS).

Verify access:

kubectl cluster-info
kubectl get nodes

SSH Key

An SSH key pair with read access to the Git repository is required. ArgoCD uses this key to pull manifests from the repo.

ssh-keygen -t ed25519 -f repo-ssh-key.pem -N ""

Add the public key (repo-ssh-key.pem.pub) as a deploy key in your repository settings.

Age Key

An age key pair is used by SOPS to encrypt environment-specific secrets.

age-keygen -o age-key.txt

The public key (printed to stdout) is configured in .sops.yaml. Keep age-key.txt safe — it is required for decrypting secrets during bootstrap.

MkDocs (optional)

To preview this documentation site locally:

pip install mkdocs-material
mkdocs serve