def setUp(self):
     WorkQueueTestCase.setUp(self)
     GlobalParams.resetParams()
     self.globalQCouchUrl = "%s/%s" % (self.testInit.couchUrl,
                                       self.globalQDB)
     self.localQCouchUrl = "%s/%s" % (self.testInit.couchUrl,
                                      self.localQInboxDB)
 def setUp(self):
     WorkQueueTestCase.setUp(self)
     EmulatorHelper.setEmulators(phedex = True, dbs = True,
                                 siteDB = True, requestMgr = False)
     self.globalQCouchUrl = "%s/%s" % (self.testInit.couchUrl, self.globalQDB)
     self.localQCouchUrl =  "%s/%s" % (self.testInit.couchUrl,
                                       self.localQInboxDB)
示例#3
0
    def setUp(self):
        """
        If we dont have a wmspec file create one
        """

        WorkQueueTestCase.setUp(self)

        self.cacheDir = tempfile.mkdtemp()
        self.specGenerator = WMSpecGenerator(self.cacheDir)
        self.specs = self.createReRecoSpec(1, "file")
        # setup rucio parameters for global/local queue
        self.queueParams = {}
        self.queueParams['log_reporter'] = "lq_profile_test"
        self.queueParams['rucioAccount'] = "wma_test"
        self.queueParams['rucioAuthUrl'] = "http://cmsrucio-int.cern.ch"
        self.queueParams['rucioUrl'] = "https://cmsrucio-auth-int.cern.ch"

        # Create queues
        self.localQueue = localQueue(DbName=self.queueDB,
                                     InboxDbName=self.queueInboxDB,
                                     NegotiationTimeout=0,
                                     QueueURL='global.example.com',
                                     CacheDir=self.cacheDir,
                                     central_logdb_url="%s/%s" %
                                     (self.couchURL, self.logDBName),
                                     **self.queueParams)
 def setUp(self):
     WorkQueueTestCase.setUp(self)
     EmulatorHelper.setEmulators(phedex = True, dbs = True,
                                 siteDB = True, requestMgr = False)
     GlobalParams.resetParams()
     self.globalQCouchUrl = "%s/%s" % (self.testInit.couchUrl, self.globalQDB)
     self.localQCouchUrl =  "%s/%s" % (self.testInit.couchUrl,
                                       self.localQInboxDB)
示例#5
0
 def tearDown(self):
     """tearDown"""
     WorkQueueTestCase.tearDown(self)
     try:
         shutil.rmtree(self.cacheDir)
         self.specGenerator.removeSpecs()
     except Exception:
         pass
示例#6
0
 def tearDown(self):
     """tearDown"""
     WorkQueueTestCase.tearDown(self)
     try:
         shutil.rmtree(self.cacheDir)
         self.specGenerator.removeSpecs()
     except Exception:
         pass
 def tearDown(self):
     """tearDown"""
     WorkQueueTestCase.tearDown(self)
     try:
         shutil.rmtree(self.cacheDir)
         self.specGenerator.removeSpecs()
     except:
         pass
     EmulatorHelper.resetEmulators()
    def setUp(self):
        self.reqmgr2_endpoint = "https://cmsweb-testbed.cern.ch/reqmgr2"

        WorkQueueTestCase.setUp(self)
        GlobalParams.resetParams()
        self.globalQCouchUrl = "%s/%s" % (self.testInit.couchUrl,
                                          self.globalQDB)
        self.localQCouchUrl = "%s/%s" % (self.testInit.couchUrl,
                                         self.localQInboxDB)
示例#9
0
 def tearDown(self):
     """tearDown"""
     WorkQueueTestCase.tearDown(self)
     try:
         shutil.rmtree(self.cacheDir)
         self.specGenerator.removeSpecs()
     except:
         pass
     EmulatorHelper.resetEmulators()
示例#10
0
    def setUp(self):
        """
        If we dont have a wmspec file create one
        """

        EmulatorHelper.setEmulators(phedex=False, dbs=False, siteDB=True, requestMgr=True)
        WorkQueueTestCase.setUp(self)

        self.cacheDir = tempfile.mkdtemp()
        self.specGenerator = WMSpecGenerator(self.cacheDir)
        self.specs = self.createReRecoSpec(1, "file")

        # Create queues
        self.localQueue = localQueue(DbName=self.queueDB, InboxDbName=self.queueInboxDB, \
                NegotiationTimeout=0, QueueURL='global.example.com', CacheDir=self.cacheDir, central_logdb_url="%s/%s" %(self.couchURL, self.logDBName), log_reporter='lq_profile_test')
