Adds templating capacity and manage deployment to Kustomize apps.
Templating uses go template to allow you to generate kustomize apps with templates inside.
Armada allows you to git clone a packaged kustomize base and call it with the help of a config file.
For armada to works, you need to have a recent version of kubectl (>= 1.14) with kustomize integration as armada will make calls to the kubectl command line to build the yaml file using kubectl -k
option.
Create an armada.yaml file in each one of your kustomize infra folder where you have your overlays.
/app ├── redis │ ├── armada.yaml │ └── overlays │ └── apply │ └── kustomization.yaml └── Microservice ├── armada.yaml └── overlays └── apply └── kustomization.yaml
The armada file configuration should look like this.
---
package:
- deployment:
folder: "."
overlays: apply
Use armada to generate the app.yaml file.
armada -f armada.yaml
The generated file can be used directly to deploy to a kubernetes cluster using kubectl -f app.yaml
or stored on a git repo or any other storage like (S3,GCS...) to be stored and versionned.
Before filling a bug please take a look here: bugs.
Before making a merge request please take a look here: merge request
Please be polite and respectful when communicating, filling a bug, commenting or when updating the repo. In case of non respect of this simple rule the comment will be deleted.
See specific documentation for packages
See specific documentation for templates
- Write some test
-
Add overlays options (-o, default value and file option) -
Add auto apply option (-a) - Make a better documentation
- Allow default overlays generation with overlays value in file
- Allow package multiple deployment inside a single namespace (naming of each resources)
- Add installation option (brew...)
-
Add a sleep time if CRD creation for operator is a bit long (prometheus-operator) before creating new resources. - Add an stdout option?