Skip to content
# See https://github.com/helm/chart-testing-action
name: Lint and Test Charts
on: [pull_request, workflow_dispatch]
jobs:
lint-test:
runs-on: ubuntu-latest
strategy:
matrix:
k8s: ["1.19.16", "1.21.14", "1.22.9", "1.23.12", "1.24.7", "1.25.2"]
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Install Helm
uses: azure/[email protected]
# as of 2022/12 the set-output still not fixed in this action
# https://github.com/Azure/setup-helm/issues/103
with:
version: v3.7.0
- uses: actions/setup-python@v2
with:
python-version: '3.8'
- name: Install chart-testing
uses: helm/[email protected]
- name: Run chart-testing (list-changed)
id: list-changed
run: |
changed=$(ct list-changed --config ct.yaml)
if [[ -n "$changed" ]]; then
echo "CHART_CHANGED=true" >> $GITHUB_ENV
fi
- name: Run chart-testing (lint)
run: ct lint --config ct.yaml
- name: Create kind cluster
uses: helm/[email protected]
with:
node_image: kindest/node:v${{ matrix.k8s }}
kubectl_version: v${{ matrix.k8s }}
if: ${{ env.CHART_CHANGED == 'true' }}
# See https://github.com/helm/chart-testing/blob/main/doc/ct_install.md
- name: Run chart-testing (install)
run: ct install --config ct.yaml --debug