tardis.adapters.batchsystems.htcondor module
- class tardis.adapters.batchsystems.htcondor.HTCondorAdapter[source]
Bases:
BatchSystemAdapter
HTCondorAdapter
implements the TARDIS interface to dynamically integrate and manage opportunistic resources with the HTCondor Batch System.- async disintegrate_machine(drone_uuid: str) None [source]
HTCondor does not require any specific disintegration procedure.
- Parameters:
drone_uuid (str) – Uuid of the worker node, for some sites corresponding to the host name of the drone.
- Returns:
None
- async drain_machine(drone_uuid: str) None [source]
Drain a machine in the HTCondor batch system, which means that no new jobs will be accepted
- Parameters:
drone_uuid (str) – Uuid of the worker node, for some sites corresponding to the host name of the drone.
- Returns:
None
- async get_allocation(drone_uuid: str) float [source]
Get the allocation of a worker node in HTCondor, which is defined as maximum of the ratios of requested over total resources (CPU, Memory, Disk, etc.).
- async get_machine_status(drone_uuid: str) MachineStatus [source]
Get the status of a worker node in HTCondor (Available, Draining, Drained, NotAvailable)
- Parameters:
drone_uuid (str) – Uuid of the worker node, for some sites corresponding to the host name of the drone.
- Returns:
The machine status in HTCondor (Available, Draining, Drained, NotAvailable)
- Return type:
- async get_resource_ratios(drone_uuid: str) Iterable[float] [source]
Get the ratio of requested over total resources (CPU, Memory, Disk, etc.) for a worker node in HTCondor according to the HTCondor expressions defined in the adapter configuration.
- async get_utilisation(drone_uuid: str) float [source]
Get the utilisation of a worker node in HTCondor, which is defined as minimum of the ratios of requested over total resources (CPU, Memory, Disk, etc.).
- async integrate_machine(drone_uuid: str) None [source]
HTCondor does not require any specific integration procedure
- Parameters:
drone_uuid (str) – Uuid of the worker node, for some sites corresponding to the host name of the drone.
- Returns:
None
- property machine_meta_data_translation_mapping: AttributeDict
The machine meta data translation mapping is used to translate units of the machine meta data in
TARDIS
to values expected by the HTCondor batch system adapter.- Returns:
Machine meta data translation mapping
- Return type:
- async tardis.adapters.batchsystems.htcondor.htcondor_status_updater(options: AttributeDict, attributes: AttributeDict, executor: Executor) dict [source]
Helper function to call
condor_status -af
asynchronously and to translate the output into a dictionary- Parameters:
options (AttributeDict) – Additional options for the condor_status call. For example
{'pool': 'htcondor.example'}
will be translated intocondor_status -af ... -pool htcondor.example
attributes (AttributeDict) – Additional fields to add to output of the
condor_status -af
response.
- Returns:
Dictionary containing the output of the
condor_status
command- Return type: