Skip to content

Commit

Permalink
github: Run shellcheck in CI
Browse files Browse the repository at this point in the history
Automatically run the shell script linter `shellcheck` any time a
shell script changes.

Signed-off-by: Russell Bryant <[email protected]>
  • Loading branch information
russellb committed Aug 27, 2024
1 parent cee03e3 commit 67b78c2
Showing 1 changed file with 44 additions and 0 deletions.
44 changes: 44 additions & 0 deletions .github/workflows/shellcheck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Lint shell scripts
on:
push:
branches:
- "main"
paths:
- '**/*.sh'
- '.github/workflows/shellcheck.yml'
- '.github/workflows/actionlint.dockerfile'
pull_request:
branches:
- "main"
paths:
- '**/*.sh'
- '.github/workflows/shellcheck.yml'
- '.github/workflows/actionlint.dockerfile'

env:
LC_ALL: en_US.UTF-8

defaults:
run:
shell: bash

permissions:
contents: read

jobs:
shellcheck:
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
fetch-depth: 0

- name: "Download shellcheck"
run: |
docker build --tag actionlint - < .github/workflows/actionlint.dockerfile
- name: "Check shell scripts"
run: |
docker run --volume="${PWD}:/repo:z" --workdir=/repo --entrypoint /usr/bin/find actionlint \
/repo -type f -name "*.sh" -exec /usr/local/bin/shellcheck {} +

0 comments on commit 67b78c2

Please sign in to comment.