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

StatAnalysis - Support setting multiples jobs #1842

Closed
8 of 22 tasks
georgemccabe opened this issue Sep 28, 2022 · 0 comments · Fixed by #1869
Closed
8 of 22 tasks

StatAnalysis - Support setting multiples jobs #1842

georgemccabe opened this issue Sep 28, 2022 · 0 comments · Fixed by #1869
Assignees
Labels
alert: NEED ACCOUNT KEY Need to assign an account key to this issue alert: NEED CYCLE ASSIGNMENT Need to assign to a release development cycle alert: NEED MORE DEFINITION Not yet actionable, additional definition required component: code cleanup Code cleanup and maintenance issue component: python wrapper METplus: Configuration priority: high High Priority reporting: DTC NOAA BASE NOAA Office of Atmospheric Research DTC Project reporting: DTC NOAA R2O NOAA Research to Operations DTC Project required: FOR DEVELOPMENT RELEASE Required to be completed in the development release for the assigned project type: enhancement Improve something that it is currently doing
Milestone

Comments

@georgemccabe
Copy link
Collaborator

georgemccabe commented Sep 28, 2022

Currently only 1 job can be specified via StatAnalysis wrapper using the STAT_ANALYSIS_JOB_NAME and STAT_ANALYSIS_JOB_ARGS config variables. Only 1 job is allowed to be specified via the command line arguments to stat_analysis, but multiple jobs can be specified in the STATAnalysisConfig file.

Describe the Enhancement

Enhance the StatAnalysis wrapper to support setting multiple jobs.
Instead of setting STAT_ANALYSIS_JOB_NAME and STAT_ANALYSIS_JOB_ARGS, users can set STAT_ANALYSIS_JOB1, STAT_ANALYSIS_JOB2, etc. The -job argument and job type that was previously specified via STAT_ANALYSIS_JOB_NAME will be included in the value of STAT_ANALYSIS_JOB<n>.

While the following will still be supported:

STAT_ANALYSIS_JOB_NAME = filter
STAT_ANALYSIS_JOB_ARGS = -dump_row [dump_row_file]

the same job command can be specified using:

STAT_ANALYSIS_JOB1 = -job filter -dump_row [dump_row_file]

and additional jobs can be specified with JOB2, JOB3, etc.

@CPKalb also discovered that filename template tags are not supported in the job arguments. The [dump_row_file] and [out_stat_file] syntax are substituted with the values from MODEL<n>_STAT_ANALYSIS_DUMP_ROW_TEMPLATE and MODEL<n>_STAT_ANALYSIS_OUT_STAT_TEMPLATE respectively. The logic should also be enhanced to substitute filename template tags anywhere in the job value so that multiple jobs can more easily be customized.

Time Estimate

~2 days

Sub-Issues

Consider breaking the enhancement down into sub-issues.

  • Add a checkbox for each sub-issue here.

Relevant Deadlines

5.0.0

Funding Source

Define the source of funding and account keys here or state NONE.

Define the Metadata

Assignee

  • Select engineer(s) or no engineer required
  • Select scientist(s) or no scientist required - @CPKalb as needed for testing

Labels

  • Select component(s)
  • Select priority
  • Select requestor(s)

Projects and Milestone

  • Select Repository and/or Organization level Project(s) or add alert: NEED PROJECT ASSIGNMENT label
  • Select Milestone as the next official version or Future Versions

Define Related Issue(s)

Consider the impact to the other METplus components.

Enhancement Checklist

See the METplus Workflow for details.

  • Complete the issue definition above, including the Time Estimate and Funding Source.
  • Fork this repository or create a branch of develop.
    Branch name: feature_<Issue Number>_<Description>
  • Complete the development and test your changes.
  • Add/update log messages for easier debugging.
  • Add/update unit tests.
  • Add/update documentation.
  • Add any new Python packages to the METplus Components Python Requirements table.
  • Push local changes to GitHub.
  • Submit a pull request to merge into develop.
    Pull request: feature <Issue Number> <Description>
  • Define the pull request metadata, as permissions allow.
    Select: Reviewer(s) and Linked issues
    Select: Repository level development cycle Project for the next official release
    Select: Milestone as the next official version
  • Iterate until the reviewer(s) accept and merge your changes.
  • Delete your fork or branch.
  • Close this issue.
@georgemccabe georgemccabe added type: enhancement Improve something that it is currently doing alert: NEED MORE DEFINITION Not yet actionable, additional definition required alert: NEED ACCOUNT KEY Need to assign an account key to this issue alert: NEED CYCLE ASSIGNMENT Need to assign to a release development cycle labels Sep 28, 2022
@georgemccabe georgemccabe added this to the METplus-5.0.0 milestone Sep 28, 2022
@georgemccabe georgemccabe self-assigned this Sep 28, 2022
georgemccabe added a commit that referenced this issue Sep 28, 2022
…pper using STAT_ANALYSIS_JOB<n>, clean up indentation
georgemccabe added a commit that referenced this issue Oct 3, 2022
… from the FCST/OBS_VAR<n> variables and around level values read from FCST/OBS_LEVEL_LIST, ci-run-diff
georgemccabe added a commit that referenced this issue Oct 3, 2022
…ort HHHMMSS (3 digits of hour). Updated tests to handle example from removed configuration file in internal/tests/pytests/plotting
georgemccabe added a commit that referenced this issue Oct 3, 2022
…lues into helper function to clean up logic and make it more readable, ci-run-diff
@georgemccabe georgemccabe added the required: FOR DEVELOPMENT RELEASE Required to be completed in the development release for the assigned project label Oct 11, 2022
@georgemccabe georgemccabe changed the title Support setting multiples jobs in StatAnalysis StatAnalysis - Support setting multiples jobs Oct 11, 2022
@georgemccabe georgemccabe moved this from In Progress to Review in METplus-Wrappers-5.0.0-beta4 (10/26/22) Oct 17, 2022
@georgemccabe georgemccabe linked a pull request Oct 18, 2022 that will close this issue
14 tasks
Repository owner moved this from Review to Done in METplus-Wrappers-5.0.0-beta4 (10/26/22) Oct 24, 2022
@TaraJensen TaraJensen added reporting: DTC NOAA BASE NOAA Office of Atmospheric Research DTC Project reporting: DTC NOAA R2O NOAA Research to Operations DTC Project labels Jan 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
alert: NEED ACCOUNT KEY Need to assign an account key to this issue alert: NEED CYCLE ASSIGNMENT Need to assign to a release development cycle alert: NEED MORE DEFINITION Not yet actionable, additional definition required component: code cleanup Code cleanup and maintenance issue component: python wrapper METplus: Configuration priority: high High Priority reporting: DTC NOAA BASE NOAA Office of Atmospheric Research DTC Project reporting: DTC NOAA R2O NOAA Research to Operations DTC Project required: FOR DEVELOPMENT RELEASE Required to be completed in the development release for the assigned project type: enhancement Improve something that it is currently doing
Projects
No open projects
Development

Successfully merging a pull request may close this issue.

2 participants