christopher_maloney@colorado_edu
New Member
I am attempting to centralize a version of CESM2 on our local cluster so that individual users do not have to download their own copy of the model and instead we can have just one group version of the model. The obstacle that I am facing is how the Python wrappers in charge of setting case/output directories appear to ignore shell environment variables. So for example, in each user's bash shell, they have a 'CUSER' environment variable which is unique to each user (mine is CUSER = 'cmaloney').
In the 'config_machines.xml' file, where the various case directory are defined, I want make the paths look something like this:
<CIME_OUTPUT_ROOT>/scratch/project/central/$CUSER/CESM_runs<CIME_OUTPUT_ROOT>
However, when I set the path like shown above and build a case, CESM creates a directory called '$CUSER' in "scratch/project/central". Obviously this is problematic. For now I have the path looking like this:
<CIME_OUTPUT_ROOT>/scratch/project/central/cmaloney/CESM_runs<CIME_OUTPUT_ROOT>
where "cmaloney" is my personal directory on "/scratch/project/central". While this works for me, it won't work for other group members unless they download their own version of the model and change the 'cmaloney' portion of the path to their respective directory name. I'd like to work around this.
So my question is: Has anyone had any experience addressing this Python issue in CESM2? I am having difficulty locating which Python script that I need to modify to accept the environment variables. I will greatly appreciate any suggestions.
Thanks,
Chris
In the 'config_machines.xml' file, where the various case directory are defined, I want make the paths look something like this:
<CIME_OUTPUT_ROOT>/scratch/project/central/$CUSER/CESM_runs<CIME_OUTPUT_ROOT>
However, when I set the path like shown above and build a case, CESM creates a directory called '$CUSER' in "scratch/project/central". Obviously this is problematic. For now I have the path looking like this:
<CIME_OUTPUT_ROOT>/scratch/project/central/cmaloney/CESM_runs<CIME_OUTPUT_ROOT>
where "cmaloney" is my personal directory on "/scratch/project/central". While this works for me, it won't work for other group members unless they download their own version of the model and change the 'cmaloney' portion of the path to their respective directory name. I'd like to work around this.
So my question is: Has anyone had any experience addressing this Python issue in CESM2? I am having difficulty locating which Python script that I need to modify to accept the environment variables. I will greatly appreciate any suggestions.
Thanks,
Chris