From e5541c42a549b50814b71f2011bd4dc5d385c016 Mon Sep 17 00:00:00 2001 From: Michele Locati Date: Fri, 20 Dec 2019 18:44:45 +0100 Subject: [PATCH] Simplify linting --- .travis.yml | 2 +- scripts/invoke-shfmt | 28 ++++++++++++++++++++++++++++ scripts/lint | 19 +++++-------------- scripts/lint.bat | 14 ++------------ 4 files changed, 36 insertions(+), 27 deletions(-) create mode 100755 scripts/invoke-shfmt diff --git a/.travis.yml b/.travis.yml index afa3cde..5545520 100644 --- a/.travis.yml +++ b/.travis.yml @@ -24,7 +24,7 @@ jobs: language: go go: '1.13' before_script: GO111MODULE=on go install mvdan.cc/sh/v3/cmd/shfmt - script: shfmt -d -s -ln posix -i 0 -ci -kp install-php-extensions scripts/common scripts/lint scripts/travisci-test-extensions scripts/travisci-update-readme scripts/update-readme + script: ./scripts/invoke-shfmt check - <<: *test-extensions-job-template name: Test extensions on Alpine 3.7 diff --git a/scripts/invoke-shfmt b/scripts/invoke-shfmt new file mode 100755 index 0000000..801c6f6 --- /dev/null +++ b/scripts/invoke-shfmt @@ -0,0 +1,28 @@ +#!/bin/sh + +set -o errexit +set -o nounset + +PARAMS='-s -ln posix -i 0 -ci -kp' + +case "${1:-}" in + check) + PARAMS="$PARAMS -d" + ;; + fix) + PARAMS="$PARAMS -w" + ;; + *) + fprintf 'Syntax: %s ' "$0" >&2 + exit 1 + ;; +esac + +shfmt $PARAMS \ + install-php-extensions \ + scripts/common \ + scripts/invoke-shfmt \ + scripts/lint \ + scripts/travisci-test-extensions \ + scripts/travisci-update-readme \ + scripts/update-readme diff --git a/scripts/lint b/scripts/lint index 3499919..7e6f7c8 100755 --- a/scripts/lint +++ b/scripts/lint @@ -8,23 +8,14 @@ if ! docker --version >/dev/null 2>/dev/null; then exit 1 fi -#SRC_DIR="$(CDPATH= cd -- "$(dirname -- "$0")" && cd .. pwd)" +SRC_DIR="$(CDPATH= cd -- "$(dirname -- "$0")" && cd .. pwd)" if ! docker build -t docker-php-extension-installer-shfmt:latest -f scripts/Dockerfile-shfmt -q .; then printf 'ERROR!' >&2 exit 1 fi -fix() { - printf 'Fixing %s... ' "$1" - if docker run --rm -v "$SRC_DIR:/src" -w /src docker-php-extension-installer-shfmt:latest shfmt -s -ln posix -i 0 -ci -kp -w "$1"; then - printf 'done.\n' - fi -} - -fix install-php-extensions -fix scripts/common -fix scripts/lint -fix scripts/travisci-test-extensions -fix scripts/travisci-update-readme -fix scripts/update-readme +if ! docker run --rm -v "$SRC_DIR:/src" -w /src docker-php-extension-installer-shfmt:latest ./scripts/invoke-shfmt fix; then + printf 'ERROR!' >&2 + exit 1 +fi diff --git a/scripts/lint.bat b/scripts/lint.bat index 19d9e55..d5fba17 100644 --- a/scripts/lint.bat +++ b/scripts/lint.bat @@ -11,12 +11,8 @@ set SRC_DIR=%CD% docker build -t docker-php-extension-installer-shfmt:latest -f scripts\Dockerfile-shfmt -q . if errorlevel 1 goto :err -call :fix install-php-extensions -call :fix scripts/common -call :fix scripts/lint -call :fix scripts/travisci-test-extensions -call :fix scripts/travisci-update-readme -call :fix scripts/update-readme +docker run --rm -v "%SRC_DIR%:/src" -w /src docker-php-extension-installer-shfmt:latest ./scripts/invoke-shfmt fix +if errorlevel 1 goto :err goto :eof :no-docker @@ -26,9 +22,3 @@ goto :eof :err echo ERROR! >&2 goto :eof - -:fix -echo|set /p="Fixing %1... " -docker run --rm -v "%SRC_DIR%:/src" -w /src docker-php-extension-installer-shfmt:latest shfmt -s -ln posix -i 0 -ci -kp -w %1 -if not errorlevel 1 echo done. -exit /b 0