diff --git a/EESSI-extend-easybuild.eb b/EESSI-extend-easybuild.eb index 250191c0..c8be0660 100644 --- a/EESSI-extend-easybuild.eb +++ b/EESSI-extend-easybuild.eb @@ -143,9 +143,21 @@ elseif eessi_site_install then LmodError("You cannot use EESSI_SITE_INSTALL in combination with any other EESSI_*_INSTALL environment variables") end easybuild_installpath = os.getenv("EESSI_SITE_SOFTWARE_PATH") + -- Check that the plain EESSI_SITE_SOFTWARE_PATH exists + if not isDir(easybuild_installpath) then + installpath_warning = "The location of EESSI_SITE_SOFTWARE_PATH (" .. easybuild_installpath .. ") does not exist or is not a directory. " + installpath_warning = installpath_warning .. "If you have sufficient permissions this location will be created, otherwise you will run into errors." + LmodWarning(installpath_warning) + end -- Enforce accelerator subdirectory usage for site installs (only if an accelerator install is requested) if (eessi_accelerator_target ~= nil) and (cuda_compute_capability ~= nil) and (os.getenv("EESSI_ACCELERATOR_INSTALL") ~= nil) then easybuild_installpath = pathJoin(easybuild_installpath, eessi_accelerator_target) + -- Check that the EESSI_SITE_SOFTWARE_PATH with eessi_accelerator_target prefix exists + if not isDir(easybuild_installpath) then + installpath_warning = "The location of EESSI_SITE_SOFTWARE_PATH (" .. easybuild_installpath .. ") does not exist or is not a directory. " + installpath_warning = installpath_warning .. "If you have sufficient permissions this location will be created, otherwise you will run into errors." + LmodWarning(installpath_warning) + end end else -- Deal with user and project installs