This template is used to create wrapper charts to deploy system applications via ArgoCD
Documentation of the chart can be found in here
- README.MD Title and description
- README.MD Author
-
Taskfile.yml
line 12RELEASE_NAME
for local testing -
chart/Chart.tpl.yaml
'sname
,description
,appVersion
and if needed, adddependency
- Update
chart/Chart.yaml
'sversion
to1.0.0
-
chart/values.tpl.yaml
andchart/linter_values.yaml
for the new values you want to use -
chart/templates/_helper.tpl
change all functions to your newchart/Chart.yaml
name
field - Remove
chart/templates/deployment.yaml
- Update
chart/templates/NOTES.txt
for post-installation notes
All dependencies are pre-install via nix
and activated via direnv
Setup the repository
pls setup
The task runner has convenience commands for development and testing
Action | Command |
---|---|
Setup the repository | pls setup |
Start playground cluster to test helm chart | pls start:cluster |
Stop playground cluster | pls stop:cluster |
Install charts | pls install |
Uninstall charts | pls remove |
Install chart dependency | pls deps |
Update chart dependency | pls update |
Debug chart | pls debug |
Publish chart | pls publish <version> |
Action | Command |
---|---|
Running all checks | pls check |
Running formatters | pls fmt |
Running linters | pls lint |
Running enforcers | pls enforce |
This template comes with in-built tools to debug CI. CI Checks include:
- Pre Commit
To enter an isolated CI-like environment to play around or test, run:
pls ci:isolate
If you require to enter the nix-shell
under the ci
attribute, you can run:
pls ci:isolate:nix-shell
There are 3 methods to execute existing CI pipelines:
- Local Execution - Execute the CI with your computer locally
- Emulated Environment - Create a high-parity emulated and isolated environment to execute the CI
- Emulated Debug - Like emulated, but drops you into the environment after the CI finishes for your to debug and explore
CI | Local Execution | Emulated Environment | Emulated Debug |
---|---|---|---|
Pre-commit | pls ci:precommit |
pls ci:emulate:precommit |
pls ci:emulate:precommit:debug |