You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Execution of link_workflow.sh returns the unbound variable message shown above.
Additional Information
Line 44 of gfs_utils.fd/ush/detect_machine.sh is the COMPILER line shown below
# Append compiler (only on machines that have multiple compilers)
if [ $MACHINE_ID = hera ] || [ $MACHINE_ID = cheyenne ]; then
MACHINE_ID=${MACHINE_ID}.${COMPILER}
fi
Possible Implementation
Script sorc/build_all.sh sets COMPILER before executing detect_machine.sh as shown below
#------------------------------------
# GET MACHINE
#------------------------------------
export COMPILER="intel"
# shellcheck disable=SC1091
source gfs_utils.fd/ush/detect_machine.sh
# shellcheck disable=
if [[ -z "${MACHINE_ID}" ]]; then
echo "FATAL: Unable to determine target machine"
exit 1
fi
Expected behavior
./link_workf.sh
should execute without error.Current behavior
./link_workflow.sh
returns the following error message on HeraMachines affected
Error discovered on Hera. Based on logic in
detect_machine.sh
the error will probably occur on Cheyenne.To Reproduce
git clone https://github.com/NOAA-EMC/global-workflow.git .
cd sorc
./checkout.sh -g
./build_all.sh
./link_workfow.sh
Execution of
link_workflow.sh
returns the unbound variable message shown above.Additional Information
Line 44 of
gfs_utils.fd/ush/detect_machine.sh
is theCOMPILER
line shown belowPossible Implementation
Script
sorc/build_all.sh
setsCOMPILER
before executingdetect_machine.sh
as shown belowIn contrast,
link_workflow.sh
hasA possible fix is to add
export COMPILER="intel"
tolink_workflow.sh
as is done inbuild_all.sh
.A different solution would be to modify
detect_machine.sh
so that it does not referenceCOMPILER
for Hera or Cheyenne.The text was updated successfully, but these errors were encountered: