An configurable, templated and structured interactive command-line interface for initializing, creating and maintaining your ArgoCD resources repository.
- Apps-of-Apps pattern out-of-the-box
- Set of ready-to-use templates for Applications
- Easy to use interractive commands for creating, copying and removing Argo Application manifests
using npm
:
$ npm install -g @codemask-labs/argo-composer
or, using yarn
:
$ yarn global add @codemask-labs/argo-composer
After successful installation, we can now proceed to initialize the argocd-resources
repository by calling the following command:
$ argo-composer i
$ argo-composer init
The argo composer will take you through the interractive process of asking few questions on how you want your project to look like.
[!TIP] The
name of the project
is simply a directory name where theargo composer
will initialize to. Also, leaving this option empty will initialize the project in thecurrent working directory
.
[!TIP] The GitHub repository is then saved in root configuration, to be used as a default value when creating your Application.
[!TIP] The current default environment configuration is
dev
andprod
, used for creating your Application overlays. Choose the environment to your project needs, for example it could be:integration
,staging
,production
.
[!TIP] Select needed components (aka addons) to your project - by default it is
infra
- creating an example applications for each selected component and installs via Helm.
[!TIP] Configurable to your liking, choose a project name for example
common
(by defaultinfra
).
To begin working with argo-composer
command line, we recommend to use a help command first, by calling:
$ argo-composer --help
To add a another argocd project
, use:
$ argo-composer add project
To remove project, use:
$ argo-composer rm project
$ argo-composer remove project
To add a another argocd application
to a existing project, use:
$ argo-composer add app
$ argo-composer add application
To remove application, use:
$ argo-composer rm app
$ argo-composer rm application
$ argo-composer remove app
$ argo-composer remove application
[!IMPORTANT] We are currently in development of project Argo Composer. If you are made this far - yay! - and maybe would like to contribute to this project? Then you are more than welcome to visit the provided link to a guide below 🙏!