Nyl is a versatile tool for generating Kubernetes manifests from a simple YAML configuration, encouraging consistent and reusable deployment configurations, project layouts and operational workflows.
Requires Python 3.11 or newer.
$ uvx nyl
For some features, additional programs must be available:
- kubectl for most operations
- kyverno when using the Nyl
PostProcessor
resource - sops when using the SOPS secrets provider
You can install Nyl with Nix to ensure all dependencies are met.
Install the project with Uv.
$ uv sync
To lint, run
$ nix flake check
And to format code, run
$ nix fmt
To build or serve the documentation, run
$ nix run .#docs serve
$ nix run .#docs build
respectively.
- Discussion around ArgoCD supporting Helm lookups (maybe with Project-level service account?), see argoproj/argo-cd#5202 (comment)