add helm-tooling template
close #2 (closed)
This MR introduces a Helm template linting feature. The main objective is to streamline and standardize the helm lint checking operations that are already present in sylva-core and sylva-capi-cluster. This approach will replace the Helm template in projects that utilize the helm lint jobs.
Initially, my approach was to repurpose helm linting bash/python scripts to accomplish the following tasks:
- helm-lint
- helm-yamllint
- helm-template-yamllint
- helm-schema-validation
The template executes the following actions under docker image sylva-projects/sylva-elements/container-images/helm-toolbox!2 (merged) :
- Dockerfile utilizes two common linting software: helm-lint and yamllint (MR link)
- Dockerfile adapts and reuses two Python codes from sylva-core and sylva-capi-cluster generate_json_schema.py and yaml2json.py
- Dockerfile adapts and reuses two Python codes from sylva-core and sylva-capi-cluster helm-schema-validation.sh and helm-template-yamllint.sh
Example of usage here:
MRs: sylva-projects/sylva-core!2184 (closed) and sylva-projects/sylva-elements/helm-charts/sylva-capi-cluster!344 (merged)
Pipeline: https://gitlab.com/sylva-projects/sylva-core/-/pipelines/1293604495 or https://gitlab.com/sylva-projects/sylva-elements/helm-charts/sylva-capi-cluster/-/pipelines/1293596241