Skip to content

Commit 6a90a51

Browse files
authored
Merge pull request #226 from trz42/sync_nessi_eessi_update_bot_build_sh
add most changes (except NVIDIA related ones) to bot/build.sh
2 parents 71fdf64 + 102cd60 commit 6a90a51

File tree

1 file changed

+33
-4
lines changed

1 file changed

+33
-4
lines changed

bot/build.sh

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,33 @@ LOCAL_TMP=$(cfg_get_value "site_config" "local_tmp")
5353
echo "bot/build.sh: LOCAL_TMP='${LOCAL_TMP}'"
5454
# TODO should local_tmp be mandatory? --> then we check here and exit if it is not provided
5555

56+
# check if path to copy build logs to is specified, so we can copy build logs for failing builds there
57+
BUILD_LOGS_DIR=$(cfg_get_value "site_config" "build_logs_dir")
58+
echo "bot/build.sh: BUILD_LOGS_DIR='${BUILD_LOGS_DIR}'"
59+
# if $BUILD_LOGS_DIR is set, add it to $SINGULARITY_BIND so the path is available in the build container
60+
if [[ ! -z ${BUILD_LOGS_DIR} ]]; then
61+
mkdir -p ${BUILD_LOGS_DIR}
62+
if [[ -z ${SINGULARITY_BIND} ]]; then
63+
export SINGULARITY_BIND="${BUILD_LOGS_DIR}"
64+
else
65+
export SINGULARITY_BIND="${SINGULARITY_BIND},${BUILD_LOGS_DIR}"
66+
fi
67+
fi
68+
69+
# check if path to directory on shared filesystem is specified,
70+
# and use it as location for source tarballs used by EasyBuild if so
71+
SHARED_FS_PATH=$(cfg_get_value "site_config" "shared_fs_path")
72+
echo "bot/build.sh: SHARED_FS_PATH='${SHARED_FS_PATH}'"
73+
# if $SHARED_FS_PATH is set, add it to $SINGULARITY_BIND so the path is available in the build container
74+
if [[ ! -z ${SHARED_FS_PATH} ]]; then
75+
mkdir -p ${SHARED_FS_PATH}
76+
if [[ -z ${SINGULARITY_BIND} ]]; then
77+
export SINGULARITY_BIND="${SHARED_FS_PATH}"
78+
else
79+
export SINGULARITY_BIND="${SINGULARITY_BIND},${SHARED_FS_PATH}"
80+
fi
81+
fi
82+
5683
SINGULARITY_CACHEDIR=$(cfg_get_value "site_config" "container_cachedir")
5784
echo "bot/build.sh: SINGULARITY_CACHEDIR='${SINGULARITY_CACHEDIR}'"
5885
if [[ ! -z ${SINGULARITY_CACHEDIR} ]]; then
@@ -151,19 +178,21 @@ BUILD_STEP_ARGS+=("--save" "${TARBALL_TMP_BUILD_STEP_DIR}")
151178
BUILD_STEP_ARGS+=("--storage" "${STORAGE}")
152179

153180
# prepare arguments to install_software_layer.sh (specific to build step)
154-
GENERIC_OPT=
181+
declare -a INSTALL_SCRIPT_ARGS=()
155182
if [[ ${EESSI_SOFTWARE_SUBDIR_OVERRIDE} =~ .*/generic$ ]]; then
156-
GENERIC_OPT="--generic"
183+
INSTALL_SCRIPT_ARGS+=("--generic")
157184
fi
185+
[[ ! -z ${BUILD_LOGS_DIR} ]] && INSTALL_SCRIPT_ARGS+=("--build-logs-dir" "${BUILD_LOGS_DIR}")
186+
[[ ! -z ${SHARED_FS_PATH} ]] && INSTALL_SCRIPT_ARGS+=("--shared-fs-path" "${SHARED_FS_PATH}")
158187

159188
# create tmp file for output of build step
160189
build_outerr=$(mktemp build.outerr.XXXX)
161190

162191
echo "Executing command to build software:"
163192
echo "./eessi_container.sh ${COMMON_ARGS[@]} ${BUILD_STEP_ARGS[@]}"
164-
echo " -- ./install_software_layer.sh ${GENERIC_OPT} \"$@\" 2>&1 | tee -a ${build_outerr}"
193+
echo " -- ./install_software_layer.sh \"${INSTALL_SCRIPT_ARGS[@]}\" \"$@\" 2>&1 | tee -a ${build_outerr}"
165194
./eessi_container.sh "${COMMON_ARGS[@]}" "${BUILD_STEP_ARGS[@]}" \
166-
-- ./install_software_layer.sh ${GENERIC_OPT} "$@" 2>&1 | tee -a ${build_outerr}
195+
-- ./install_software_layer.sh "${INSTALL_SCRIPT_ARGS[@]}" "$@" 2>&1 | tee -a ${build_outerr}
167196

168197
# prepare directory to store tarball of tmp for tarball step
169198
TARBALL_TMP_TARBALL_STEP_DIR=${PREVIOUS_TMP_DIR}/tarball_step

0 commit comments

Comments
 (0)