Closed bartoldeman closed 2 years ago
Do we have any module file that return positive for grep of find_and_define_license_file
and negative for grep of restricted.computecanada.ca
?
The following modules use find_and_define_license_file
:
abaqus
ansys
ansysedt
comsol
cst
ddt-cpu
ddt-gpu
feko
fluent
gurobi
hfss
intel
ls-dyna
ls-dyna-mpi
matlab
oasys-ls-dyna
quantumatk
starccm
starccm-mixed
all of theme except intel reference restricted:
[oldeman@build-node modules]$ for i in $(grep -r -l find_and_define_license_file .); do grep -L restricted $i; done
./2017/Core/matlab/2017a.lua.bak_20171017143756
./2017/Core/starccm/12.04.011-R8.lua.bak_20180109180750
./2017/Core/starccm/12.04.011-R8.lua.bak_20180110035605
./2017/Core/ddt-gpu/7.1.lua.bak_20180406163205
./2017/Core/intel/2018.3.lua
./2017/Core/intel/2014.6.bak_20211119010632_29479
./2017/Core/intel/2017.1.lua
./2017/Core/intel/2017.5.lua
./2017/Core/intel/2019.3.lua
./2017/Core/intel/2014.6.lua
./2017/Core/intel/2016.4.lua
./2017/Core/cst/2017.bak_20180801142550
./2017/Core/cst/2018.bak_20180801142610
./2017/Core/cst/2020.bak_20200721005748_24034
./2017/Core/cst/2017.bak_20180801142224
./2017/Core/starccm-mixed/12.04.011.lua.bak_20180109180743
./2017/Core/starccm-mixed/12.04.011.lua.bak_20180110035555
but the intel modules depend on icc and ifort which use restricted.
IMHO the error of a missing license file should only be suppressed for intel
modules.
What your search can't find are modules of packages that have been installed into a user's home directory via Easybuild and that rely on the user having a file properly set up in ~/.licenses/<package>.lic
.
Intel is really the only case where the module is useful (and actually needed) without access to a license. Sure you can't compile but we have loads of packages that have been compiled w/ intel and therefore the module needs to be loaded.
@ostueker ok, yes I hadn't considered the case of sites without restricted but where users install in their $HOME. I can change the conditional to only apply to Intel and PGI. This way we get what we want for Intel/PGI, an error if CC_RESTRICTED=true (and those presumably know what to do), and no error if it's false.
Changed to explicitly check now, tested by setting export LMOD_PACKAGE_PATH=~/software-stack-config/lmod
, does the job with unset CC_RESTRICTED; export CC_CLUSTER=foo
LGTM
Deployed and tested on my laptop; with CC_CLUSTER=foo it no longer sets INTEL_LICENSE_FILE nor complains.
This is relevant to pgi and intel modules for which the license is irrelevant if the restricted repo isn't available. And there is no licensed software in soft.computecanada.ca, so for other software this doesn't trigger without restricted.