diff --git a/EESSI-install-software.sh b/EESSI-install-software.sh index 31ce30d4fc..7b7a60686c 100755 --- a/EESSI-install-software.sh +++ b/EESSI-install-software.sh @@ -247,7 +247,7 @@ fi ### add packages here -echo ">> Creating/updating Lmod cache..." +echo ">> Creating/updating Lmod RC file..." export LMOD_CONFIG_DIR="${EASYBUILD_INSTALLPATH}/.lmod" lmod_rc_file="$LMOD_CONFIG_DIR/lmodrc.lua" lmodrc_changed=$(cat ${pr_diff} | grep '^+++' | cut -f2 -d' ' | sed 's@^[a-z]/@@g' | grep '^create_lmodrc.py$' > /dev/null; echo $?) @@ -265,7 +265,5 @@ if [ ! -f "$lmod_sitepackage_file" ] || [ "${sitepackage_changed}" == '0' ]; the check_exit_code $? "$lmod_sitepackage_file created" "Failed to create $lmod_sitepackage_file" fi -$TOPDIR/update_lmod_cache.sh ${EPREFIX} ${EASYBUILD_INSTALLPATH} - echo ">> Cleaning up ${TMPDIR}..." rm -r ${TMPDIR} diff --git a/install_apptainer_ubuntu.sh b/install_apptainer_ubuntu.sh index c35c34cda6..6cf9a6f48e 100755 --- a/install_apptainer_ubuntu.sh +++ b/install_apptainer_ubuntu.sh @@ -5,8 +5,11 @@ set -e # see https://github.com/apptainer/singularity/issues/5390#issuecomment-899111181 sudo apt-get install alien alien --version -apptainer_rpm=$(curl --silent -L https://dl.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/a/ | grep 'apptainer-[0-9]' | sed 's/.*\(apptainer[0-9._a-z-]*.rpm\).*/\1/g') -curl -OL https://dl.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/a/${apptainer_rpm} +#apptainer_rpm=$(curl --silent -L https://dl.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/a/ | grep 'apptainer-[0-9]' | sed 's/.*\(apptainer[0-9._a-z-]*.rpm\).*/\1/g') +#curl -OL https://dl.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/a/${apptainer_rpm} +#/pub/archive/epel/8.8/Everything/x86_64/Packages/a +apptainer_rpm=$(curl --silent -L https://dl.fedoraproject.org/pub/archive/epel/8.8/Everything/x86_64/Packages/a/ | grep 'apptainer-[0-9]' | sed 's/.*\(apptainer[0-9._a-z-]*.rpm\).*/\1/g') +curl -OL https://dl.fedoraproject.org/pub/archive/epel/8.8/Everything/x86_64/Packages/a/${apptainer_rpm} sudo alien -d ${apptainer_rpm} sudo apt install ./apptainer*.deb apptainer --version diff --git a/scripts/gpu_support/nvidia/install_cuda_host_injections.sh b/scripts/gpu_support/nvidia/install_cuda_host_injections.sh index a9310d817a..8c81fdb31f 100755 --- a/scripts/gpu_support/nvidia/install_cuda_host_injections.sh +++ b/scripts/gpu_support/nvidia/install_cuda_host_injections.sh @@ -155,6 +155,13 @@ else fi if ! command -v "eb" &>/dev/null; then + env | sort + module --version + declare -f module + module list + ls ${EESSI_SOFTWARE_PATH} + ls ${cuda_install_parent} + echo_yellow "Attempting to load an EasyBuild module to do actual install" module load EasyBuild # There are some scenarios where this may fail @@ -165,12 +172,14 @@ else error="${error}Please re-run this script with the 'eb' command available." fatal_error "${error}" fi + echo_yellow "EasyBuild module loaded" fi cuda_easyconfig="CUDA-${install_cuda_version}.eb" # Check the easyconfig file is available in the release # (eb search always returns 0, so we need a grep to ensure a usable exit code) + echo_yellow "Searching for easyconfig '${cuda_easyconfig}'" eb --search ^${cuda_easyconfig}|grep CUDA > /dev/null 2>&1 # Check the exit code if [ $? -ne 0 ]; then @@ -185,6 +194,7 @@ else error="${error}${available_cuda_easyconfigs}" fatal_error "${error}" fi + echo_yellow "Search for easyconfig '${cuda_easyconfig}' done" # We need the --rebuild option, as the CUDA module may or may not be on the # `MODULEPATH` yet. Even if it is, we still want to redo this installation @@ -195,10 +205,13 @@ else extra_args="--rebuild --installpath-modules=${tmpdir}" # We don't want hooks used in this install, we need a vanilla CUDA installation + echo_yellow "Creating empty hooks file" touch "$tmpdir"/none.py # shellcheck disable=SC2086 # Intended splitting of extra_args + echo_yellow "Running 'eb --prefix=$tmpdir ${extra_args} --accept-eula-for=CUDA --hooks=$tmpdir/none.py --installpath=${cuda_install_parent}/ ${cuda_easyconfig}'" eb --prefix="$tmpdir" ${extra_args} --accept-eula-for=CUDA --hooks="$tmpdir"/none.py --installpath="${cuda_install_parent}"/ "${cuda_easyconfig}" ret=$? + echo_yellow "eb command finished with exit code '$ret'" if [ $ret -ne 0 ]; then eb_last_log=$(unset EB_VERBOSE; eb --last-log) cp -a ${eb_last_log} .