name: Helmfile lint run-name: Helmfile lint on: push: pull_request: branches: - 'main' jobs: helmfile-lint: runs-on: ubuntu-latest container: image: ghcr.io/helmfile/helmfile:v0.171.0 steps: - name: Checkout repository uses: actions/checkout@v4 - name: Helmfile lint shell: bash run: | set -e HELMFILE=src/helm/helmfile.yaml.gotmpl environments=$(awk 'BEGIN {in_env=0} /^environments:/ {in_env=1; next} /^---/ {in_env=0} in_env && /^ [^ ]/ {gsub(/^ /,""); gsub(/:.*$/,""); print}' "$HELMFILE") for env in $environments; do echo "################### $env lint ###################" helmfile -e $env lint -f $HELMFILE || exit 1 echo -e "\n" done