diff --git a/templates/common/build_icon.sh b/templates/common/build_icon.sh
index ce8c79927fdd37bbe191d05351a681df7c52d4f2..9892cca35107d068f76b75fa1f66dd6a0fd322e3 100644
--- a/templates/common/build_icon.sh
+++ b/templates/common/build_icon.sh
@@ -4,6 +4,9 @@ WORKDIR=%HPCROOTDIR%
 ICON_VERSION=%ICON.VERSION%
 COMPILER=%SPACK.COMPILER%
 
+MODULES="%MODULES%"
+if [ ! -z "${MODULES}" ]; then module load $(python -c "print(' '.join(${MODULES}))"); fi
+
 # If the workdir directory does not exist create it
 if [ ! -d ${WORKDIR} ]; then
   mkdir -p ${WORKDIR}
diff --git a/templates/common/build_python_environment.sh b/templates/common/build_python_environment.sh
index e671ea8b7442105ba20c4719acbdc6855d55ded7..6eca487c4694903320e4d17fabae5f6e3a4a4c4e 100644
--- a/templates/common/build_python_environment.sh
+++ b/templates/common/build_python_environment.sh
@@ -7,6 +7,10 @@ SPACK_BRANCH=%SPACK.BRANCH%
 SPACK_COMPILER=%SPACK.COMPILER%
 
 PYTHON_VERSION=%PYTHON_ENVIRONMENT.PYTHON_VERSION%
+
+MODULES="%MODULES%"
+if [ ! -z "${MODULES}" ]; then module load $(python -c "print(' '.join(${MODULES}))"); fi
+
 # Go to the working directory
 cd ${WORKDIR}