name: shellcheck
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
contents: read
jobs:
shellcheck:
name: shellcheck *.sh
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: install shellcheck
run: sudo apt-get update && sudo apt-get install -y shellcheck
- name: run shellcheck on all *.sh
run: |
mapfile -t files < <(find . -type f -name '*.sh' -not -path './.git/*')
printf 'checking %d file(s)\n' "${#files[@]}"
shellcheck --severity=warning --shell=bash "${files[@]}"