Piped-Kubernetes/.taskfiles/charts.yaml

47 lines
1.5 KiB
YAML

---
version: "3"
vars:
CT_IMAGE: quay.io/helmpack/chart-testing:v3.6.0
REPO_CONFIG_FILE: .ci/repo-config.yaml
CT_CONFIG_FILE: .ci/ct/ct.yaml
CHARTS_EXCLUDED_FROM_LINT:
sh: yq eval '.excluded-charts-lint | join(",")' {{.REPO_CONFIG_FILE}}
CHARTS_EXCLUDED_FROM_INSTALL:
sh: yq eval '.excluded-charts-install | join(",")' {{.REPO_CONFIG_FILE}}
tasks:
lint:
desc: Run ct-lint on charts
cmds:
- docker run --rm -it --workdir=/data --volume $(pwd):/data {{.CT_IMAGE}} ct lint --config {{.CT_CONFIG_FILE}} --excluded-charts "{{.CHARTS_EXCLUDED_FROM_LINT}}"
silent: true
lint-all:
desc: Run ct-lint on all charts
cmds:
- docker run --rm -it --workdir=/data --volume $(pwd):/data {{.CT_IMAGE}} ct lint --config {{.CT_CONFIG_FILE}} --all --excluded-charts "{{.CHARTS_EXCLUDED_FROM_LINT}}"
silent: true
helm-docs:
desc: generate helm-docs
dir: "{{.GIT_ROOT}}/.github/scripts"
cmds:
- ./gen-helm-docs.sh "{{.CHART_TYPE}}" "{{.CHART}}"
deps:
- check-chart
check-chart:
cmds:
- test ! -z "{{.CHART_TYPE}}" || (echo "Please define CHART_TYPE parameter"; exit 1)
- test ! -z "{{.CHART}}" || (echo "Please define CHART parameter"; exit 1)
silent: true
dependency-cleanup:
desc: clean up chart dependencies
dir: "{{.PROJECT_DIR}}/charts"
cmds:
- find {{.PROJECT_DIR}}/charts/ -type f -name 'Chart.lock' -mindepth 1 -print0 | xargs -r -0 rm
- find {{.PROJECT_DIR}}/charts/ -type d -name 'charts' -mindepth 1 -print0 | xargs -r -0 rm -rf
silent: true