diff --git a/.github/workflows/build-firmware.yaml b/.github/workflows/build-firmware.yaml
index 344bd7e614..58f131260a 100644
--- a/.github/workflows/build-firmware.yaml
+++ b/.github/workflows/build-firmware.yaml
@@ -73,216 +73,214 @@ jobs:
include:
# Board configurations
- build-target: hellen72
- folder: hellen/hellen72
+ folder: config/boards/hellen/hellen72
ini-file: rusefi_hellen72.ini
skip-rate: 90
- build-target: hellen81
- folder: hellen/hellen81
+ folder: config/boards/hellen/hellen81
ini-file: rusefi_hellen81.ini
skip-rate: 90
- build-target: alphax-2chan
- folder: hellen/alphax-2chan
+ folder: config/boards/hellen/alphax-2chan
ini-file: rusefi_alphax-2chan.ini
skip-rate: 0
- build-target: alphax-4chan
- folder: hellen/alphax-4chan
+ folder: config/boards/hellen/alphax-4chan
ini-file: rusefi_alphax-4chan.ini
- build-target: alphax-8chan
- folder: hellen/alphax-8chan
+ folder: config/boards/hellen/alphax-8chan
ini-file: rusefi_alphax-8chan.ini
- build-target: s105
- folder: s105
+ folder: config/boards/s105
ini-file: rusefi_s105.ini
skip-rate: 0
- build-target: m74_9
- folder: m74_9
+ folder: config/boards/m74_9
ini-file: rusefi_m74_9.ini
skip-rate: 0
- build-target: harley81
- folder: hellen/harley81
+ folder: config/boards/hellen/harley81
ini-file: rusefi_harley81.ini
skip-rate: 90
- build-target: hellen88bmw
- folder: hellen/hellen88bmw
+ folder: config/boards/hellen/hellen88bmw
ini-file: rusefi_hellen88bmw.ini
skip-rate: 90
- build-target: hellen88bmw_avr
- folder: hellen/hellen88bmw
+ folder: config/boards/hellen/hellen88bmw
ini-file: rusefi_hellen88bmw.ini
skip-rate: 90
- build-target: hellen-nb1
- folder: hellen/hellen-nb1
+ folder: config/boards/hellen/hellen-nb1
ini-file: rusefi_hellen-nb1.ini
skip-rate: 90
- build-target: hellen-gm-e67
- folder: hellen/hellen-gm-e67
+ folder: config/boards/hellen/hellen-gm-e67
ini-file: rusefi_hellen-gm-e67.ini
skip-rate: 90
- build-target: hellenNA8_96
- folder: hellen/hellenNA8_96
+ folder: config/boards/hellen/hellenNA8_96
ini-file: rusefi_hellenNA8_96.ini
skip-rate: 90
- build-target: hellenNA6
- folder: hellen/hellen64_miataNA6_94
+ folder: config/boards/hellen/hellen64_miataNA6_94
ini-file: rusefi_hellenNA6.ini
skip-rate: 90
- build-target: hellen128
- folder: hellen/hellen128
+ folder: config/boards/hellen/hellen128
ini-file: rusefi_hellen128mercedes.ini
skip-rate: 50
- build-target: hellen121vag
- folder: hellen/hellen121vag
+ folder: config/boards/hellen/hellen121vag
ini-file: rusefi_hellen121vag.ini
skip-rate: 90
- build-target: hellen121nissan
- folder: hellen/hellen121nissan
+ folder: config/boards/hellen/hellen121nissan
ini-file: rusefi_hellen121nissan.ini
- build-target: hellen-honda-k
- folder: hellen/hellen-honda-k
+ folder: config/boards/hellen/hellen-honda-k
ini-file: rusefi_hellen-honda-k.ini
- build-target: hellen154hyundai
- folder: hellen/hellen154hyundai
+ folder: config/boards/hellen/hellen154hyundai
ini-file: rusefi_hellen154hyundai.ini
skip-rate: 90
- build-target: cypress
- folder: cypress
+ folder: config/boards/cypress
ini-file: rusefi_cypress.ini
- build-target: frankenso_na6
- folder: frankenso
+ folder: config/boards/frankenso
ini-file: rusefi_frankenso_na6.ini
skip-rate: 90
- build-target: kinetis
- folder: kinetis
+ folder: config/boards/kinetis
ini-file: rusefi_kin.ini
skip-rate: 0
- build-target: mre_f4
- folder: microrusefi
+ folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini
- build-target: mre_f4_debug
- folder: microrusefi
+ folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini
skip-rate: 95
- build-target: mre_f4_recovery
- folder: microrusefi
+ folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini
skip-rate: 95
- build-target: mre_f4_hardware_QC_special_build
- folder: microrusefi
+ folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini
skip-rate: 90
- build-target: mre_f7
- folder: microrusefi
+ folder: config/boards/microrusefi
ini-file: rusefi_mre_f7.ini
- console-settings: firmware/config/boards/nucleo_f767/rusefi_console_properties.xml
skip-rate: 90
- build-target: prometheus_405
- folder: prometheus
+ folder: config/boards/prometheus
ini-file: rusefi_prometheus_405.ini
skip-rate: 90
- build-target: prometheus_469
- folder: prometheus
+ folder: config/boards/prometheus
ini-file: rusefi_prometheus_469.ini
skip-rate: 90
- build-target: proteus_f4
- folder: proteus
+ folder: config/boards/proteus
ini-file: rusefi_proteus_f4.ini
- build-target: proteus_f4_hardware_QC_special_build
- folder: proteus
+ folder: config/boards/proteus
ini-file: rusefi_proteus_f4.ini
- build-target: proteus_f7
- folder: proteus
+ folder: config/boards/proteus
ini-file: rusefi_proteus_f7.ini
- build-target: proteus_f7_hardware_QC_special_build
- folder: proteus
+ folder: config/boards/proteus
ini-file: rusefi_proteus_f7.ini
skip-rate: 90
- build-target: proteus_h7
- folder: proteus
+ folder: config/boards/proteus
ini-file: rusefi_proteus_h7.ini
skip-rate: 90
- build-target: proteus_legacy
- folder: proteus
+ folder: config/boards/proteus
ini-file: rusefi_proteus_f7.ini
skip-rate: 90
- build-target: stm32f429_nucleo
- folder: nucleo_f429
+ folder: config/boards/nucleo_f429
ini-file: rusefi_stm32f429_nucleo.ini
- build-target: stm32f767_nucleo
- folder: nucleo_f767
+ folder: config/boards/nucleo_f767
ini-file: rusefi_stm32f767_nucleo.ini
- console-settings: firmware/config/boards/nucleo_f767/rusefi_console_properties.xml
skip-rate: 95
- build-target: stm32h743_nucleo
- folder: nucleo_h743
+ folder: config/boards/nucleo_h743
ini-file: rusefi_stm32h743_nucleo.ini
skip-rate: 95
- build-target: subaru_eg33_f7
- folder: subaru_eg33
+ folder: config/boards/subaru_eg33
ini-file: rusefi_subaru_eg33_f7.ini
skip-rate: 50
- build-target: f407-discovery
- folder: f407-discovery
+ folder: config/boards/f407-discovery
- build-target: f429-discovery
- folder: f429-discovery
+ folder: config/boards/f429-discovery
skip-rate: 95
- build-target: core8
- folder: core8
+ folder: config/boards/core8
ini-file: rusefi_core8.ini
skip-rate: 95
- build-target: 48way
- folder: 48way
+ folder: config/boards/48way
ini-file: rusefi_48way.ini
skip-rate: 95
- build-target: atlas
- folder: atlas
+ folder: config/boards/atlas
ini-file: rusefi_atlas.ini
skip-rate: 95
- build-target: tdg-pdm8
- folder: tdg-pdm8
+ folder: config/boards/tdg-pdm8
ini-file: rusefi_tdg-pdm8.ini
skip-rate: 95
@@ -393,7 +391,7 @@ jobs:
# Build the firmware!
- name: Build Firmware
if: ${{ env.skip != 'true' }}
- run: bash misc/jenkins/compile_other_versions/compile.sh ${{matrix.folder}} ${{matrix.build-target}} ${{matrix.ini-file}} ${{matrix.console-settings}}
+ run: bash misc/jenkins/compile_other_versions/compile.sh ${{matrix.folder}} ${{matrix.build-target}}
- name: Package Bundle
if: ${{( github.event_name == 'push' && github.ref == 'refs/heads/master' && env.skip != 'true' ) || inputs.lts }}
diff --git a/.github/workflows/hardware-ci.yaml b/.github/workflows/hardware-ci.yaml
index 55f6758a5c..b7ee47d7d8 100644
--- a/.github/workflows/hardware-ci.yaml
+++ b/.github/workflows/hardware-ci.yaml
@@ -15,9 +15,8 @@ jobs:
script: hardware_ci_f4_discovery
runs-on: hw-ci-f4-discovery
test-suite: com.rusefi.HwCiF4Discovery
- folder: f407-discovery
+ folder: config/boards/f407-discovery
config-name: all
- ini-file: rusefi_f4-disco.ini
openocd-script: ../.github/workflows/openocd_ci_f4_discovery.cfg
serial-device: /dev/serial/by-id/usb-rusEFI_LLC_rusEFI_Engine_Management_ECU_2B003B000A51343033393930-if01
@@ -25,9 +24,8 @@ jobs:
script: hardware_ci_proteus
runs-on: hw-ci-proteus
test-suite: com.rusefi.HwCiF4Proteus
- folder: proteus
+ folder: config/boards/proteus
config-name: proteus_f4
- ini-file: rusefi_proteus_f4.ini
openocd-script: ../.github/workflows/openocd_ci_proteus.cfg
serial-device: /dev/serial/by-id/usb-rusEFI_LLC_rusEFI_Engine_Management_ECU_41003D000451383037343335-if01
@@ -84,7 +82,7 @@ jobs:
echo "HARDWARE_CI_SERIAL_DEVICE=${{matrix.serial-device}}" >> $GITHUB_ENV
- name: Build Firmware
- run: bash misc/jenkins/compile_other_versions/compile.sh ${{matrix.folder}} ${{matrix.build-target}} ${{matrix.ini-file}}
+ run: bash misc/jenkins/compile_other_versions/compile.sh ${{matrix.folder}} ${{matrix.build-target}}
- name: Check for STLINK
run: lsusb | grep 'ST-LINK\|STLINK'
diff --git a/firmware/config/boards/nucleo_f767/rusefi_console_properties.xml b/firmware/config/boards/nucleo_f767/rusefi_console_properties.xml
deleted file mode 100644
index 38b0e5957e..0000000000
--- a/firmware/config/boards/nucleo_f767/rusefi_console_properties.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
diff --git a/firmware/gen_config.sh b/firmware/gen_config.sh
index 7d90c751e2..c44455b71b 100755
--- a/firmware/gen_config.sh
+++ b/firmware/gen_config.sh
@@ -25,38 +25,38 @@ config/boards/subaru_eg33/config/gen_subaru_config.sh
#
#
for BOARD in \
- "hellen/alphax-2chan alphax-2chan" \
- "hellen/alphax-4chan alphax-4chan" \
- "hellen/alphax-8chan alphax-8chan" \
- "hellen/harley81 harley81" \
- "hellen/hellen128 hellen128 rusefi_hellen128mercedes.ini" \
- "hellen/hellen121vag hellen121vag" \
- "hellen/hellen121nissan hellen121nissan" \
- "hellen/hellen-honda-k hellen-honda-k" \
- "hellen/hellen154hyundai hellen154hyundai" \
- "hellen/hellen88bmw hellen88bmw" \
- "hellen/hellen72 hellen72" \
- "hellen/hellen81 hellen81" \
- "hellen/hellen-nb1 hellen-nb1" \
- "hellen/hellen-gm-e67 hellen-gm-e67" \
- "hellen/hellen64_miataNA6_94 hellenNA6" \
- "hellen/hellenNA8_96 hellenNA8_96" \
- "microrusefi mre_f7" \
- "microrusefi mre_f4" \
- "core8 core8" \
- "48way 48way" \
- "m74_9 m74_9" \
- "s105 s105" \
- "frankenso frankenso_na6" \
- "prometheus prometheus_469" \
- "prometheus prometheus_405" \
- "proteus proteus_f7" \
- "proteus proteus_f4" \
- "proteus proteus_h7" \
- "f407-discovery f407-discovery" \
- "f429-discovery f429-discovery" \
- "atlas atlas"\
- "tdg-pdm8 tdg-pdm8"\
+ "config/boards/hellen/alphax-2chan alphax-2chan" \
+ "config/boards/hellen/alphax-4chan alphax-4chan" \
+ "config/boards/hellen/alphax-8chan alphax-8chan" \
+ "config/boards/hellen/harley81 harley81" \
+ "config/boards/hellen/hellen128 hellen128 rusefi_hellen128mercedes.ini" \
+ "config/boards/hellen/hellen121vag hellen121vag" \
+ "config/boards/hellen/hellen121nissan hellen121nissan" \
+ "config/boards/hellen/hellen-honda-k hellen-honda-k" \
+ "config/boards/hellen/hellen154hyundai hellen154hyundai" \
+ "config/boards/hellen/hellen88bmw hellen88bmw" \
+ "config/boards/hellen/hellen72 hellen72" \
+ "config/boards/hellen/hellen81 hellen81" \
+ "config/boards/hellen/hellen-nb1 hellen-nb1" \
+ "config/boards/hellen/hellen-gm-e67 hellen-gm-e67" \
+ "config/boards/hellen/hellen64_miataNA6_94 hellenNA6" \
+ "config/boards/hellen/hellenNA8_96 hellenNA8_96" \
+ "config/boards/microrusefi mre_f7" \
+ "config/boards/microrusefi mre_f4" \
+ "config/boards/core8 core8" \
+ "config/boards/48way 48way" \
+ "config/boards/m74_9 m74_9" \
+ "config/boards/s105 s105" \
+ "config/boards/frankenso frankenso_na6" \
+ "config/boards/prometheus prometheus_469" \
+ "config/boards/prometheus prometheus_405" \
+ "config/boards/proteus proteus_f7" \
+ "config/boards/proteus proteus_f4" \
+ "config/boards/proteus proteus_h7" \
+ "config/boards/f407-discovery f407-discovery" \
+ "config/boards/f429-discovery f429-discovery" \
+ "config/boards/atlas atlas"\
+ "config/boards/tdg-pdm8 tdg-pdm8"\
; do
BOARD_NAME=$(echo "$BOARD" | cut -d " " -f 1)
BOARD_SHORT_NAME=$(echo "$BOARD" | cut -d " " -f 2)
diff --git a/firmware/gen_config_board.sh b/firmware/gen_config_board.sh
index da5f7116a3..35f93d19a0 100755
--- a/firmware/gen_config_board.sh
+++ b/firmware/gen_config_board.sh
@@ -15,7 +15,7 @@ if [ -z "$1" ]; then
exit 1
fi
-BOARDNAME=$1
+BOARD_DIR=$1
SHORT_BOARDNAME=$2
if [ -n "$3" ]; then
INI="$3"
@@ -23,16 +23,15 @@ else
INI="rusefi_${SHORT_BOARDNAME}.ini"
fi
-echo "BOARDNAME=${BOARDNAME} SHORT_BOARDNAME=${SHORT_BOARDNAME}"
+echo "BOARD_DIR=${BOARD_DIR} SHORT_BOARDNAME=${SHORT_BOARDNAME}"
bash gen_signature.sh ${SHORT_BOARDNAME}
-BOARD_DIR=config/boards/${BOARDNAME}
PREPEND_FILE=${BOARD_DIR}/prepend.txt
BOARD_SPECIFIC_URL=$(cat $PREPEND_FILE | grep MAIN_HELP_URL | cut -d " " -f 3 | sed -e 's/^"//' -e 's/"$//')
-echo "BOARD_SPECIFIC_URL=[$BOARD_SPECIFIC_URL] for [$BOARDNAME] as [$SHORT_BOARDNAME]"
+echo "BOARD_SPECIFIC_URL=[$BOARD_SPECIFIC_URL] for [$SHORT_BOARDNAME] from [$BOARD_DIR]"
if [ "" = "$BOARD_SPECIFIC_URL" ]; then
BOARD_SPECIFIC_URL=https://rusefi.com/s/wiki
fi
@@ -51,7 +50,7 @@ java \
-c_defines controllers/generated/rusefi_generated.h \
-c_destination controllers/generated/engine_configuration_generated_structures.h
-[ $? -eq 0 ] || { echo "ERROR generating TunerStudio config for ${BOARDNAME}"; exit 1; }
+[ $? -eq 0 ] || { echo "ERROR generating TunerStudio config for ${BOARD_DIR}"; exit 1; }
# we generate both versions of the header but only one would be actually included due to conditional compilation see EFI_USE_COMPRESSED_INI_MSD
# todo: make things consistent by
@@ -62,5 +61,5 @@ java \
hw_layer/mass_storage/create_ini_image.sh ./tunerstudio/generated/${INI} ./hw_layer/mass_storage/ramdisk_image.h 128 ${SHORT_BOARDNAME} ${BOARD_SPECIFIC_URL}
hw_layer/mass_storage/create_ini_image_compressed.sh ./tunerstudio/generated/${INI} ./hw_layer/mass_storage/ramdisk_image_compressed.h 1088 ${SHORT_BOARDNAME} ${BOARD_SPECIFIC_URL}
-echo "Happy ${SHORT_BOARDNAME}"
+echo "Happy ${SHORT_BOARDNAME}!"
exit 0
diff --git a/firmware/gen_config_common.sh b/firmware/gen_config_common.sh
index 007fc20213..5d4dec5532 100755
--- a/firmware/gen_config_common.sh
+++ b/firmware/gen_config_common.sh
@@ -22,5 +22,5 @@ COMMON_GEN_CONFIG="
-signature_destination controllers/generated/signature_${SHORT_BOARDNAME}.h \
-ts_output_name generated/${INI} \
-prepend ${BOARD_DIR}/prepend.txt \
- -board ${BOARDNAME} \
+ -board ${BOARD_DIR} \
-definition integration/rusefi_config.txt"
diff --git a/firmware/gen_config_default.sh b/firmware/gen_config_default.sh
index c9b9dd2fe1..0d54dd76c2 100755
--- a/firmware/gen_config_default.sh
+++ b/firmware/gen_config_default.sh
@@ -1,5 +1,5 @@
#!/bin/bash
# file gen_config_default.sh
-bash gen_config_board.sh f407-discovery f407-discovery rusefi.ini
+bash gen_config_board.sh config/boards/f407-discovery f407-discovery rusefi.ini
exit $?
diff --git a/java_tools/ConfigDefinition.jar b/java_tools/ConfigDefinition.jar
index cf876e5e10..b865761d3f 100644
Binary files a/java_tools/ConfigDefinition.jar and b/java_tools/ConfigDefinition.jar differ
diff --git a/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigDefinition.java b/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigDefinition.java
index c6ddba82a4..f07e093739 100644
--- a/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigDefinition.java
+++ b/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigDefinition.java
@@ -143,7 +143,7 @@ public class ConfigDefinition {
break;
case KEY_BOARD_NAME:
String boardName = args[i + 1];
- pinoutLogic = PinoutLogic.create(boardName, PinoutLogic.CONFIG_BOARDS);
+ pinoutLogic = PinoutLogic.create(boardName);
if (pinoutLogic != null) {
for (String inputFile : pinoutLogic.getInputFiles())
state.addInputFile(inputFile);
diff --git a/java_tools/configuration_definition/src/main/java/com/rusefi/PinoutLogic.java b/java_tools/configuration_definition/src/main/java/com/rusefi/PinoutLogic.java
index a5b7e74ed1..add263c95d 100644
--- a/java_tools/configuration_definition/src/main/java/com/rusefi/PinoutLogic.java
+++ b/java_tools/configuration_definition/src/main/java/com/rusefi/PinoutLogic.java
@@ -19,7 +19,6 @@ import static com.rusefi.output.JavaSensorsConsumer.quote;
public class PinoutLogic {
private static final Logging log = getLogging(PinoutLogic.class);
- public static final String CONFIG_BOARDS = "config/boards/";
private static final String CONNECTORS = "/connectors";
private static final String NONE = "NONE";
private static final String QUOTED_NONE = quote(NONE);
@@ -196,19 +195,9 @@ public class PinoutLogic {
PinState thisPin = new PinState(id, pinTsName, pinClass);
globalList.add(thisPin);
}
-/*
- public static void main(String[] args) throws IOException {
- String boardName = "hellen-gm-e67";
- PinoutLogic logic = create(boardName,"../../firmware/config/boards/hellen/");
- logic.readFiles();
- log.info(logic.toString());
- registerPins(boardName, logic.globalList, new VariableRegistry(), new ReaderState());
- }
-*/
-
- public static PinoutLogic create(String boardName, String rootFolder) {
- String dirPath = rootFolder + boardName + PinoutLogic.CONNECTORS;
+ public static PinoutLogic create(String boardName) {
+ String dirPath = boardName + PinoutLogic.CONNECTORS;
File dirName = new File(dirPath);
FilenameFilter filter = (f, name) -> name.endsWith(".yaml");
File[] boardYamlFiles = dirName.listFiles(filter);
@@ -224,7 +213,7 @@ public class PinoutLogic {
readFiles();
registerPins(boardName, globalList, registry, state, parseState);
- try (FileWriter getTsNameByIdFile = new FileWriter(PinoutLogic.CONFIG_BOARDS + boardName + PinoutLogic.CONNECTORS + File.separator + "generated_ts_name_by_pin.cpp")) {
+ try (FileWriter getTsNameByIdFile = new FileWriter(boardName + PinoutLogic.CONNECTORS + File.separator + "generated_ts_name_by_pin.cpp")) {
getTsNameByIdFile.append(header);
getTsNameByIdFile.append("#include \"pch.h\"\n\n");
@@ -256,8 +245,7 @@ public class PinoutLogic {
public List getInputFiles() {
List result = new ArrayList<>();
for (File yamlFile : boardYamlFiles) {
- result.add(PinoutLogic.CONFIG_BOARDS + boardName + PinoutLogic.CONNECTORS +
- File.separator + yamlFile.getName());
+ result.add(boardName + PinoutLogic.CONNECTORS + File.separator + yamlFile.getName());
}
return result;
}
diff --git a/misc/jenkins/compile_other_versions/compile.sh b/misc/jenkins/compile_other_versions/compile.sh
index 880b9c4aaf..50edfdd896 100755
--- a/misc/jenkins/compile_other_versions/compile.sh
+++ b/misc/jenkins/compile_other_versions/compile.sh
@@ -1,18 +1,18 @@
#!/bin/bash
-# for example 'proteus'
-BOARD_NAME="$1"
+# fail on error!
+set -e
-# for example 'mre-f4'
+# for example 'config/boards/proteus'
+BOARD_DIR="$1"
+
+# for example 'proteus_f4'
export BUNDLE_NAME="$2"
-export INI_FILE_OVERRIDE="$3"
-export RUSEFI_CONSOLE_SETTINGS="$4"
-
SCRIPT_NAME=compile_and_upload.sh
-echo "Entering $SCRIPT_NAME with 1=$1 2=$2 3=$3 4=$4"
+echo "Entering $SCRIPT_NAME with folder $BOARD_DIR and bundle name $BUNDLE_NAME"
-[ -n $BOARD_NAME ] || { echo "BOARD_NAME parameter expected"; exit 1; }
+[ -n $BOARD_DIR ] || { echo "BOARD_DIR parameter expected"; exit 1; }
[ -n $BUNDLE_NAME ] || { echo "BUNDLE_NAME parameter expected"; exit 1; }
@@ -24,24 +24,10 @@ cd ..
root_dir=$(pwd)
-cd firmware/config/boards
-pwd
-cd $BOARD_NAME
+cd firmware/$BOARD_DIR
pwd
echo "Invoking $COMPILE_SCRIPT"
bash $COMPILE_SCRIPT
-[ $? -eq 0 ] || { echo "ERROR invoking $COMPILE_SCRIPT"; exit 1; }
-echo "We are in"
-pwd
-cd ${root_dir}
-echo "We are now in"
-pwd
-
-[ -e firmware/build/rusefi.hex ] || { echo "Just to confirm - FAILED to compile with $COMPILE_SCRIPT"; exit 1; }
-
-# We are back at root rusEFI folder
-pwd
-
-echo "exiting $SCRIPT_NAME"
+echo "Success for $SCRIPT_NAME!"