示例#11
0
    def setUp(self):
        """
        If we dont have a wmspec file create one
        """

        EmulatorHelper.setEmulators(phedex=False,
                                    dbs=False,
                                    siteDB=True,
                                    requestMgr=True)
        WorkQueueTestCase.setUp(self)

        self.cacheDir = tempfile.mkdtemp()
        self.specGenerator = WMSpecGenerator(self.cacheDir)
        self.specs = self.createReRecoSpec(1, "file")

        # Create queues
        self.localQueue = localQueue(DbName=self.queueDB, InboxDbName=self.queueInboxDB, \
                NegotiationTimeout=0, QueueURL='global.example.com', CacheDir=self.cacheDir, central_logdb_url="%s/%s" %(self.couchURL, self.logDBName), log_reporter='lq_profile_test')
示例#12
0
 def tearDown(self):
     WorkQueueTestCase.tearDown(self)
     GlobalParams.resetParams()
示例#13
0
 def setUp(self):
     WorkQueueTestCase.setUp(self)
     GlobalParams.resetParams()
     self.globalQCouchUrl = "%s/%s" % (self.testInit.couchUrl, self.globalQDB)
     self.localQCouchUrl = "%s/%s" % (self.testInit.couchUrl,
                                      self.localQInboxDB)
示例#14
0
    def setUp(self):
        """
        If we dont have a wmspec file create one
        """
        EmulatorHelper.setEmulators(phedex = True, dbs = True, 
                                    siteDB = True, requestMgr = False)
        #set up WMAgent config file for couchdb
        self.configFile = EmulatorSetup.setupWMAgentConfig()

        WorkQueueTestCase.setUp(self)

        # Basic production Spec
        self.spec = monteCarloWorkload('testProduction', mcArgs)
        getFirstTask(self.spec).setSiteWhitelist(['T2_XX_SiteA', 'T2_XX_SiteB'])
        getFirstTask(self.spec).addProduction(totalevents = 10000)
        self.spec.setSpecUrl(os.path.join(self.workDir, 'testworkflow.spec'))
        self.spec.save(self.spec.specUrl())

        # Sample Tier1 ReReco spec
        self.processingSpec = rerecoWorkload('testProcessing', rerecoArgs)
        self.processingSpec.setSpecUrl(os.path.join(self.workDir,
                                                    'testProcessing.spec'))
        self.processingSpec.save(self.processingSpec.specUrl())

        # Sample Tier1 ReReco spec
        self.parentProcSpec = rerecoWorkload('testParentProcessing', parentProcArgs)
        self.parentProcSpec.setSpecUrl(os.path.join(self.workDir,
                                                    'testParentProcessing.spec'))
        self.parentProcSpec.save(self.parentProcSpec.specUrl())

        # ReReco spec with blacklist
        self.blacklistSpec = rerecoWorkload('blacklistSpec', rerecoArgs)
        self.blacklistSpec.setSpecUrl(os.path.join(self.workDir,
                                                    'testBlacklist.spec'))
        getFirstTask(self.blacklistSpec).data.constraints.sites.blacklist = ['T2_XX_SiteA']
        self.blacklistSpec.save(self.blacklistSpec.specUrl())

        # ReReco spec with whitelist
        self.whitelistSpec = rerecoWorkload('whitelistlistSpec', rerecoArgs)
        self.whitelistSpec.setSpecUrl(os.path.join(self.workDir,
                                                    'testWhitelist.spec'))
        getFirstTask(self.whitelistSpec).data.constraints.sites.whitelist = ['T2_XX_SiteB']
        self.whitelistSpec.save(self.whitelistSpec.specUrl())
        # setup Mock DBS and PhEDEx
        inputDataset = getFirstTask(self.processingSpec).inputDataset()
        self.dataset = "/%s/%s/%s" % (inputDataset.primary,
                                     inputDataset.processed,
                                     inputDataset.tier)

        # Create queues
        globalCouchUrl = "%s/%s" % (self.testInit.couchUrl, self.globalQDB)
        self.globalQueue = globalQueue(DbName = self.globalQDB,
                                       InboxDbName = self.globalQInboxDB,
                                       QueueURL = globalCouchUrl)
#        self.midQueue = WorkQueue(SplitByBlock = False, # mid-level queue
#                            PopulateFilesets = False,
#                            ParentQueue = self.globalQueue,
#                            CacheDir = None)
        # ignore mid queue as it causes database duplication's
        # copy jobStateMachine couchDB configuration here since we don't want/need to pass whole configuration
        jobCouchConfig = Configuration()
        jobCouchConfig.section_("JobStateMachine")
        jobCouchConfig.JobStateMachine.couchurl = os.environ["COUCHURL"]
        jobCouchConfig.JobStateMachine.couchDBName = "testcouchdb"
        # copy bossAir configuration here since we don't want/need to pass whole configuration
        bossAirConfig = Configuration()
        bossAirConfig.section_("BossAir")
        bossAirConfig.BossAir.pluginDir = "WMCore.BossAir.Plugins"
        bossAirConfig.BossAir.pluginNames = ["CondorPlugin"]
        bossAirConfig.section_("Agent")
        bossAirConfig.Agent.agentName = "TestAgent"

        self.localQueue = localQueue(DbName = self.localQDB,
                                     InboxDbName = self.localQInboxDB,
                                     ParentQueueCouchUrl = globalCouchUrl,
                                     JobDumpConfig = jobCouchConfig,
                                     BossAirConfig = bossAirConfig,
                                     CacheDir = self.workDir)

        self.localQueue2 = localQueue(DbName = self.localQDB2,
                                      InboxDbName = self.localQInboxDB2,
                                      ParentQueueCouchUrl = globalCouchUrl,
                                      JobDumpConfig = jobCouchConfig,
                                      BossAirConfig = bossAirConfig,
                                      CacheDir = self.workDir)

        # configuration for the Alerts messaging framework, work (alerts) and
        # control  channel addresses to which alerts
        # these are destination addresses where AlertProcessor:Receiver listens
        config = Configuration()
        config.section_("Alert")
        config.Alert.address = "tcp://127.0.0.1:5557"
        config.Alert.controlAddr = "tcp://127.0.0.1:5559"

        # standalone queue for unit tests
        self.queue = WorkQueue(JobDumpConfig = jobCouchConfig,
                               BossAirConfig = bossAirConfig,
                               DbName = self.queueDB,
                               InboxDbName = self.queueInboxDB,
                               CacheDir = self.workDir,
                               config = config)

        # create relevant sites in wmbs
        rc = ResourceControl()
        for site, se in self.queue.SiteDB.mapping.items():
            rc.insertSite(site, 100, se, cmsName = site)
            daofactory = DAOFactory(package = "WMCore.WMBS",
                                    logger = threading.currentThread().logger,
                                    dbinterface = threading.currentThread().dbi)
            addLocation = daofactory(classname = "Locations.New")
            addLocation.execute(siteName = site, seName = se)
 def tearDown(self):
     WorkQueueTestCase.tearDown(self)
     EmulatorHelper.resetEmulators()
     GlobalParams.resetParams()
 def tearDown(self):
     WorkQueueTestCase.tearDown(self)
     EmulatorHelper.resetEmulators()
 def setUp(self):
     WorkQueueTestCase.setUp(self)
     EmulatorHelper.setEmulators(phedex = True, dbs = True,
                                 siteDB = True, requestMgr = False)
 def tearDown(self):
     WorkQueueTestCase.tearDown(self)
     GlobalParams.resetParams()
示例#19
0
 def setUp(self):
     WorkQueueTestCase.setUp(self)
     EmulatorHelper.setEmulators(phedex=True,
                                 dbs=True,
                                 siteDB=True,
                                 requestMgr=False)
示例#20
0
 def tearDown(self):
     WorkQueueTestCase.tearDown(self)
     EmulatorHelper.resetEmulators()
示例#21
0
 def tearDown(self):
     """tearDown"""
     WorkQueueTestCase.tearDown(self)
     #Delete WMBSAgent config file
     EmulatorSetup.deleteConfig(self.configFile)
     EmulatorHelper.resetEmulators()