SudoComputingElement

A computing element class that uses sudo

class DIRAC.Resources.Computing.SudoComputingElement.SudoComputingElement(ceUniqueID)

Bases: ComputingElement

__init__(ceUniqueID)

Standard constructor.

available(jobIDList=None)

This method returns the number of available slots in the target CE. The CE instance polls for waiting and running jobs and compares to the limits in the CE parameters.

Parameters

jobIDList (list) – list of already existing job IDs to be checked against

getCEStatus()

Method to return information on running and pending jobs.

getDescription()

Get CE description as a dictionary.

This is called by the JobAgent for the case of “inner” CEs.

initializeParameters()

Initialize the CE parameters after they are collected from various sources

isProxyValid(valid=1000)

Check if the stored proxy is valid

isValid()

Check the sanity of the Computing Element definition

loadBatchSystem(batchSystemName)

Instantiate object representing the backend batch system

Parameters

batchSystemName (str) – name of the batch system

monitorProxy(payloadProxy, payloadUsername, payloadUID, payloadGID)

Monitor the payload proxy and renew as necessary.

sendOutput(stdid, line)

Callback function such that the results from the CE may be returned.

setCPUTimeLeft(cpuTimeLeft=None)

Update the CPUTime parameter of the CE classAd, necessary for running in filling mode

setParameters(ceOptions)

Add parameters from the given dictionary overriding the previous values

Parameters

ceOptions (dict) – CE parameters dictionary to update already defined ones

setProxy(proxy, valid=0)

Set proxy for this instance

shutdown()

Optional method to shutdown the (Inner) Computing Element

submitJob(executableFile, proxy=None, **kwargs)

Method to submit job, overridden from super-class.

Parameters
  • executableFile (str) – file to execute via systemCall. Normally the JobWrapperTemplate when invoked by the JobAgent.

  • proxy (str) – the proxy used for running the job (the payload). It will be dumped to a file.

sudoExecute(executableFile, payloadProxy, payloadUsername, payloadUID, payloadGID)

Run sudo with checking of the exit status code.

writeProxyToFile(proxy)

CE helper function to write a CE proxy string to a file.