PushJobAgent

The Push Job Agent class inherits from Job Agent and aims to support job submission in sites with no external connectivity (e.g. some supercomputers).

class DIRAC.WorkloadManagementSystem.Agent.PushJobAgent.PushJobAgent(agentName, loadName, baseAgentName=False, properties=None)

Bases: DIRAC.WorkloadManagementSystem.Agent.JobAgent.JobAgent

This agent runs on the DIRAC server side contrary to JobAgent, which runs on worker nodes. It fetches jobs, prepares them for sites with no external connectivity and submit locally. The remote execution is handled at the Workflow level

__init__(agentName, loadName, baseAgentName=False, properties=None)

Just defines some default parameters

am_Enabled()
am_checkStopAgentFile()
am_createStopAgentFile()
am_disableMonitoring()
am_getBasePath()
am_getControlDirectory()
am_getCyclesDone()
am_getMaxCycles()
am_getModuleParam(optionName)
am_getOption(optionName, defaultValue=None)

Gets an option from the agent’s configuration section. The section will be a subsection of the /Systems section in the CS.

am_getPollingTime()
am_getShifterProxyLocation()
am_getStopAgentFile()
am_getWatchdogTime()
am_getWorkDirectory()
am_go()
am_initialize(*initArgs)

Common initialization for all the agents.

This is executed every time an agent (re)starts. This is called by the AgentReactor, should not be overridden.

am_monitoringEnabled()
am_removeStopAgentFile()
am_secureCall(functor, args=(), name=False)
am_setModuleParam(optionName, value)
am_setOption(optionName, value)
am_stopExecution()
beginExecution()

This is run at every cycles, as first thing. It gets site, CE and queue descriptions.

endExecution()
execute()

The JobAgent execution method.

finalize()

Job Agent finalization method

initialize()

Sets default parameters and creates CE instance