RemoteRunner has been designed to send scripts/applications and input files on remote worker nodes having no outbound connectivity (e.g. supercomputers)

Mostly called by workflow modules, RemoteRunner is generally the last component to get through before the script/application execution on a remote machine.

class DIRAC.WorkloadManagementSystem.Utilities.RemoteRunner.RemoteRunner(siteName, ceName, queueName)

Bases: object

__init__(siteName, ceName, queueName)
execute(command, workingDirectory='.', numberOfProcessors=1, cleanRemoteJob=True)

Execute the command remotely via a CE

  • command (str) – command to execute remotely

  • workingDirectory (str) – directory containing the inputs required by the command

  • numberOfProcessors (int) – number of processors to allocate to the command

  • cleanRemoteJob (str) – clean the files related to the command on the remote host if True


(status, output, error)