Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CTests extended validation for C48_ATM and staged C48_S2SW for gfs_fcst and gfs_atmos #3256

Open
wants to merge 215 commits into
base: develop
Choose a base branch
from

Conversation

TerrenceMcGuinness-NOAA
Copy link
Collaborator

@TerrenceMcGuinness-NOAA TerrenceMcGuinness-NOAA commented Jan 24, 2025

Description

This PR extends the CTest Functional Tests:

  • Added output_files for C48_ATM for the validation step
  • Added two new JJOB Cases for C48_S2SW
    • gfs_fcts_seg0
    • gfs_atmos_prod_f000-f003

Change characteristics

  • Is this a breaking change (a change in existing functionality)? NO
  • Does this change require a documentation update? YES (updated README.md in the ctest directory)
  • Does this change require an update to any of the following submodules? NO

How has this been tested?

NOTE: The system is only supported on Orion where the input files are currently staged.

Also requires the user to have rocotoboot (dryrun version) the users $PATH (or in their $HOME/bin)

mterry (orion-login-2) ctests (ctests_extended) $ mkdir build

mterry (orion-login-2) ctests (ctests_extended) $ cd build

mterry (orion-login-2) build (ctests_extended) $ cmake ../.. -DICSDIR_ROOT=/work/noaa/global/glopara/data/ICSDIR -DHPC_ACCOUNT=nems -DSTAGED_TESTS_DIR=/work/noaa/stmp/GFS_CI_ROOT/ORION/STAGED_TESTS_DIR
-- gw: global-workflow baselines will be used from: '/work2/noaa/global/mterry/global-workflow_forked'
-- gw: global-workflow tests will be run at: '/work2/noaa/global/mterry/global-workflow_forked/ctests/build/ctests/RUNTESTS'
-- gw: global-workflow tests will use the allocation: 'nems'
-- gw: global-workflow tests will use ICSDIR_ROOT: '/work/noaa/global/glopara/data/ICSDIR'
-- gw: global-workflow tests will use staged data from:  '/work/noaa/stmp/GFS_CI_ROOT/ORION/STAGED_TESTS_DIR'
-- Configuring done
-- Generating done
-- Build files have been written to: /work2/noaa/global/mterry/global-workflow_forked/ctests/build

mterry (orion-login-2) build (ctests_extended) $ ctest -N
Test project /work2/noaa/global/mterry/global-workflow_forked/ctests/build
  Test  #1: test_C48_ATM_gfs_fcst_seg0_setup
  Test  #2: test_C48_ATM_gfs_fcst_seg0_stage
  Test  #3: test_C48_ATM_gfs_fcst_seg0_execute
  Test  #4: test_C48_ATM_gfs_fcst_seg0_validate
  Test  #5: test_C48_S2SW_gfs_fcst_seg0_setup
  Test  #6: test_C48_S2SW_gfs_fcst_seg0_stage
  Test  #7: test_C48_S2SW_gfs_fcst_seg0_execute
  Test  #8: test_C48_S2SW_gfs_fcst_seg0_validate
  Test  #9: test_C48_S2SW_gfs_atmos_prod_f000-f003_setup
  Test #10: test_C48_S2SW_gfs_atmos_prod_f000-f003_stage
  Test #11: test_C48_S2SW_gfs_atmos_prod_f000-f003_execute
  Test #12: test_C48_S2SW_gfs_atmos_prod_f000-f003_validate

Total Tests: 12

mterry (orion-login-2) build (ctests_extended) $ ctest -L C48_S2SW
Test project /work2/noaa/global/mterry/global-workflow_forked/ctests/build
    Start  5: test_C48_S2SW_gfs_fcst_seg0_setup
1/8 Test  #5: test_C48_S2SW_gfs_fcst_seg0_setup .................   Passed   24.41 sec
    Start  6: test_C48_S2SW_gfs_fcst_seg0_stage
2/8 Test  #6: test_C48_S2SW_gfs_fcst_seg0_stage .................   Passed    8.63 sec

Checklist

  • Any dependent changes have been merged and published
  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have documented my code, including function, input, and output descriptions
  • My changes generate no new warnings
  • New and existing tests pass with my changes
  • This change is covered by an existing CI test or a new one has been added
  • Any new scripts have been added to the .github/CODEOWNERS file with owners
  • I have made corresponding changes to the system documentation if necessary

Terry McGUinness and others added 30 commits December 6, 2024 10:55
@TerrenceMcGuinness-NOAA TerrenceMcGuinness-NOAA changed the title CTests extended - Added validation files for C48_ATM and staged C48_S2SW for gfs_fcst and gfs_atmos CTests extended validation for C48_ATM and staged C48_S2SW for gfs_fcst and gfs_atmos Jan 24, 2025
Copy link
Contributor

@aerorahul aerorahul left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good. just a few minor comments.

ctests/scripts/validate.py Outdated Show resolved Hide resolved
ctests/scripts/validate.py Outdated Show resolved Hide resolved
ctests/scripts/validate.py Outdated Show resolved Hide resolved
ctests/scripts/validate.py Outdated Show resolved Hide resolved
ctests/scripts/validate.py Outdated Show resolved Hide resolved
ctests/scripts/validate.py Outdated Show resolved Hide resolved
Copy link
Collaborator Author

@TerrenceMcGuinness-NOAA TerrenceMcGuinness-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Commit changes from review for datetime updates in the python scripts

Copy link
Contributor

@WalterKolczynski-NOAA WalterKolczynski-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just whitespace and a small bit of documentation.

{% set TEST_DATE_offset = TEST_DATE | add_to_datetime(H_timedelta) %}

{% set cyc = TEST_DATE | strftime('%H') %}
{% set cyc_offset = TEST_DATE_offset | strftime('%H') %}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
{% set cyc_offset = TEST_DATE_offset | strftime('%H') %}
{% set cyc_offset = TEST_DATE_offset | strftime('%H') %}

{% set cyc_offset = TEST_DATE_offset | strftime('%H') %}

{% set PDY = TEST_DATE | to_YMD %}
{% set PDY_offset = TEST_DATE_offset | to_YMD %}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
{% set PDY_offset = TEST_DATE_offset | to_YMD %}
{% set PDY_offset = TEST_DATE_offset | to_YMD %}

{% set TEST_DATE_offset = TEST_DATE | add_to_datetime(H_timedelta) %}

{% set cyc = TEST_DATE | strftime('%H') %}
{% set cyc_offset = TEST_DATE_offset | strftime('%H') %}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
{% set cyc_offset = TEST_DATE_offset | strftime('%H') %}
{% set cyc_offset = TEST_DATE_offset | strftime('%H') %}

{% set cyc_offset = TEST_DATE_offset | strftime('%H') %}

{% set PDY = TEST_DATE | to_YMD %}
{% set PDY_offset = TEST_DATE_offset | to_YMD %}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
{% set PDY_offset = TEST_DATE_offset | to_YMD %}
{% set PDY_offset = TEST_DATE_offset | to_YMD %}

ctests/cases/C48_S2SW_gfs_fcst_seg0.yaml Outdated Show resolved Hide resolved
ctests/cases/C48_S2SW_gfs_fcst_seg0.yaml Outdated Show resolved Hide resolved
ctests/scripts/validate.py Show resolved Hide resolved
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI/CD Issue related to CI/CD
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants