~ salmonella-environment-setup (master) 35ed5b0adaecdd2bea674dd8dbdf54a3c415b5c4


commit 35ed5b0adaecdd2bea674dd8dbdf54a3c415b5c4
Author:     Mario Domenech Goulart <mario@parenteses.org>
AuthorDate: Mon Dec 16 22:01:45 2024 +0100
Commit:     Mario Domenech Goulart <mario@parenteses.org>
CommitDate: Mon Dec 16 22:03:07 2024 +0100

    run-salmonella.sh: Address shellcheck warnings

diff --git a/run-salmonella.sh b/run-salmonella.sh
index 023a2c7..af8be4d 100755
--- a/run-salmonella.sh
+++ b/run-salmonella.sh
@@ -1,5 +1,8 @@
 #! /bin/sh
 
+# shellcheck disable=SC3043
+# The `local' declaration is relatively portable
+
 [ -n "$RUN_SALMONELLA_DEBUG" ] && set -x
 
 ROOT_DIR=$(readlink -f "$(dirname "$0")")
@@ -54,20 +57,20 @@ EOF
 CHICKEN_TESTS_MAJOR_VERSION=${CHICKEN_TESTS_MAJOR_VERSION:-5}
 
 # Conf files use these environment variables
-export CHICKEN_4_PREFIX=$HOME/local/chicken-4
-export CHICKEN_5_PREFIX=$HOME/local/chicken-5
-export CHICKEN_6_PREFIX=$HOME/local/chicken-6
-export CHICKEN_5_EGGS_DIR=$HOME/src/chicken-5-eggs
-export SALMONELLA_REPORTS_DIR=$HOME/salmonella/reports
+export CHICKEN_4_PREFIX="$HOME/local/chicken-4"
+export CHICKEN_5_PREFIX="$HOME/local/chicken-5"
+export CHICKEN_6_PREFIX="$HOME/local/chicken-6"
+export CHICKEN_5_EGGS_DIR="$HOME/src/chicken-5-eggs"
+export SALMONELLA_REPORTS_DIR="$HOME/salmonella/reports"
 
 if [ "$CHICKEN_TESTS_MAJOR_VERSION" = 4 ]; then
     CHICKEN_TESTS_PREFIX=$CHICKEN_4_PREFIX
-    OS=$($CHICKEN_4_PREFIX/bin/csi -p '(software-version)')
-    ARCH=$($CHICKEN_4_PREFIX/bin/csi -p '(machine-type)')
+    OS=$("$CHICKEN_4_PREFIX/bin/csi" -p '(software-version)')
+    ARCH=$("$CHICKEN_4_PREFIX/bin/csi" -p '(machine-type)')
 else
     CHICKEN_TESTS_PREFIX=$CHICKEN_5_PREFIX
-    OS=$($CHICKEN_5_PREFIX/bin/csi -p '(begin (import (chicken platform)) (software-version))')
-    ARCH=$($CHICKEN_5_PREFIX/bin/csi -p '(begin (import (chicken platform)) (machine-type))')
+    OS=$("$CHICKEN_5_PREFIX/bin/csi" -p '(begin (import (chicken platform)) (software-version))')
+    ARCH=$("$CHICKEN_5_PREFIX/bin/csi" -p '(begin (import (chicken platform)) (machine-type))')
 fi
 
 SETTINGS_FILES="\
@@ -102,8 +105,7 @@ run_hooks() {
 
 
 run_salmonella() {
-    local confs
-    confs=$@
+    # $@ => configuration filenames
 
     mkdir -p "$WORK_DIR"
 
@@ -111,7 +113,7 @@ run_salmonella() {
     salmonella_run_publish="$CHICKEN_TESTS_PREFIX/bin/salmonella-run-publish"
 
     local conf_work_dir
-    for conf in $confs; do
+    for conf in "$@"; do
         conf_work_dir=$WORK_DIR/$conf
 
         # This must be in sync with the value of `(log-file)' in
@@ -128,6 +130,7 @@ run_salmonella() {
         for settings_file in $SETTINGS_FILES; do
             if [ -e "$settings_file" ]; then
                 echo "Loading $settings_file" >> "$log_file"
+                # shellcheck disable=SC1090
                 . "$settings_file"
             fi
         done
@@ -152,6 +155,7 @@ run_salmonella() {
             args="--commit-hash $CHICKEN_CORE_COMMIT_HASH $args"
 
         echo "Running $salmonella_run_publish $args" >> "$log_file"
+        # shellcheck disable=SC2086
         "$salmonella_run_publish" $args >>"$log_file" 2>&1
 
     done
@@ -161,7 +165,7 @@ run_salmonella() {
 main() {
     # Check if all conf files exist
     local conf
-    for conf in $@; do
+    for conf in "$@"; do
         if [ ! -e "$SRC_CONF_DIR/${conf}.conf" ]; then
             echo "No configuration file found for '$conf'.  Aborting." >&2
             exit 1
@@ -199,5 +203,5 @@ elif [ "$#" -lt 1 ]; then
     usage >&2
     exit 1
 else
-    main $@
+    main "$@"
 fi
Trap