Lint and Test Charts #496
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Lint and Test Charts | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
paths: | |
- 'charts/**' | |
pull_request: | |
paths-ignore: | |
- '.github/**' | |
- 'README.md' | |
jobs: | |
lint-test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up Helm | |
uses: azure/setup-helm@v3 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: 3.7 | |
- name: Install Helm Docs | |
uses: action-stars/install-tool-from-github-release@9019d0a3125e2f45a48858afb632e6dbef663d79 # v0.2.2 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
owner: norwoodj | |
repository: helm-docs | |
arch_amd64: x86_64 | |
os_linux: Linux | |
check_command: helm-docs --version | |
version: latest | |
- name: Run Helm Docs check XXXXXXX | |
run: | | |
#!/usr/bin/env bash | |
set -euo pipefail | |
for chart in `find . -name 'Chart.yaml' -type f | xargs -I{} dirname {}`; do | |
printf "\n\n##### CHECKING $chart #####\n"; | |
cd $chart | |
helm-docs -t ../../_templates.gotmpl -t README.md.gotmpl -o README.md | |
cd - | |
if [[ -n "$(git status --porcelain --untracked-files=no)" ]] | |
then | |
echo "Documentation of $chart is not up to date. Please run helm-docs and commit changes!" >&2 | |
exit 1 | |
fi | |
done | |
- name: Set up chart-testing | |
uses: helm/chart-testing-action@v2.2.1 | |
- name: Run chart-testing (list-changed) | |
id: list-changed | |
run: | | |
changed=$(ct list-changed --target-branch ${{ github.event.repository.default_branch }}) | |
if [[ -n "$changed" ]]; then | |
# echo "::set-output name=changed::true" | |
echo name=changed::true" >> $GITHUB_OUTPUT | |
else | |
# echo "::set-output name=changed::false" | |
echo name=changed::false" >> $GITHUB_OUTPUT | |
fi | |
# you MUST increase the version of the chart, otherwise chart-releaser will fail | |
- name: Run chart-testing (lint) | |
run: | | |
#if [ "${{ steps.list-changed.outputs.changed }}" = true ]; then | |
# echo "checking changed charts only" | |
ct lint --debug --target-branch ${{ github.event.repository.default_branch }} | |
#else | |
# echo "checking ALL charts" | |
# ct lint --all --debug --target-branch ${{ github.event.repository.default_branch }} | |
#fi |