Use helm-docs to automatically generate Helm docs #5585
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: Lint | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- "*" | |
defaults: | |
run: | |
shell: bash | |
concurrency: | |
group: ${{ github.ref_name }}-lint | |
cancel-in-progress: true | |
permissions: | |
contents: read | |
jobs: | |
lint: | |
name: Lint | |
runs-on: ubuntu-22.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
directory: [., tests] # we need to run golangci-lint for every module https://github.com/golangci/golangci-lint/issues/828 | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 | |
- name: Setup Golang Environment | |
uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7 # v5.0.1 | |
with: | |
go-version: stable | |
- name: Lint Code | |
uses: golangci/golangci-lint-action@a4f60bb28d35aeee14e6880718e0c85ff1882e64 # v6.0.1 | |
with: | |
args: --timeout 10m0s | |
working-directory: ${{ matrix.directory }} | |
njs-lint: | |
name: NJS Lint | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 | |
- name: Get Prettier version | |
id: prettier-version | |
run: | | |
echo "version=$(jq -r .devDependencies.prettier ${{ github.workspace }}/internal/mode/static/nginx/modules/package.json)" >> $GITHUB_OUTPUT | |
- name: Setup Node.js Environment | |
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 | |
with: | |
node-version-file: .nvmrc | |
- name: Run Prettier on NJS code | |
id: prettier-run | |
uses: rutajdash/prettier-cli-action@d42c4325a3b344f3bd4be482bc34de521998d557 # v1.0.2 | |
with: | |
config_path: ${{ github.workspace }}/internal/mode/static/nginx/modules/.prettierrc | |
file_pattern: ${{ github.workspace }}/internal/mode/static/nginx/modules/**/*.js | |
prettier_version: ${{ steps.prettier-version.outputs.version }} | |
- name: Prettier Output | |
if: failure() | |
shell: bash | |
run: | | |
echo "The following files are not formatted:" | |
echo "${{steps.prettier-run.outputs.prettier_output}}" | |
echo "Run \"make njs-fmt\" locally to format the code" | |
actionlint: | |
name: Actionlint | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 | |
- uses: reviewdog/action-actionlint@fd627997c9688c2f39e13917aed23873c031b834 # v1.48.0 | |
with: | |
actionlint_flags: -shellcheck "" | |
markdown-lint: | |
name: Markdown Lint | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 | |
- uses: DavidAnson/markdownlint-cli2-action@b4c9feab76d8025d1e83c653fa3990936df0e6c8 # v16.0.0 | |
with: | |
config: ${{ github.workspace }}/.markdownlint-cli2.yaml | |
globs: "**/*.md" | |
chart-lint: | |
name: Chart Lint | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 | |
with: | |
fetch-depth: 0 | |
- name: Set up Python | |
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0 | |
with: | |
python-version: "3.x" | |
check-latest: true | |
- name: Set up chart-testing | |
uses: helm/chart-testing-action@e6669bcd63d7cb57cb4380c33043eebe5d111992 # v2.6.1 | |
- name: Run chart-testing | |
run: ct lint --print-config --config .ct.yaml | |
yaml-lint: | |
name: Yaml Lint | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 | |
- name: Install yamllint | |
run: pip install yamllint | |
- name: Lint YAML files | |
run: yamllint . |