Replies: 5 comments
-
Has anyone written a ConfigManagementPlugin for cue ? |
Beta Was this translation helpful? Give feedback.
-
Some person did it 5 years ago https://github.com/zoetrope/argocd-cue |
Beta Was this translation helpful? Give feedback.
-
Recently at Profisea Labs, we faced the challenge of developing this functionality by ourselves. The first step we took was to familiarize ourselves with Cuelang through the following tutorial: This guide is incredibly helpful as it covers the entire process: transitioning your Kubernetes configurations to Cuelang and, crucially, introducing a dump tool capable of converting Cuelang configurations into YAML format. This will be essential for our integration with ArgoCD. Then we implemented ArgoCD Config Management Plugin according to the official docs: The process is straightforward - you simply need to adjust your ArgoCD Helm values as follows:
And:
Based on the last line, any Applications stored in folders with Cuelang files will automatically be managed by this plugin. To keep this explanation from getting too complex, I suggest starting with a basic Kubernetes tutorial. Try managing a simple Application using Cuelang and the ArgoCD CMP. After that, you'll be in a better position to consider how to structure your Applications. We do it in the next way:
Our project structure includes a template/ folder for holding templates of each Kubernetes resource type. We have a tools/ folder for keeping utilities, such as YAML exporter. Additionally, there's a fascinating settings/ folder dedicated to storing configurations specific to different environments, like image versions, environment types, and mappings of Kubernetes resources to ArgoCD Applications. This settings/ folder acts as a central hub for global configurations that affect all our microservices. Folders are organized into Cuelang packages based on their names, with the root package being named "microservices". |
Beta Was this translation helpful? Give feedback.
-
Wrote my version, here it is full version including which argocd is used
|
Beta Was this translation helpful? Give feedback.
-
Thus i present argocd-cue with release v0.4.0
|
Beta Was this translation helpful? Give feedback.
-
I noticed cuelang as a templating engine for kubernetes manifests is getting more traction.
Are there any plans on introducing it in argo cd as an option next to helm and kustomize?
Beta Was this translation helpful? Give feedback.
All reactions