Auto Generate helm-doc #38
Workflow file for this run
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: Test Helm Chart | |
on: | |
pull_request: | |
paths: | |
- '!*.md' | |
- 'deploy/charts/version-checker/**' | |
branches: | |
- 'main' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
lint: | |
permissions: | |
contents: read # for actions/checkout to fetch code | |
pull-requests: read # for golangci/golangci-lint-action to fetch pull requests | |
name: Lint Helm Chart | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 | |
- uses: azure/setup-helm@v3 | |
- run: helm lint deploy/charts/version-checker | |
docs: | |
name: Generate Helm Docs | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.event.pull_request.head.ref }} | |
- uses: dorny/paths-filter@v2 | |
id: filter | |
with: | |
filters: | | |
values: | |
- 'deploy/charts/version-checker/values.yaml' | |
- name: Install Helm Docs | |
if: steps.filter.outputs.values == 'true' | |
uses: envoy/[email protected] | |
with: | |
version: 1.11.0 | |
- name: Update Helm Docs | |
run: | | |
set -ex | |
cd deploy/charts/version-checker | |
helm-docs | |
- name: Commit Helm Docs | |
run: | | |
set -ex | |
git config --local user.email "github-actions[bot]@users.noreply.github.com" | |
git config --local user.name "github-actions[bot]" | |
git add deploy/charts/version-checker | |
git commit -m "[HELM] Update helm docs" | |
git push | |
# Only run if the values.yaml file has changed. | |
- name: Render helm docs inside the README.md and push changes back to PR branch | |
if: steps.filter.outputs.values == 'true' | |
uses: shaybentk/[email protected] | |
with: | |
working-dir: deploy/charts/version-checker | |
git-push: "true" | |
test: | |
name: Run unit tests for Helm Chart | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 | |
- uses: azure/setup-helm@v3 | |
with: | |
token: ${{ github.token }} | |
- name: Install helm Plugins | |
run: | | |
if [ ! -e "${HELM_PLUGINS}/helm-unittest" ]; then | |
helm plugin install https://github.com/helm-unittest/helm-unittest.git | |
fi | |
- name: Run Tests | |
run: | | |
if [ ! -e "deploy/charts/version-checker/tests" ]; then | |
echo "Not running tests, directory doesn't exist: deploy/charts/version-checker/tests" | |
exit 0 | |
fi | |
helm unittest deploy/charts/version-checker |