diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 09abf1fc1..40229c5ea 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -23,4 +23,5 @@ Refs NOAA-EMC/repo#5678 - [ ] C48mx500_3DVarAOWCDA - [ ] C48mx500_hybAOWCDA - [ ] C96C48_ufsgsi_hybatmDA +- [ ] C48_ufsenkf_atmDA - [ ] C96C48_hybatmDA diff --git a/ci/ci_tests.sh b/ci/ci_tests.sh index 8361c5153..8329f4d62 100644 --- a/ci/ci_tests.sh +++ b/ci/ci_tests.sh @@ -3,6 +3,7 @@ CI_TESTS=("atm_jjob" "C96C48_ufsgsi_hybatmDA" "C96C48_hybatmsnowDA" "C96_gcafs_cycled" + "C48_ufsenkf_atmDA" "C48mx500_3DVarAOWCDA" "C48mx500_hybAOWCDA" "C96C48_hybatmDA") diff --git a/ci/driver.sh b/ci/driver.sh index d214f4527..e6e45b348 100755 --- a/ci/driver.sh +++ b/ci/driver.sh @@ -210,6 +210,14 @@ for pr in $open_pr_list; do fi done + #TODO - remove logic that excludes C48_ufsenkf_atmDA on MSU after required data is staged + case ${TARGET} in + orion | hercules) + ci_test="C48_ufsenkf_atmDA" + ctest_regex_exclude+="${ctest_regex_exclude:+|}$ci_test" + ;; + esac + # setup run_ci.sh arguments to test in the Global Workflow and exclude chosen CI tests run_ci_cmd+=" -w" if [ -n "$ctest_regex_exclude" ]; then diff --git a/sorc/fv3-jedi b/sorc/fv3-jedi index c7d53f173..5fae40c7a 160000 --- a/sorc/fv3-jedi +++ b/sorc/fv3-jedi @@ -1 +1 @@ -Subproject commit c7d53f173ea8c915f69fcdf24ed468543aae804c +Subproject commit 5fae40c7acc921026fae3a22f9d2d3e46495b30e diff --git a/sorc/ioda b/sorc/ioda index 6eab16499..d34951a8f 160000 --- a/sorc/ioda +++ b/sorc/ioda @@ -1 +1 @@ -Subproject commit 6eab1649977a81129d5b3f0803571b747f286f09 +Subproject commit d34951a8f23b5f527222710d09b1e99642a1cd42 diff --git a/sorc/oops b/sorc/oops index cbbd6ea29..21ee5993f 160000 --- a/sorc/oops +++ b/sorc/oops @@ -1 +1 @@ -Subproject commit cbbd6ea293983729064c132a87ddff1abf1f92cf +Subproject commit 21ee5993f4b824f3cdbefed3660eec433fd4dcd4 diff --git a/sorc/ufo b/sorc/ufo index 7544ca8ff..87159ad96 160000 --- a/sorc/ufo +++ b/sorc/ufo @@ -1 +1 @@ -Subproject commit 7544ca8ff806a6370a04239830b8ca1dabac1bbb +Subproject commit 87159ad9648e648443133cc1ad4a89b48349cb51 diff --git a/sorc/vader b/sorc/vader index b6dab37d5..02dcfe926 160000 --- a/sorc/vader +++ b/sorc/vader @@ -1 +1 @@ -Subproject commit b6dab37d5de091472291ba05cc4c3a81b50f48c4 +Subproject commit 02dcfe9263acece3605f212ad975f55c9db24b9b diff --git a/test/gw-ci/CMakeLists.txt b/test/gw-ci/CMakeLists.txt index 7ed6e5186..854fc2a6e 100644 --- a/test/gw-ci/CMakeLists.txt +++ b/test/gw-ci/CMakeLists.txt @@ -85,11 +85,19 @@ function(add_task task_name test_prefix is_full_cycle HALF_CYCLE FULL_CYCLE pslo endif() else() if("${task_name}" STREQUAL "gdas_prep") - list(APPEND TEST_DEPENDS "${test_prefix}_gdas_fcst_${HALF_CYCLE}") - list(APPEND TEST_DEPENDS "${test_prefix}_gdas_atmos_prod_${HALF_CYCLE}") + if(NOT "${pslot}" STREQUAL "C48_ufsenkf_atmDA") + list(APPEND TEST_DEPENDS "${test_prefix}_gdas_fcst_${HALF_CYCLE}") + list(APPEND TEST_DEPENDS "${test_prefix}_gdas_atmos_prod_${HALF_CYCLE}") + else() + list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_epmn_${HALF_CYCLE}") + endif() elseif("${task_name}" STREQUAL "gcdas_prep") list(APPEND TEST_DEPENDS "${test_prefix}_gcdas_fcst_${HALF_CYCLE}") list(APPEND TEST_DEPENDS "${test_prefix}_gcdas_atmos_prod_${HALF_CYCLE}") + elseif("${task_name}" STREQUAL "gdas_fetchatmanlbias") + list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_epmn_${HALF_CYCLE}") + elseif("${task_name}" STREQUAL "gdas_prepatmanlbias") + list(APPEND TEST_DEPENDS "${test_prefix}_gdas_fetchatmanlbias_${FULL_CYCLE}") elseif("${task_name}" STREQUAL "gdas_anal") list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_epmn_${HALF_CYCLE}") list(APPEND TEST_DEPENDS "${test_prefix}_gdas_prep_${FULL_CYCLE}") @@ -159,6 +167,9 @@ function(add_task task_name test_prefix is_full_cycle HALF_CYCLE FULL_CYCLE pslo elseif("${task_name}" STREQUAL "enkfgdas_atmensanlinit") list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_epmn_${HALF_CYCLE}") list(APPEND TEST_DEPENDS "${test_prefix}_gdas_prep_${FULL_CYCLE}") + if("${pslot}" STREQUAL "C48_ufsenkf_atmDA") + list(APPEND TEST_DEPENDS "${test_prefix}_gdas_prepatmanlbias_${FULL_CYCLE}") + endif() elseif("${task_name}" STREQUAL "enkfgdas_atmensanlobs") list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_atmensanlinit_${FULL_CYCLE}") elseif("${task_name}" STREQUAL "enkfgdas_atmensanlsol") @@ -191,6 +202,8 @@ function(add_task task_name test_prefix is_full_cycle HALF_CYCLE FULL_CYCLE pslo list(APPEND TEST_DEPENDS "${test_prefix}_gdas_analcalc_${FULL_CYCLE}") list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_eupd_${FULL_CYCLE}") list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_esnowanl_${FULL_CYCLE}") + elseif("${pslot}" STREQUAL "C48_ufsenkf_atmDA") + list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_atmensanlfinal_${FULL_CYCLE}") else() list(APPEND TEST_DEPENDS "${test_prefix}_gdas_analcalc_${FULL_CYCLE}") list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_eupd_${FULL_CYCLE}") @@ -199,7 +212,7 @@ function(add_task task_name test_prefix is_full_cycle HALF_CYCLE FULL_CYCLE pslo list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_esfc_${FULL_CYCLE}") if("${pslot}" STREQUAL "C96C48_ufs_hybatmDA") list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_ecen_fv3jedi_${FULL_CYCLE}") - else() + elseif(NOT "${pslot}" STREQUAL "C48_ufsenkf_atmDA") list(APPEND TEST_DEPENDS "${test_prefix}_enkfgdas_ecmn_${FULL_CYCLE}") endif() elseif("${task_name}" STREQUAL "gdas_prepoceanobs") @@ -400,6 +413,29 @@ if (WORKFLOW_TESTS) add_cycling_tests(${pslot} ${YAML_PATH} ${HOMEgfs} ${WORKING_DIRECTORY} ${PROJECT_SOURCE_DIR} "${HALF_CYCLE_TASKS}" "${FULL_CYCLE_TASKS}") endif() # TEST_V18 + # JEDI EnKF DA C48 + # ----------------------------------- + if(${TEST_GFS18}) + set(pslot "C48_ufsenkf_atmDA") + set(YAML_PATH ${HOMEgfs}/dev/ci/cases/pr/${pslot}.yaml) + set(HALF_CYCLE_TASKS + "enkfgdas_stage_ic" + "enkfgdas_fcst" + "enkfgdas_epmn") + set(FULL_CYCLE_TASKS + "gdas_fetchatmanlbias" + "gdas_prep" + "gdas_prepatmanlbias" + "enkfgdas_atmensanlinit" + "enkfgdas_atmensanlobs" + "enkfgdas_atmensanlsol" + "enkfgdas_atmensanlfv3inc" + "enkfgdas_atmensanlfinal" + "enkfgdas_esfc" + "enkfgdas_fcst" + ) + add_cycling_tests(${pslot} ${YAML_PATH} ${HOMEgfs} ${WORKING_DIRECTORY} ${PROJECT_SOURCE_DIR} "${HALF_CYCLE_TASKS}" "${FULL_CYCLE_TASKS}") + endif() # TEST_V18 # Aero DA C96 # ----------------