HTCondorService¶
-
class
lsst.ctrl.bps.htcondor.
HTCondorService
(config)¶ Bases:
lsst.ctrl.bps.BaseWmsService
HTCondor version of WMS service.
Methods Summary
cancel
(wms_id[, pass_thru])Cancel submitted workflows/jobs. list_submitted_jobs
([wms_id, user, …])Query WMS for list of submitted WMS workflows/jobs. ping
(pass_thru)Checks whether WMS services are up, reachable, and can authenticate if authentication is required. prepare
(config, generic_workflow[, out_prefix])Convert generic workflow to an HTCondor DAG ready for submission. report
([wms_workflow_id, user, hist, …])Return run information based upon given constraints. restart
(wms_workflow_id)Restart a failed DAGMan workflow. run_submission_checks
()Checks to run at start if running WMS specific submission steps. submit
(workflow)Submit a single HTCondor workflow. Methods Documentation
-
cancel
(wms_id, pass_thru=None)¶ Cancel submitted workflows/jobs.
Parameters: Returns:
-
list_submitted_jobs
(wms_id=None, user=None, require_bps=True, pass_thru=None, is_global=False)¶ Query WMS for list of submitted WMS workflows/jobs.
This should be a quick lookup function to create list of jobs for other functions.
Parameters: - wms_id :
int
orstr
, optional Id or path that can be used by WMS service to look up job.
- user :
str
, optional User whose submitted jobs should be listed.
- require_bps :
bool
, optional Whether to require jobs returned in list to be bps-submitted jobs.
- pass_thru :
str
, optional Information to pass through to WMS.
- is_global :
bool
, optional If set, all job queues (and their histories) will be queried for job information. Defaults to False which means that only the local job queue will be queried.
Returns: - job_ids :
list
[Any
] Only job ids to be used by cancel and other functions. Typically this means top-level jobs (i.e., not children jobs).
- wms_id :
-
ping
(pass_thru)¶ Checks whether WMS services are up, reachable, and can authenticate if authentication is required.
The services to be checked are those needed for submit, report, cancel, restart, but ping cannot guarantee whether jobs would actually run successfully.
Parameters: - pass_thru :
str
, optional Information to pass through to WMS.
Returns: - pass_thru :
-
prepare
(config, generic_workflow, out_prefix=None)¶ Convert generic workflow to an HTCondor DAG ready for submission.
Parameters: - config :
lsst.ctrl.bps.BpsConfig
BPS configuration that includes necessary submit/runtime information.
- generic_workflow :
lsst.ctrl.bps.GenericWorkflow
The generic workflow (e.g., has executable name and arguments).
- out_prefix :
str
The root directory into which all WMS-specific files are written.
Returns: - workflow :
lsst.ctrl.bps.wms.htcondor.HTCondorWorkflow
HTCondor workflow ready to be run.
- config :
-
report
(wms_workflow_id=None, user=None, hist=0, pass_thru=None, is_global=False)¶ Return run information based upon given constraints.
Parameters: - wms_workflow_id :
str
, optional Limit to specific run based on id.
- user :
str
, optional Limit results to runs for this user.
- hist :
float
, optional Limit history search to this many days. Defaults to 0.
- pass_thru :
str
, optional Constraints to pass through to HTCondor.
- is_global :
bool
, optional If set, all job queues (and their histories) will be queried for job information. Defaults to False which means that only the local job queue will be queried.
Returns: - runs :
list
[lsst.ctrl.bps.WmsRunReport
] Information about runs from given job information.
- message :
str
Extra message for report command to print. This could be pointers to documentation or to WMS specific commands.
- wms_workflow_id :
-
restart
(wms_workflow_id)¶ Restart a failed DAGMan workflow.
Parameters: - wms_workflow_id :
str
The directory with HTCondor files.
Returns: - run_id :
str
HTCondor id of the restarted DAGMan job. If restart failed, it will be set to None.
- run_name :
str
Name of the restarted workflow. If restart failed, it will be set to None.
- message :
str
A message describing any issues encountered during the restart. If there were no issues, an empty string is returned.
- wms_workflow_id :
-
run_submission_checks
()¶ Checks to run at start if running WMS specific submission steps.
Any exception other than NotImplementedError will halt submission. Submit directory may not yet exist when this is called.
-
submit
(workflow)¶ Submit a single HTCondor workflow.
Parameters: - workflow :
lsst.ctrl.bps.BaseWorkflow
A single HTCondor workflow to submit. run_id is updated after successful submission to WMS.
- workflow :
-