From ad69c93623c4ec2bb69de2e094accd26ae15fc5e Mon Sep 17 00:00:00 2001 From: Neil Hanlon Date: Tue, 6 Jul 2021 17:32:25 -0400 Subject: [PATCH] maybe shellcheck will work --- .gitlab-ci.yml | 22 ++++++++++++++++++++++ mangle/{common => common.sh} | 0 mangle/validate_repos | 8 ++++---- sync/{common => common.sh} | 0 sync/minor-release-sync-to-staging.sh | 2 +- sync/prep-staging-8.sh | 2 +- sync/sync-to-prod.sh | 2 +- sync/sync-to-staging-sig.sh | 2 +- sync/sync-to-staging.sh | 2 +- 9 files changed, 31 insertions(+), 9 deletions(-) create mode 100644 .gitlab-ci.yml rename mangle/{common => common.sh} (100%) rename sync/{common => common.sh} (100%) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..1f46319 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,22 @@ +# you can delete this line if you're not using Docker +#image: busybox:latest + +shellcheck: + stage: test + image: registry.gitlab.com/pipeline-components/shellcheck:latest + variables: + CUSTOM_ENV_CI_REGISTRY: git.rockylinux.org + CUSTOM_ENV_CI_REGISTRY_USER: neil + tags: + - container + script: + # anything ending on .sh, should be shell script + - | + find . -name .git -type d -prune -o -type f -name \*.sh -print0 | + xargs -0 -P $(nproc) -r -n1 shellcheck + # magic, any file with a valid shebang should be scanned aswell + - | + find . -name .git -type d -prune -o -type f -regex '.*/[^.]*$' -print0 | + xargs -0 -P $(nproc) -r -n1 sh -c 'FILE="$0"; if head -n1 "$FILE" |grep -q "^#\\! \?/.\+\(ba|d|k\)\?sh" ; then shellcheck "$FILE" ; else /bin/true ; fi ' + + diff --git a/mangle/common b/mangle/common.sh similarity index 100% rename from mangle/common rename to mangle/common.sh diff --git a/mangle/validate_repos b/mangle/validate_repos index e6e69fc..f34477f 100755 --- a/mangle/validate_repos +++ b/mangle/validate_repos @@ -1,11 +1,11 @@ #!/usr/bin/env bash # Source mangle vars -# shellcheck source=./common -source "$(dirname "$0")/common" +# shellcheck source=./common.sh +source "$(dirname "$0")/common.sh" # Source sync / migrate vars for repository information -# shellcheck source=../sync/common -source "$(dirname "$0")/../sync/common" +# shellcheck source=../sync/common.sh +source "$(dirname "$0")/../sync/common.sh" # How many ARG1=${1} diff --git a/sync/common b/sync/common.sh similarity index 100% rename from sync/common rename to sync/common.sh diff --git a/sync/minor-release-sync-to-staging.sh b/sync/minor-release-sync-to-staging.sh index dccd422..4170acc 100644 --- a/sync/minor-release-sync-to-staging.sh +++ b/sync/minor-release-sync-to-staging.sh @@ -3,7 +3,7 @@ # other scripts in this directory to assist. # Source common variables # shellcheck disable=SC2046,1091,1090 -source $(dirname "$0")/common +source $(dirname "$0")/common.sh # sync all pieces of a release, including extras, nfv, etc diff --git a/sync/prep-staging-8.sh b/sync/prep-staging-8.sh index bc7f20d..3125b24 100644 --- a/sync/prep-staging-8.sh +++ b/sync/prep-staging-8.sh @@ -13,7 +13,7 @@ # Source common variables # shellcheck disable=SC2046,1091,1090 -source "$(dirname "$0")/common" +source "$(dirname "$0")/common.sh" echo "** Updating source repos" for y in "${ALL_REPOS[@]}"; do diff --git a/sync/sync-to-prod.sh b/sync/sync-to-prod.sh index 4edf198..8fd918a 100644 --- a/sync/sync-to-prod.sh +++ b/sync/sync-to-prod.sh @@ -3,7 +3,7 @@ # Source common variables # shellcheck disable=SC2046,1091,1090 -source "$(dirname "$0")/common" +source "$(dirname "$0")/common.sh" REV=${1} diff --git a/sync/sync-to-staging-sig.sh b/sync/sync-to-staging-sig.sh index 2741f19..e47be39 100644 --- a/sync/sync-to-staging-sig.sh +++ b/sync/sync-to-staging-sig.sh @@ -2,7 +2,7 @@ # Source common variables # shellcheck disable=SC2046,1091,1090 -source "$(dirname "$0")/common" +source "$(dirname "$0")/common.sh" # Major Version (eg, 8) MAJ=${1} diff --git a/sync/sync-to-staging.sh b/sync/sync-to-staging.sh index 07d8652..1f5438e 100644 --- a/sync/sync-to-staging.sh +++ b/sync/sync-to-staging.sh @@ -2,7 +2,7 @@ # Source common variables # shellcheck disable=SC2046,1091,1090 -source "$(dirname "$0")/common" +source "$(dirname "$0")/common.sh" # Major Version (eg, 8) MAJ=${1}