Add an option to check all executable scripts #169
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: "ignore_paths" | |
on: | |
push: | |
branches: | |
- "master" | |
pull_request: | |
branches: | |
- "master" | |
permissions: {} | |
jobs: | |
ignore_paths: | |
name: ignore_paths | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- ubuntu-latest | |
- macos-latest | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
- name: Run ShellCheck | |
uses: ./ | |
id: check | |
with: | |
ignore_paths: ignore ./testfiles/ignore_some/duplicate_name.bash **/ignore_some/ignore.bash | |
- name: Verify check | |
run: | | |
fail=false | |
# verify a non-ignored path is not excluded | |
expect="testfiles/test.bash" | |
if [[ ! "${{ steps.check.outputs.files }}" =~ $expect ]];then | |
echo "::error:: Expected file $expect not found in ${{ steps.check.outputs.files }}" | |
fail=true | |
fi | |
# verify a file with the same name as an ignored file but at a | |
# different path is not excluded | |
expect="testfiles/duplicate_name.bash" | |
if [[ ! "${{ steps.check.outputs.files }}" =~ $expect ]];then | |
echo "::error:: Expected file $expect not found in ${{ steps.check.outputs.files }}" | |
fail=true | |
fi | |
# verify ignored full path excluded | |
notexpect="testfiles/ignore_some/duplicate_name.bash" | |
if [[ "${{ steps.check.outputs.files }}" =~ $notexpect ]];then | |
echo "::error:: Unexpected file $notexpect found in ${{ steps.check.outputs.files }}" | |
fail=true | |
fi | |
# verify ignored directory excluded | |
notexpect="testfiles/ignore/ignore.bash" | |
if [[ "${{ steps.check.outputs.files }}" =~ $notexpect ]];then | |
echo "::error:: Unexpected file $notexpect found in ${{ steps.check.outputs.files }}" | |
fail=true | |
fi | |
# verify ignored glob excluded | |
notexpect="testfiles/ignore_some/ignore.bash" | |
if [[ "${{ steps.check.outputs.files }}" =~ $notexpect ]];then | |
echo "::error:: Unexpected file $notexpect found in ${{ steps.check.outputs.files }}" | |
fail=true | |
fi | |
if $fail;then | |
exit 1 | |
fi |