Deep dive to plan¶
Definitions¶
By default, plan is stored in .helmwave directory. This directory name is plandir.
Uniqname is the unique release name, which is used to identify the release. Uniqname is release-name@namespace@kube-context.
Structure¶
Explanation of what a plan is.
- planfile
- graph.md
- manifest/
- values/
- charts/
tree .helmwave
.helmwave
|____charts/
|____manifest
| |____api@ns@context.yml
| |____web@ns@context.yml
|____values
| |____api@ns@context
| | |____cb18185ed7a1e8d2f06fc029708867eb.yml
| |____web@ns@context
| | |____63610d2dfb7f7427e17b6f3f58937161.yml
|____charts
| |____api@ns@context
| | |____api-1.0.0.tgz
| |____web@ns@context
| | |____web-1.0.0.tgz
|____planfile
|____graph.md
planfile¶
Planfile is a main yaml document. It contains information about all your planned resources.
Planfile is a computed helmwave.yml file.
by default, planfile is stored in .helmwave/planfile
graph.md¶
graph.md is a markdown file. It contains visualisation for graph dependencies.
You can open this file with your favorite IDE and render image with mermaid.
manifest¶
Manifest is a directory where you can find all templated kubernetes resources.
by default is stored in .helmwave/manifest/<uniqname>.yml
You can do whatever you want with the manifests in this directory.
For example,
- You can apply that manifests directly like that:
kubectl apply -f .helmwave/manifest - You can lint manifests example
values¶
Values is a directory where you can find rendered values files of your releases.
To find the values for your releases you can use next pattern: .helmwave/values/<uniqname>/<hash>.yml
charts¶
Charts is a directory where helmwave can store downloaded charts for all your releases. It's not required but very useful when you want to use helmwave with DMZ cases.