diff --git a/payu/cli.py b/payu/cli.py index 6f60805b..745a2937 100644 --- a/payu/cli.py +++ b/payu/cli.py @@ -119,6 +119,12 @@ def set_env_vars(init_run=None, n_runs=None, lab_path=None, dir_path=None, if reproduce: payu_env_vars['PAYU_REPRODUCE'] = reproduce + # Pass through important module related environment variables + module_env_vars = ['MODULESHOME', 'MODULES_CMD', 'MODULEPATH', 'MODULEV'] + for var in module_env_vars: + if var in os.environ: + payu_env_vars[var] = os.environ[var] + return payu_env_vars diff --git a/payu/experiment.py b/payu/experiment.py index 9628ad47..b2bacd56 100644 --- a/payu/experiment.py +++ b/payu/experiment.py @@ -237,9 +237,11 @@ def load_modules(self): loaded_mods = os.environ.get('LOADEDMODULES', '').split(':') for mod in loaded_mods: - mod_base = mod.split('/')[0] - if mod_base not in core_modules: - envmod.module('unload', mod) + if len(mod) > 0: + print('mod '+mod) + mod_base = mod.split('/')[0] + if mod_base not in core_modules: + envmod.module('unload', mod) # Now load model-dependent modules for mod in self.modules: