Consolidate load_*_modules scripts into a generic load_modules.sh script#4126
Merged
DavidHuber-NOAA merged 16 commits intoOct 8, 2025
Merged
Conversation
- Created new dev/ush/load_modules.sh with support for run, gsi, verif, ufsda, ufswm, setup module types - Updated link_workflow.sh to link new script as load_fv3gfs_modules.sh for backwards compatibility - Updated all 99 job files in dev/jobs/ to use new consolidated script with appropriate module type arguments - Script includes automatic fallback to gw_run module when specific module type is not available on a platform - Preserves all environment variables and special handling from original scripts Co-authored-by: DavidHuber-NOAA <69919478+DavidHuber-NOAA@users.noreply.github.com>
Co-authored-by: DavidHuber-NOAA <69919478+DavidHuber-NOAA@users.noreply.github.com>
…ompatibility Co-authored-by: DavidHuber-NOAA <69919478+DavidHuber-NOAA@users.noreply.github.com>
Co-authored-by: DavidHuber-NOAA <69919478+DavidHuber-NOAA@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Consolidate the load_*_modules scripts into a generic script
Consolidate load_*_modules scripts into a generic load_modules.sh script
Oct 6, 2025
DavidHuber-NOAA
requested changes
Oct 6, 2025
- Replace large case block with simpler logic: set target_module to gw_${MODULE_TYPE}.${MACHINE_ID}, then check if module exists and fall back to gw_run if not
- Add else block with FATAL ERROR when target_module cannot be determined
- Remove load_fv3gfs_modules.sh symlink creation from link_workflow.sh as it's no longer needed
Co-authored-by: DavidHuber-NOAA <69919478+DavidHuber-NOAA@users.noreply.github.com>
…4e-fc40-4058-a3f5-65822cd61788
Contributor
|
All CI tests ran successfully on Ursa. Opening for review. |
DavidHuber-NOAA
approved these changes
Oct 7, 2025
Contributor
DavidHuber-NOAA
left a comment
There was a problem hiding this comment.
Clearing my review.
Contributor
TerrenceMcGuinness-NOAA
previously approved these changes
Oct 7, 2025
aerorahul
previously approved these changes
Oct 7, 2025
Contributor
aerorahul
left a comment
There was a problem hiding this comment.
Looks good, but leaving a few suggestions that should not alter results.
Co-authored-by: Rahul Mahajan <aerorahul@users.noreply.github.com>
cf3a427
aerorahul
requested changes
Oct 8, 2025
aerorahul
approved these changes
Oct 8, 2025
Contributor
aerorahul
left a comment
There was a problem hiding this comment.
Sorry for the back and forth, but this looks good.
Thanks!
Contributor
|
Merging based on successful tests on Ursa. |
weihuang-jedi
added a commit
to NOAA-EPIC/global-workflow-cloud
that referenced
this pull request
Oct 9, 2025
…into feature/adjust_tasks_per_node_layout * 'develop' of github.com:NOAA-EPIC/global-workflow-cloud: Ctest case updates (NOAA-EMC#4118) Consolidate load_*_modules scripts into a generic load_modules.sh script (NOAA-EMC#4126) Updates for Gaea C6 following OS upgrade (NOAA-EMC#4110)
weihuang-jedi
added a commit
to NOAA-EPIC/global-workflow-cloud
that referenced
this pull request
Nov 5, 2025
…NOAA-EPIC/global-workflow-cloud into feature/use_container_spack-stack-1.9.2 * 'feature/use_container_spack-stack-1.9.2' of github.com:NOAA-EPIC/global-workflow-cloud: remove env/*.container testing on AWS no need to save to repo, as it is a link add PYCMD merge develop change in Consolidate JEDI-based atmospheric analysis task configuration YAMLs and create new Analysis class (NOAA-EMC#4080) Ctest case updates (NOAA-EMC#4118) using PYCMD fix archive script Consolidate load_*_modules scripts into a generic load_modules.sh script (NOAA-EMC#4126) Updates for Gaea C6 following OS upgrade (NOAA-EMC#4110) combine few scripts to decrease numbers reverse to GW repo code, and new way to handle jobs scripts Correct parametric and ensemble background error statistics filenames in marine DA (NOAA-EMC#4120)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
✅ Consolidate load_*_modules scripts into a generic script - COMPLETE
All Acceptance Criteria Met
load_*_modules.shscripts do.load_*_modules.share set in the new script based on application.Implementation Summary
Created new consolidated module loading script:
dev/ush/load_modules.sh- Single script to replace 5 separate module loading scriptsrun,gsi,verif,ufsda,ufswm,setuprunif no argument providedgw_runwhen specific module type not available on a platformmodule is-availcommand--evaand--gdasoptions for ufsdaMaintained backwards compatibility:
Updated all job files (91 total):
source "${HOMEgfs}/dev/ush/load_modules.sh" runsource "${HOMEgfs}/dev/ush/load_modules.sh" gsisource "${HOMEgfs}/dev/ush/load_modules.sh" verifsource "${HOMEgfs}/dev/ush/load_modules.sh" ufsdasource "${HOMEgfs}/dev/ush/load_modules.sh" ufswmRecent Changes (addressing review feedback)
target_module="gw_${MODULE_TYPE}.${MACHINE_ID}"and automatically falls back togw_runif module not availableload_fv3gfs_modules.shsymlink creation fromlink_workflow.shas it's no longer neededKey Features
Testing Results
Benefits
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.