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 @codemaskinc/argo-composer
or, using yarn
:
$ yarn global add @codemaskinc/argo-composer
After successful installation, we can now proceed to initialize the argocd-resources
repository by calling the following command:
$ argo-composer init-project
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 remove-project
To add a another argocd application
to a existing project, use:
$ argo-composer add-app
To remove application, use:
$ argo-composer remove-app
To copy application, use:
$ argo-composer copy-app
[!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 🙏!