This project is tested against the following tool and platform versions.
Note These are tested versions, not strict minimums. Older or newer versions may work, but are not guaranteed.
- e5s: 0.1.0
- Go: go1.25.3
- go-spiffe SDK: v2.6.0
- Helm: v3.18.6
- minikube (for local dev): v1.37.0
- kubectl: Client Version: v1.33.4
- SPIRE Helm Chart: v0.27.0 (from spiffe/helm-charts-hardened)
- SPIRE Server: v1.13.0 (via Helm chart)
- SPIRE Agent: v1.13.0 (via Helm chart)
- Docker: v28.5.2
- kind: v0.23.0
- golangci-lint: v1.64.8
- govulncheck: installed
- gosec: dev version
- gitleaks: dev version
-
Before cutting a release, run:
make env-versions
-
Review the generated file in
artifacts/env-versions-*.txt -
Update this file and the
CHANGELOG.mdsection for the release
The project requires Go 1.25.3 or higher. This is enforced in go.mod and verified in CI.
The project is tested with Kubernetes 1.28+. The SPIRE CSI driver requires specific Kubernetes versions.
SPIRE 1.13 is required for:
- Improved CSI driver support
- Automatic workload registration
- Enhanced security features
Older versions may work but are not tested.
- minikube is used for local development and testing
- Production deployments should use managed Kubernetes (GKE, EKS, AKS) or self-hosted clusters
- The library works identically on both, but SPIRE setup differs slightly
Use the e5s CLI to verify your environment:
Check runtime versions
e5s versionCheck development requirements
e5s version --mode devCheck production requirements
e5s version --mode prodDetailed version information
e5s version --verboseOr use the Makefile:
Capture current environment versions
make env-versionsRun all release checks (includes version verification)
make release-check