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

Run WE2E script checks for ICS and LBCS contain flawed logic #364

Closed
mkavulich opened this issue Sep 21, 2022 · 1 comment
Closed

Run WE2E script checks for ICS and LBCS contain flawed logic #364

mkavulich opened this issue Sep 21, 2022 · 1 comment
Labels
bug Something isn't working

Comments

@mkavulich
Copy link
Collaborator

mkavulich commented Sep 21, 2022

Original issue opened by @christinaholtNOAA migrated from regional_workflow repository: ufs-community/regional_workflow#807

Expected behavior

The EXTRN_MDL_SYSBASEDIR_* directories on the platforms are not used in the test framework, except when it is set to a special string set_to_non_default_location_in_testing_script and the value is set in the machine config file. So if EXTRN_MDL_SYSBASEDIR_LBCS or EXTRN_MDL_SYSBASEDIR_ICS does not exist or is not readable, the run_WE2E_tests.sh script should still succeed.

Current behavior

The check for the existence of the path that is not used -- and may not exist -- hampers the true intent of the test in question if there is user-staged file paths, for example, or if the files should be pulled from AWS or HPSS.

Machines affected

None currently, but only because a temporary fix has been implemented to remove the specification of EXTRN_MDL_SYSBASEDIR_LBCS and EXTRN_MDL_SYSBASEDIR_ICS where this issue has occurred.

Steps To Reproduce

  1. Set a value for EXTRN_MDL_SYSBASEDIR_ICS in a machine file that does not exist, or isn't readable.
  • This is done by setting 'EXTRN_MDL_SYSBASEDIR_ICS=/some/directory/that/doesnt/exist' in your platform's machine file
  1. Run tests/WE2E/run_WE2E_tests.sh on that machine
  2. Observe a failure that looks like this:
ERROR:
 From script: “run_WE2E_tests.sh”
 Full path to script: “/scratch1/BMC/zrtrr/rrfs_ci/autoci/pr/944949396/20220617165015/ufs-srweather-app/regional_workflow/tests/WE2E/test_configs/wflow_features/run_WE2E_tests.sh”
The non-default location specified by EXTRN_MDL_SYSBASEDIR_ICS does not
exist or is not a directory:
 EXTRN_MDL_NAME_ICS = “FV3GFS”
Exiting with nonzero status.

Possible Implementation

An alternative solution is to only check that the file path exists if it is set as the location needed for the test framework.

I suggest that additional low-cost "platform tests" be added to the testing framework and that the only thing they do is check that any path set in the machine config file is verified to exist. That will give us some heads up that something on the machine changes, but won't get in the way of the WE2E tests when it is mostly irrelevant.

@mkavulich
Copy link
Collaborator Author

This has been resolved at some point; I am no longer able to replicate this error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant