Kue helps you manage your Kubernetes cluster configuration using CueLang.
-
timoni installed in your system.
Hopefully, this'll not be a requirement anymore in Kue
v2. -
A Git repository.
-
A Kubernetes cluster.
-
Run
kue initin themanifestsdirectory of your Git repository, to initialize a Kue project. -
The project's folder structure will look like so :
βββ manifests/ β βββ environments/ β β βββ production/ β β β βββ main.cue β βββ lib/ β β βββ argocd/ β β β βββ *.cue β β βββ kue.cue β βββ renderred/ β β βββ production/ β β β βββ applications/*.yaml -
Run
kue renderto render the Kubernetes manifests. -
Push the changes to remote origin.
-
kubectl applytherootArgoCD Application. -
Open ArgoCD UI and sync the
rootandargocdArgoCD Applications.
You can writeup a CI workflow, to automate renderring of the Kubernetes manifests, everytime you push changes in your Kue project.
-
Currently, you can only refer to resources in remote Git repositories. Support for specifying relative path to refer YAML document containing Kubernetes resources will be added soon.