Skip to content

DM-54548 : Add Conditional Nodeset to Check Jobs#92

Open
tcjennings wants to merge 1 commit into
mainfrom
u/tobyj/check_job_nodeset
Open

DM-54548 : Add Conditional Nodeset to Check Jobs#92
tcjennings wants to merge 1 commit into
mainfrom
u/tobyj/check_job_nodeset

Conversation

@tcjennings

@tcjennings tcjennings commented Jun 30, 2026

Copy link
Copy Markdown
Contributor
  • conditionally add a JobNodeset attribute to check job sub file.

Resulting DAG file has VARS available for the check jobs, which is conditionally used in the static sub file these jobs use, e.g.:

JOB wms_check_status_wms_group_associationOrder_2026061300166 "${CTRL_BPS_HTCONDOR_DIR}/python/lsst/ctrl/bps/htcondor/check_group_status.sub" DIR "subdags/wms_group_associationOrder_2026061300166"
VARS wms_check_status_wms_group_associationOrder_2026061300166 group_job_name="wms_group_associationOrder_2026061300166"
VARS wms_check_status_wms_group_associationOrder_2026061300166 JOB_NODESET="20260630T143245Z"
PARENT wms_group_associationOrder_2026061300166 CHILD ...

The job ClassAd then has the appropriate JobNodeset values as set in the sub file, similar to other dag jobs, e.g.:

DAGManJobId = 42325259
DAGNodeName = "wms_check_status_wms_group_associationOrder_2026061300163"
DAGParentNodeNames = "wms_group_associationOrder_2026061300163"
JobNodeset = "20260702T162903Z"
Requirements = ((Target.Nodeset == "20260702T162903Z")) && (TARGET.Arch == "X86_64") && (TARGET.OpSys == "LINUX") && (TARGET.Disk >= RequestDisk) && (TARGET.Memory >= RequestMemory) && (TARGET.HasFileTransfer)

Checklist

  • ran Jenkins
  • added a release note for user-visible changes to doc/changes

@codecov

codecov Bot commented Jun 30, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 78.94737% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 84.78%. Comparing base (e16006e) to head (f5ca219).
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
python/lsst/ctrl/bps/htcondor/prepare_utils.py 55.55% 4 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #92      +/-   ##
==========================================
- Coverage   84.80%   84.78%   -0.02%     
==========================================
  Files          19       19              
  Lines        4245     4260      +15     
  Branches      456      458       +2     
==========================================
+ Hits         3600     3612      +12     
- Misses        567      570       +3     
  Partials       78       78              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

@tcjennings tcjennings force-pushed the u/tobyj/check_job_nodeset branch from 8815d7e to bc85a78 Compare July 2, 2026 14:53
@tcjennings tcjennings requested a review from mxk62 July 8, 2026 14:55
@tcjennings tcjennings marked this pull request as ready for review July 8, 2026 17:27
if defined JOB_NODESET
requirements=( Target.Nodeset == "$(JOB_NODESET)" )
+JobNodeset = "$(JOB_NODESET)"
endif

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

A minor nitpick, but can we keep the capitalization of our custom macros consistent and use job_nodeset instead of JOB_NODESET?

- conditionally add a JobNodeset attribute to check job sub file.
- add change fragment to docs/changes
@tcjennings tcjennings force-pushed the u/tobyj/check_job_nodeset branch from 659eb34 to f5ca219 Compare July 10, 2026 15:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants