Пример #1
0
    def _addCEConfigDefaults(self):
        """Method to make sure all necessary Configuration Parameters are defined
    """
        # First assure that any global parameters are loaded
        ComputingElement._addCEConfigDefaults(self)
        # Now batch system specific ones
        if "ExecQueue" not in self.ceParameters:
            self.ceParameters["ExecQueue"] = self.ceParameters.get("Queue", "")

        if "SharedArea" not in self.ceParameters:
            # . isn't a good location, move to $HOME
            self.ceParameters["SharedArea"] = "$HOME"

        if "BatchOutput" not in self.ceParameters:
            self.ceParameters["BatchOutput"] = "data"

        if "BatchError" not in self.ceParameters:
            self.ceParameters["BatchError"] = "data"

        if "ExecutableArea" not in self.ceParameters:
            self.ceParameters["ExecutableArea"] = "data"

        if "InfoArea" not in self.ceParameters:
            self.ceParameters["InfoArea"] = "info"

        if "WorkArea" not in self.ceParameters:
            self.ceParameters["WorkArea"] = "work"

        if "SubmitOptions" not in self.ceParameters:
            self.ceParameters["SubmitOptions"] = "-"
Пример #2
0
  def _addCEConfigDefaults( self ):
    """Method to make sure all necessary Configuration Parameters are defined
    """
    # First assure that any global parameters are loaded
    ComputingElement._addCEConfigDefaults( self )
    # Now batch system specific ones
    if 'ExecQueue' not in self.ceParameters:
      self.ceParameters['ExecQueue'] = self.ceParameters.get( 'Queue', '' )

    if 'SharedArea' not in self.ceParameters:
      defaultPath = os.environ.get( 'HOME', '.' )
      self.ceParameters['SharedArea'] = gConfig.getValue( '/LocalSite/InstancePath', defaultPath )

    if 'BatchOutput' not in self.ceParameters:
      self.ceParameters['BatchOutput'] = 'data'

    if 'BatchError' not in self.ceParameters:
      self.ceParameters['BatchError'] = 'data'

    if 'ExecutableArea' not in self.ceParameters:
      self.ceParameters['ExecutableArea'] = 'data'

    if 'InfoArea' not in self.ceParameters:
      self.ceParameters['InfoArea'] = 'info'

    if 'WorkArea' not in self.ceParameters:
      self.ceParameters['WorkArea'] = 'work'
Пример #3
0
  def _addCEConfigDefaults( self ):
    """Method to make sure all necessary Configuration Parameters are defined
    """
    # First assure that any global parameters are loaded
    ComputingElement._addCEConfigDefaults( self )
    # Now batch system specific ones
    if 'ExecQueue' not in self.ceParameters:
      self.ceParameters['ExecQueue'] = self.ceParameters.get( 'Queue', '' )

    if 'SharedArea' not in self.ceParameters:
      self.ceParameters['SharedArea'] = '.'

    if 'BatchOutput' not in self.ceParameters:
      self.ceParameters['BatchOutput'] = 'data' 

    if 'BatchError' not in self.ceParameters:
      self.ceParameters['BatchError'] = 'data' 

    if 'ExecutableArea' not in self.ceParameters:
      self.ceParameters['ExecutableArea'] = 'data' 

    if 'InfoArea' not in self.ceParameters:
      self.ceParameters['InfoArea'] = 'info'
      
    if 'WorkArea' not in self.ceParameters:
      self.ceParameters['WorkArea'] = 'work'  
      
    if 'SubmitOptions' not in self.ceParameters:
      self.ceParameters['SubmitOptions'] = '-'    
Пример #4
0
 def __init__(self, ceUniqueID):
     """ Standard constructor.
 """
     ComputingElement.__init__(self, ceUniqueID)
     self.ceType = CE_NAME
     self.submittedJobs = 0
     self.mandatoryParameters = MANDATORY_PARAMETERS
     self.pilotProxy = ""
     self.queue = ""
     self.outputURL = "gsiftp://localhost"
     self.gridEnv = ""
     self.ceHost = self.ceName
     self.usercfg = arc.common.UserConfig()
     if "Host" in self.ceParameters:
         self.ceHost = self.ceParameters["Host"]
     if "GridEnv" in self.ceParameters:
         self.gridEnv = self.ceParameters["GridEnv"]
     # Used in getJobStatus
     self.mapStates = {
         "Accepted": "Scheduled",
         "Preparing": "Scheduled",
         "Submitting": "Scheduled",
         "Queuing": "Scheduled",
         "Hold": "Scheduled",
         "Undefined": "Unknown",
         "Running": "Running",
         "Finishing": "Running",
         "Deleted": "Killed",
         "Killed": "Killed",
         "Failed": "Failed",
         "Finished": "Done",
         "Other": "Done",
     }
     self.__getXRSLExtraString()  # Do this after all other initialisations, in case something barks
Пример #5
0
 def __init__( self, ceUniqueID ):
   """ Standard constructor.
   """
   ComputingElement.__init__( self, ceUniqueID )
   self.ceType = CE_NAME
   self.submittedJobs = 0
   self.mandatoryParameters = MANDATORY_PARAMETERS
   self.pilotProxy = ''
   self.queue = ''
   self.outputURL = 'gsiftp://localhost'
   self.gridEnv = ''
   self.ceHost = self.ceName
   self.usercfg = arc.common.UserConfig()
   if 'Host' in self.ceParameters:
     self.ceHost = self.ceParameters['Host']
   if 'GridEnv' in self.ceParameters:
     self.gridEnv = self.ceParameters['GridEnv']
   # Used in getJobStatus
   self.mapStates = { 'Accepted'   : 'Scheduled',
                      'Preparing'  : 'Scheduled',
                      'Submitting' : 'Scheduled',
                      'Queuing'    : 'Scheduled',
                      'Hold'       : 'Scheduled',
                      'Undefined'  : 'Unknown',
                      'Running'    : 'Running',
                      'Finishing'  : 'Running',
                      'Deleted' : 'Killed',
                      'Killed'  : 'Killed',
                      'Failed'  : 'Failed',
                      'Finished': 'Done',
                      'Other'   : 'Done'
     }
   self.__getXRSLExtraString() # Do this after all other initialisations, in case something barks
 def __init__( self, ceUniqueID ):
   """ Standard constructor.
   """
   ComputingElement.__init__( self, ceUniqueID )
   self.minProxyTime = gConfig.getValue( '/Registry/MinProxyLifeTime', 10800 ) #secs
   self.defaultProxyTime = gConfig.getValue( '/Registry/DefaultProxyLifeTime', 86400 ) #secs
   self.proxyCheckPeriod = gConfig.getValue( '/Registry/ProxyCheckingPeriod', 3600 ) #secs
   self.submittedJobs = 0
 def __init__( self, ceUniqueID ):
   """ Standard constructor.
   """
   ComputingElement.__init__( self, ceUniqueID )
   
   self.ceType = CE_NAME
   self.submittedJobs = 0
   self.mandatoryParameters = MANDATORY_PARAMETERS
Пример #8
0
  def __init__( self, ceUniqueID ):
    """ Standard constructor.
    """
    ComputingElement.__init__( self, ceUniqueID )

    self.ceType = ''
    self.execution = "Local"
    self.batchSystem = self.ceParameters.get( 'BatchSystem', 'Host' )
    self.batchModuleFile = None
    self.submittedJobs = 0
    self.userName = getpass.getuser()
Пример #9
0
  def __init__( self, ceUniqueID ):
    """ Standard constructor.
    """
    ComputingElement.__init__( self, ceUniqueID )

    self.ceType = 'SSH'
    self.execution = "SSH"
    self.batchSystem = 'Host'
    self.submittedJobs = 0
    self.outputTemplate = ''
    self.errorTemplate = ''
Пример #10
0
  def __init__( self, ceUniqueID ):
    """ Standard constructor.
    """
    ComputingElement.__init__( self, ceUniqueID )

    self.ceType = CE_NAME
    self.controlScript = ''
    self.finalScript = ''
    self.submittedJobs = 0
    self.userName = getpass.getuser()
    self.mandatoryParameters = MANDATORY_PARAMETERS
Пример #11
0
  def __init__( self, ceUniqueID ):
    """ Standard constructor.
    """
    ComputingElement.__init__( self, ceUniqueID )

    self.ceType = CE_NAME
    self.submittedJobs = 0
    self.mandatoryParameters = MANDATORY_PARAMETERS
    self.pilotProxy = ''
    self.queue = ''
    self.outputURL = 'gsiftp://localhost'
    self.gridEnv = ''
Пример #12
0
  def __init__( self, ceUniqueID ):
    """ Standard constructor.
    """

    ComputingElement.__init__( self, ceUniqueID )

    self.ceType = CE_NAME
    self.mandatoryParameters = []
    self.wsdl = None
    self.BOINCClient = None
#define a job prefix based on the wsdl url
    self.suffix = None
Пример #13
0
  def __init__( self, ceUniqueID ):
    """ Standard constructor.
    """
    ComputingElement.__init__( self, ceUniqueID )
    self.submittedJobs = 0

    self.queue = self.ceConfigDict['Queue']
    self.execQueue = self.ceConfigDict['ExecQueue']
    self.log.info( "Using queue: ", self.queue )
    self.hostname = socket.gethostname()
    self.sharedArea = self.ceConfigDict['SharedArea']
    self.batchOutput = self.ceConfigDict['BatchOutput']
    self.batchError = self.ceConfigDict['BatchError']
Пример #14
0
 def __init__(self, ceUniqueID):
   """ Standard constructor.
   """
   ComputingElement.__init__(self, ceUniqueID)
   self.ceType = "Pool"
   self.log = gLogger.getSubLogger('Pool')
   self.submittedJobs = 0
   self.processors = 1
   self.pPool = None
   self.taskID = 0
   self.processorsPerTask = {}
   self.userNumberPerTask = {}
   self.useSudo = False
Пример #15
0
  def _addCEConfigDefaults( self ):
    """Method to make sure all necessary Configuration Parameters are defined
    """
    # First assure that any global parameters are loaded
    ComputingElement._addCEConfigDefaults( self )
    # Now Torque specific ones
    if 'ExecQueue' not in self.ceConfigDict:
      self.ceConfigDict['ExecQueue'] = self.ceConfigDict['Queue']

    if 'SharedArea' not in self.ceConfigDict:
      self.ceConfigDict['SharedArea'] = ''

    if 'BatchOutput' not in self.ceConfigDict:
      self.ceConfigDict['BatchOutput'] = os.path.join( gConfig.getValue( '/LocalSite/InstancePath', rootPath ), 'data' )

    if 'BatchError' not in self.ceConfigDict:
      self.ceConfigDict['BatchError'] = os.path.join( gConfig.getValue( '/LocalSite/InstancePath', rootPath ), 'data' )
Пример #16
0
    def __init__(self, ceUniqueID):
        """ Standard constructor.
    """
        ComputingElement.__init__(self, ceUniqueID)

        self.ceType = CE_NAME
        self.submittedJobs = 0
        self.mandatoryParameters = MANDATORY_PARAMETERS
        self.pilotProxy = ""
        self.queue = ""
        self.outputURL = "gsiftp://localhost"
        self.gridEnv = ""
        self.ceHost = self.ceName
        if "Host" in self.ceParameters:
            self.ceHost = self.ceParameters["Host"]
        if "GridEnv" in self.ceParameters:
            self.gridEnv = self.ceParameters["GridEnv"]
Пример #17
0
  def __init__( self, ceUniqueID ):
    """ Standard constructor.
    """
    ComputingElement.__init__( self, ceUniqueID )
    self.submittedJobs = 0

    self.queue = self.ceConfigDict['Queue']
    self.execQueue = self.ceConfigDict['ExecQueue']
    self.log.info( "Using queue: ", self.queue )
    self.hostname = socket.gethostname()
    self.sharedArea = self.ceConfigDict['SharedArea']
    self.batchOutput = self.ceConfigDict['BatchOutput']
    self.batchError = self.ceConfigDict['BatchError']
    self.userName = self.ceConfigDict['UserName']
    self.removeOutput = True
    if 'RemoveOutput' in self.ceParameters:
      if self.ceParameters['RemoveOutput'].lower()  in ['no', 'false', '0']:
        self.removeOutput = False
Пример #18
0
    def _addCEConfigDefaults(self):
        """Method to make sure all necessary Configuration Parameters are defined
    """
        # First assure that any global parameters are loaded
        ComputingElement._addCEConfigDefaults(self)
        # Now Torque specific ones
        if "ExecQueue" not in self.ceConfigDict:
            self.ceConfigDict["ExecQueue"] = self.ceConfigDict["Queue"]

        if "SharedArea" not in self.ceConfigDict:
            self.ceConfigDict["SharedArea"] = ""

        if "BatchOutput" not in self.ceConfigDict:
            self.ceConfigDict["BatchOutput"] = os.path.join(
                gConfig.getValue("/LocalSite/InstancePath", rootPath), "data"
            )

        if "BatchError" not in self.ceConfigDict:
            self.ceConfigDict["BatchError"] = os.path.join(
                gConfig.getValue("/LocalSite/InstancePath", rootPath), "data"
            )
Пример #19
0
 def __init__( self, ceUniqueID ):
   """ Standard constructor.
   """
   self.__errorCodes = { 127 : 'Shell exited, command not found',
                         129 : 'Shell interrupt signal 1 (SIGHUP)',
                         130 : 'Shell interrupt signal 2 (SIGINT)',
                         201 : 'glexec failed with client error',
                         202 : 'glexec failed with internal error',
                         203 : 'glexec failed with authorization error'
                       }
   self.__gl = False
   self.__mktmp = False
   self.__proxyObj = False
   self.__execFile = False
   self.__glDir = False
   self.__glBaseDir = False
   self.__pilotProxyLocation = False
   self.__payloadProxyLocation = False
   self.__glCommand = False
   self.__jobData = {}
   random.seed()
   ComputingElement.__init__( self, ceUniqueID )
   self.submittedJobs = 0
Пример #20
0
 def __init__(self, ceUniqueID):
   """ Standard constructor.
   """
   ComputingElement.__init__(self, ceUniqueID)
   self.ceType = CE_NAME
   self.submittedJobs = 0
   self.mandatoryParameters = MANDATORY_PARAMETERS
   self.pilotProxy = ''
   self.queue = ''
   self.outputURL = 'gsiftp://localhost'
   self.gridEnv = ''
   self.ceHost = self.ceName
   self.usercfg = arc.common.UserConfig()
   # set the timeout to the default 20 seconds in case the UserConfig constructor did not
   self.usercfg.Timeout(20)  # pylint: disable=pointless-statement
   if 'Host' in self.ceParameters:
     self.ceHost = self.ceParameters['Host']
   if 'GridEnv' in self.ceParameters:
     self.gridEnv = self.ceParameters['GridEnv']
   # Used in getJobStatus
   self.mapStates = {'Accepted': 'Scheduled',
                     'Preparing': 'Scheduled',
                     'Submitting': 'Scheduled',
                     'Queuing': 'Scheduled',
                     'Undefined': 'Unknown',
                     'Running': 'Running',
                     'Finishing': 'Running',
                     'Deleted': 'Killed',
                     'Killed': 'Killed',
                     'Failed': 'Failed',
                     'Hold': 'Failed',
                     'Finished': 'Done',
                     'Other': 'Done'}
   # Do these after all other initialisations, in case something barks
   self.xrslExtraString = self.__getXRSLExtraString()
   self.xrslMPExtraString = self.__getXRSLExtraString(multiprocessor=True)
Пример #21
0
 def _addCEConfigDefaults(self):
   """Method to make sure all necessary Configuration Parameters are defined
   """
   # First assure that any global parameters are loaded
   ComputingElement._addCEConfigDefaults(self)
Пример #22
0
 def __init__( self, ceUniqueID ):
   """ Standard constructor.
   """
   ComputingElement.__init__( self, ceUniqueID )
   self.submittedJobs = 0
Пример #23
0
 def _addCEConfigDefaults(self):
     """Method to make sure all necessary Configuration Parameters are defined"""
     # First assure that any global parameters are loaded
     ComputingElement._addCEConfigDefaults(self)
Пример #24
0
 def __init__( self, ceUniqueID ):
   """ Standard constructor.
   """
   ComputingElement.__init__( self, ceUniqueID )
   self.submittedJobs = 0