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

Consolidate python configuration dictionaries #2839

Merged

Conversation

DavidHuber-NOAA
Copy link
Contributor

@DavidHuber-NOAA DavidHuber-NOAA commented Aug 16, 2024

Description

This modifies the way the config dictionary is constructed and referenced. Rather than updating a single configuration dictionary with each RUN, a RUN-based dictionary of config dictionaries is created and referenced by the appropriate RUN when calculating resources.

This also makes the methods that were hidden before #2727 hidden again.

Resolves #2783

Type of change

  • Maintenance (code refactor, clean-up, new CI test, etc.)

Change characteristics

  • Is this a breaking change (a change in existing functionality)? NO
  • Does this change require a documentation update? NO
  • Does this change require an update to any of the following submodules? NO

How has this been tested?

XMLs for all CI tests were identical to develop on

  • Orion
  • Hercules
  • Hera
  • WCOSS2

Checklist

  • 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
  • My changes generate no new warnings
  • New and existing tests pass with my changes

@DavidHuber-NOAA
Copy link
Contributor Author

I still need to repeat the XML tests on WCOSS2, Hera, and Hercules, but this should be ready for review. When ready, I don't think this needs to go through CI or, at most, just through the setup stage.

* origin/develop:
  support ATM forecast only on Azure (NOAA-EMC#2827)
  Convert staging job to python and yaml (NOAA-EMC#2651)
  Fixed test on UNAVAILBLE in python Rocoto check (NOAA-EMC#2842)
@DavidHuber-NOAA
Copy link
Contributor Author

I was able to repeat the XML tests on all platforms. All were identical. This PR is now ready to be reviewed.

@DavidHuber-NOAA
Copy link
Contributor Author

@aerorahul I just recalled the conversation yesterday about the _ dictionary entry. I will update that presently and retest on Hera.

@DavidHuber-NOAA
Copy link
Contributor Author

@aerorahul The no-RUN configs key has been renamed now.

# Save the configuration so we can source the config files when
# determining task resources
self.conf = conf
self._base = conf.parse_config('config.base')
Copy link
Contributor

Choose a reason for hiding this comment

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

Don't like making this an object field. This version should not be needed beyond initialization. All later uses should be using self.configs[run]['base'].

Suggested change
self._base = conf.parse_config('config.base')
base = conf.parse_config('config.base')

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Alright, I removed the _base attribute from the AppConfig class and subclasses. _no_run is no longer referenced anywhere outside of _init_finalize. This is still required to determine which runs are valid for the experiment.

workflow/applications/applications.py Show resolved Hide resolved
workflow/applications/applications.py Outdated Show resolved Hide resolved
workflow/rocoto/tasks.py Show resolved Hide resolved
* origin/develop:
  Fix gdas build on Gaea and add Gaea to available CI list (NOAA-EMC#2857)
  Support ATM forecast only on Google (NOAA-EMC#2832)
  Add GEFS C48 support on AWS (NOAA-EMC#2818)
  Update omega calculation (NOAA-EMC#2751)
  Add snow DA update and recentering for the EnKF forecasts (NOAA-EMC#2690)
* origin/develop:
  Add 3 and 9 hr increment files to IC staging (NOAA-EMC#2876)
  Add diffusion/diag B for aerosol DA and some other needed changes (NOAA-EMC#2738)
  Correct ocean `MOM.res_#` stage copy (NOAA-EMC#2868)
  Support coupling on AWS (NOAA-EMC#2859)
  Add JEDI ATM lgetkf observer and solver jobs (NOAA-EMC#2833)
@WalterKolczynski-NOAA
Copy link
Contributor

Deferring any final elimination of the no_run to a future PR.

@WalterKolczynski-NOAA WalterKolczynski-NOAA added the CI-Wcoss2-Ready **CM use only** PR is ready for CI testing on WCOSS label Sep 4, 2024
@emcbot emcbot added CI-Wcoss2-Building **Bot use only** CI testing is cloning/building on WCOSS and removed CI-Wcoss2-Ready **CM use only** PR is ready for CI testing on WCOSS labels Sep 4, 2024
@emcbot
Copy link

emcbot commented Sep 4, 2024

CI Update on Wcoss2 at 09/04/24 02:35:15 AM
============================================
Cloning and Building global-workflow PR: 2839
with PID: 202173 on host: clogin03

@emcbot emcbot added CI-Wcoss2-Running **Bot use only** CI testing on WCOSS for this PR is in-progress and removed CI-Wcoss2-Building **Bot use only** CI testing is cloning/building on WCOSS labels Sep 4, 2024
@emcbot
Copy link

emcbot commented Sep 4, 2024

Automated global-workflow Testing Results:

Machine: Wcoss2
Start: Wed Sep  4 02:39:51 UTC 2024 on clogin03
---------------------------------------------------
Build: Completed at 09/04/24 03:20:46 AM
Case setup: Completed for experiment C48_ATM_92dfc754
Case setup: Skipped for experiment C48mx500_3DVarAOWCDA_92dfc754
Case setup: Skipped for experiment C48_S2SWA_gefs_92dfc754
Case setup: Completed for experiment C48_S2SW_92dfc754
Case setup: Completed for experiment C96_atm3DVar_extended_92dfc754
Case setup: Skipped for experiment C96_atm3DVar_92dfc754
Case setup: Completed for experiment C96C48_hybatmaerosnowDA_92dfc754
Case setup: Completed for experiment C96C48_hybatmDA_92dfc754
Case setup: Completed for experiment C96C48_ufs_hybatmDA_92dfc754

@WalterKolczynski-NOAA WalterKolczynski-NOAA added CI-Hercules-Ready **CM use only** PR is ready for CI testing on Hercules and removed CI-Wcoss2-Running **Bot use only** CI testing on WCOSS for this PR is in-progress labels Sep 4, 2024
@emcbot emcbot added CI-Hercules-Building **Bot use only** CI testing is cloning/building on Hercules and removed CI-Hercules-Ready **CM use only** PR is ready for CI testing on Hercules CI-Hercules-Building **Bot use only** CI testing is cloning/building on Hercules labels Sep 4, 2024
@WalterKolczynski-NOAA WalterKolczynski-NOAA added the CI-Wcoss2-Ready **CM use only** PR is ready for CI testing on WCOSS label Sep 9, 2024
@emcbot emcbot added CI-Orion-Building **Bot use only** CI testing is cloning/building on Orion CI-Hera-Building **Bot use only** CI testing is cloning/building on Hera CI-Wcoss2-Building **Bot use only** CI testing is cloning/building on WCOSS and removed CI-Orion-Ready **CM use only** PR is ready for CI testing on Orion CI-Hera-Ready **CM use only** PR is ready for CI testing on Hera CI-Wcoss2-Ready **CM use only** PR is ready for CI testing on WCOSS labels Sep 9, 2024
@emcbot
Copy link

emcbot commented Sep 9, 2024

CI Update on Wcoss2 at 09/09/24 04:28:07 PM
============================================
Cloning and Building global-workflow PR: 2839
with PID: 204754 on host: dlogin03

@emcbot emcbot added CI-Wcoss2-Running **Bot use only** CI testing on WCOSS for this PR is in-progress and removed CI-Wcoss2-Building **Bot use only** CI testing is cloning/building on WCOSS labels Sep 9, 2024
@emcbot
Copy link

emcbot commented Sep 9, 2024

Automated global-workflow Testing Results:

Machine: Wcoss2
Start: Mon Sep  9 16:31:28 UTC 2024 on dlogin03
---------------------------------------------------
Build: Completed at 09/09/24 05:19:50 PM
Case setup: Completed for experiment C48_ATM_1efa7c59
Case setup: Skipped for experiment C48mx500_3DVarAOWCDA_1efa7c59
Case setup: Skipped for experiment C48_S2SWA_gefs_1efa7c59
Case setup: Completed for experiment C48_S2SW_1efa7c59
Case setup: Completed for experiment C96_atm3DVar_extended_1efa7c59
Case setup: Skipped for experiment C96_atm3DVar_1efa7c59
Case setup: Completed for experiment C96C48_hybatmaerosnowDA_1efa7c59
Case setup: Completed for experiment C96C48_hybatmDA_1efa7c59
Case setup: Completed for experiment C96C48_ufs_hybatmDA_1efa7c59

@emcbot emcbot added CI-Hera-Running **Bot use only** CI testing on Hera for this PR is in-progress CI-Orion-Running **Bot use only** CI testing on Orion for this PR is in-progress CI-Hera-Passed **Bot use only** CI testing on Hera for this PR has completed successfully and removed CI-Hera-Building **Bot use only** CI testing is cloning/building on Hera CI-Orion-Building **Bot use only** CI testing is cloning/building on Orion CI-Hera-Running **Bot use only** CI testing on Hera for this PR is in-progress labels Sep 9, 2024
@emcbot
Copy link

emcbot commented Sep 9, 2024

CI Passed on Hera in Build# 4
Built and ran in directory /scratch1/NCEPDEV/global/CI/2839


Experiment C48_ATM_1efa7c59 Completed 1 Cycles: *SUCCESS* at Mon Sep  9 19:02:46 UTC 2024
Experiment C48mx500_3DVarAOWCDA_1efa7c59 Completed 2 Cycles: *SUCCESS* at Mon Sep  9 19:02:49 UTC 2024
Experiment C96C48_hybatmDA_1efa7c59 Completed 3 Cycles: *SUCCESS* at Mon Sep  9 20:18:12 UTC 2024
Experiment C96_atm3DVar_1efa7c59 Completed 3 Cycles: *SUCCESS* at Mon Sep  9 20:23:02 UTC 2024
Experiment C96C48_ufs_hybatmDA_1efa7c59 Completed 2 Cycles: *SUCCESS* at Mon Sep  9 20:36:33 UTC 2024
Experiment C48_S2SWA_gefs_1efa7c59 Completed 1 Cycles: *SUCCESS* at Mon Sep  9 20:36:58 UTC 2024
Experiment C48_S2SW_1efa7c59 Completed 1 Cycles: *SUCCESS* at Mon Sep  9 20:54:17 UTC 2024
Experiment C96C48_hybatmaerosnowDA_1efa7c59 Completed 3 Cycles: *SUCCESS* at Mon Sep  9 21:14:35 UTC 2024

@emcbot emcbot added CI-Orion-Passed **Bot use only** CI testing on Orion for this PR has completed successfully and removed CI-Orion-Running **Bot use only** CI testing on Orion for this PR is in-progress labels Sep 9, 2024
@emcbot
Copy link

emcbot commented Sep 9, 2024

CI Passed on Orion in Build# 3
Built and ran in directory /work2/noaa/stmp/CI/ORION/2839


Experiment C48_ATM_1efa7c59 Completed 1 Cycles: *SUCCESS* at Mon Sep  9 02:46:50 PM CDT 2024
Experiment C96C48_hybatmDA_1efa7c59 Completed 3 Cycles: *SUCCESS* at Mon Sep  9 04:06:37 PM CDT 2024
Experiment C96_atm3DVar_1efa7c59 Completed 3 Cycles: *SUCCESS* at Mon Sep  9 04:12:45 PM CDT 2024
Experiment C48_S2SWA_gefs_1efa7c59 Completed 1 Cycles: *SUCCESS* at Mon Sep  9 04:20:16 PM CDT 2024
Experiment C48_S2SW_1efa7c59 Completed 1 Cycles: *SUCCESS* at Mon Sep  9 04:31:03 PM CDT 2024

@emcbot emcbot added CI-Wcoss2-Passed **Bot use only** CI testing on WCOSS for this PR has completed successfully and removed CI-Wcoss2-Running **Bot use only** CI testing on WCOSS for this PR is in-progress labels Sep 10, 2024
@emcbot
Copy link

emcbot commented Sep 10, 2024

All CI Test Cases Passed on Wcoss2:

Experiment C48_ATM_1efa7c59 *** SUCCESS *** at 09/09/24 06:57:12 PM
Experiment C48_S2SW_1efa7c59 *** SUCCESS *** at 09/09/24 07:12:12 PM
Experiment C96C48_hybatmDA_1efa7c59 *** SUCCESS *** at 09/09/24 07:57:23 PM
Experiment C96C48_hybatmaerosnowDA_1efa7c59 *** SUCCESS *** at 09/09/24 08:51:25 PM
Experiment C96C48_ufs_hybatmDA_1efa7c59 *** SUCCESS *** at 09/09/24 09:51:19 PM
Experiment C96_atm3DVar_extended_1efa7c59 *** SUCCESS *** at 09/10/24 06:27:35 AM

@WalterKolczynski-NOAA WalterKolczynski-NOAA merged commit b443915 into NOAA-EMC:develop Sep 10, 2024
3 of 4 checks passed
@emcbot emcbot added the CI-Wcoss2-Failed **Bot use only** CI testing on WCOSS for this PR has failed label Sep 18, 2024
@emcbot
Copy link

emcbot commented Sep 18, 2024

Experiment C96_atm3DVar_extended_92dfc754 UNKNOWN on Wcoss2 at 09/18/24 02:00:29 PM

Error logs:


Follow link here to view the contents of the above file(s): (link)

@DavidHuber-NOAA DavidHuber-NOAA deleted the fix/early_run_configs branch November 4, 2024 16:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI-Hera-Passed **Bot use only** CI testing on Hera for this PR has completed successfully CI-Hercules-Passed **Bot use only** CI testing on Hercules for this PR has completed successfully CI-Orion-Passed **Bot use only** CI testing on Orion for this PR has completed successfully CI-Wcoss2-Failed **Bot use only** CI testing on WCOSS for this PR has failed CI-Wcoss2-Passed **Bot use only** CI testing on WCOSS for this PR has completed successfully
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Consolidate Python resource structure
3 participants