Skip to content

Commit

Permalink
Add recursive linting
Browse files Browse the repository at this point in the history
  • Loading branch information
itamargiv committed Jun 14, 2021
1 parent 1fe9ddf commit 34545a1
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 3 deletions.
5 changes: 5 additions & 0 deletions action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ inputs:
required: false
description: 'The path to the Dockerfile to lint'
default: 'Dockerfile'
recursive:
required: false
description: 'Search for lint dockerfiles recuresivly'
default: 'false'
format:
required: false
description: |
Expand Down Expand Up @@ -39,6 +43,7 @@ runs:
env:
HADOLINT_CONFIG: ${{ inputs.config }}
HADOLINT_IGNORE: ${{ inputs.ignore }}
HADOLINT_RECURSIVE: ${{ inputs.recursive }}
branding:
icon: 'layers'
color: 'purple'
15 changes: 12 additions & 3 deletions hadolint.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash

# The problem-matcher definition must be present in the repository
# checkout (outside the Docker container running hadolint). We create
Expand Down Expand Up @@ -27,5 +27,14 @@ for i in $HADOLINT_IGNORE; do
HADOLINT_IGNORE_CMDLINE="${HADOLINT_IGNORE_CMDLINE} --ignore=${i}"
done

# shellcheck disable=SC2086
hadolint $HADOLINT_IGNORE_CMDLINE $HADOLINT_CONFIG "$@"
if [ "$HADOLINT_RECURSIVE" = "true" ]; then
shopt -s globstar

filename="${!#}"
flags="${@:1:$#-1}"

hadolint $HADOLINT_IGNORE_CMDLINE $HADOLINT_CONFIG $flags **/$filename
else
# shellcheck disable=SC2086
hadolint $HADOLINT_IGNORE_CMDLINE $HADOLINT_CONFIG "$@"
fi

0 comments on commit 34545a1

Please sign in to comment.