diff --git a/cime_config/cesm/machines/config_batch.xml b/cime_config/cesm/machines/config_batch.xml index 9075edd83ae..1d4752bb677 100644 --- a/cime_config/cesm/machines/config_batch.xml +++ b/cime_config/cesm/machines/config_batch.xml @@ -75,6 +75,7 @@ -j oe -m {{ mail_options }} + -V diff --git a/cime_config/cesm/machines/config_machines.xml b/cime_config/cesm/machines/config_machines.xml index bc3cff7a0ef..1d4e3b786d4 100644 --- a/cime_config/cesm/machines/config_machines.xml +++ b/cime_config/cesm/machines/config_machines.xml @@ -506,10 +506,13 @@ - debug + regular + regular + regular + debug - 01:15:00 + 00:30:00 01:50:00 05:00:00 @@ -999,6 +1002,7 @@ mickelso -at- mcs.anl.gov 4 64 + 8 TRUE diff --git a/scripts/Testing/Testcases/PET_build.csh b/scripts/Testing/Testcases/PET_build.csh index 7aa5c8f8448..f54499a9e63 100644 --- a/scripts/Testing/Testcases/PET_build.csh +++ b/scripts/Testing/Testcases/PET_build.csh @@ -26,35 +26,35 @@ set NTHRDS_CPL = `./xmlquery NTHRDS_CPL -value` if ( $NTHRDS_ATM <= 1) then echo "WARNING: component ATM is not threaded, changing NTHRDS_ATM to 2" - xmlchange -file env_mach_pes.xml -id NTHRDS_ATM -val 2 + ./xmlchange -file env_mach_pes.xml -id NTHRDS_ATM -val 2 endif if ( $NTHRDS_LND <= 1) then echo "WARNING: component LND is not threaded, changing NTHRDS_LND to 2" - xmlchange -file env_mach_pes.xml -id NTHRDS_LND -val 2 + ./xmlchange -file env_mach_pes.xml -id NTHRDS_LND -val 2 endif if ( $NTHRDS_ROF <= 1) then echo "WARNING: component ROF is not threaded, changing NTHRDS_ROF to 2" - xmlchange -file env_mach_pes.xml -id NTHRDS_ROF -val 2 + ./xmlchange -file env_mach_pes.xml -id NTHRDS_ROF -val 2 endif if ( $NTHRDS_ICE <= 1) then echo "WARNING: component ICE is not threaded, changing NTHRDS_ICE to 2" - xmlchange -file env_mach_pes.xml -id NTHRDS_ICE -val 2 + ./xmlchange -file env_mach_pes.xml -id NTHRDS_ICE -val 2 endif if ( $NTHRDS_OCN <= 1) then echo "WARNING: component OCN is not threaded, changing NTHRDS_OCN to 2" - xmlchange -file env_mach_pes.xml -id NTHRDS_OCN -val 2 + ./xmlchange -file env_mach_pes.xml -id NTHRDS_OCN -val 2 endif if ( $NTHRDS_GLC <= 1) then echo "WARNING: component GLC is not threaded, changing NTHRDS_GOC to 2" - xmlchange -file env_mach_pes.xml -id NTHRDS_GLC -val 2 + ./xmlchange -file env_mach_pes.xml -id NTHRDS_GLC -val 2 endif if ( $NTHRDS_CPL <= 1) then echo "WARNING: component CPL is not threaded, changing NTHRDS_CPL to 2" - xmlchange -file env_mach_pes.xml -id NTHRDS_CPL -val 2 + ./xmlchange -file env_mach_pes.xml -id NTHRDS_CPL -val 2 endif if ( $NTHRDS_WAV <= 1) then echo "WARNING: component WAV is not threaded, changing NTHRDS_WAV to 2" - xmlchange -file env_mach_pes.xml -id NTHRDS_WAV -val 2 + ./xmlchange -file env_mach_pes.xml -id NTHRDS_WAV -val 2 endif cp -f env_mach_pes.xml env_mach_pes.xml.1 diff --git a/scripts/create_test b/scripts/create_test index fac1f871fc3..8ffe3eade1c 100755 --- a/scripts/create_test +++ b/scripts/create_test @@ -1392,13 +1392,13 @@ sub testcaseSetup #&Debug("XMLVARS:"); #&Debug( eval { Dumper \%xmlvars} ); - chdir($caseroot); - my $cwd = getcwd(); chdir ($caseroot); foreach my $attr(keys %xmlvars) { + &Debug("attr $attr $xmlvars{$attr}\n"); $xmlvars{$attr} = SetupTools::expand_xml_var($xmlvars{$attr}, \%xmlvars); + &Debug("setting $xmlvars{$attr}\n"); } chdir ($cwd); @@ -1419,6 +1419,7 @@ sub testcaseSetup } print "Setting up test case \n"; + chdir ($caseroot); $sysmod = "./case_setup"; &Debug("sysmod is $sysmod"); system($sysmod) == 0 or warn "$sysmod failed: $?\n"; diff --git a/utils/perl5lib/Config/SetupTools.pm b/utils/perl5lib/Config/SetupTools.pm index 6ae64625c55..52aeee43b7f 100644 --- a/utils/perl5lib/Config/SetupTools.pm +++ b/utils/perl5lib/Config/SetupTools.pm @@ -51,13 +51,13 @@ sub expand_env { my ($value, $xmlvars_ref) = @_; - if ($value =~ /\$ENV\{*([\w_]+)}*(.*)$/) { + if ($value =~ /\$\{*([\w_]+)}*(.*)$/) { my $subst = $xmlvars_ref->{$1}; $subst = $ENV{$1} unless defined $subst; - $value =~ s/\$ENV\{*${1}\}*/$subst/g; + $value =~ s/\$\{*${1}\}*/$subst/g; } - if ($value =~ /\$ENV\{*[\w_]+\}*.*$/) { + if ($value =~ /\$\{*[\w_]+\}*.*$/) { $value = expand_env($value, $xmlvars_ref) } return $value; @@ -68,6 +68,11 @@ sub expand_xml_var { my ($value, $xmlvars_ref) = @_; + if($value =~ /\$ENV\{(.*)\}/){ + my $subst = $ENV{$1}; + die "No environment variable found for $1" unless(defined $subst); + $value =~ s/\$ENV\{*${1}\}/$subst/g; + } if ($value =~ /\$\{*([\w_]+)}*(.*)$/) { my $found_xml; while ( my ($key, $subst) = each(%$xmlvars_ref) ) {