Beispiel #1
0
    def testA(self):
        """test with generation TaskChain"""

        request = {
            "AcquisitionEra": "ReleaseValidation",
            "Requestor": "sfoulkes",
            "CMSSWVersion": "CMSSW_3_5_8",
            "ScramArch": "slc5_ia32_gcc434",
            "ProcessingVersion": "v1",
            "GlobalTag": "GR10_P_v4::All",
            "CouchURL": "http://couchserver.cern.ch",
            "CouchDBName": "config_cache",
            "SiteWhitelist": ["T1_CH_CERN", "T1_US_FNAL"],
            "TaskChain": 3,
        }

        request['Task1'] = {
            "TaskName": "GenSim",
            "ConfigCacheID": "ConfigIDHere",
            "SplittingAlgorithm": "EventBased",
            "SplittingArguments": {
                "events_per_job": 250
            },
            "RequestSizeEvents": 10000,
            "Seeding": "Automatic",
            "PrimaryDataset": "RelValTTBar",
        }

        request['Task2'] = {
            "TaskName": "DigiHLT",
            "InputTask": "GenSim",
            "InputFromOutputModule": "writeGENSIM",
            "ConfigCacheID": "17612875182763812763812",
            "SplittingAlgorithm": "FileBased",
            "SplittingArguments": {
                "files_per_job": 1
            }
        }

        request['Task3'] = {
            "TaskName": "Reco",
            "InputTask": "DigiHLT",
            "InputFromOutputModule": "writeDIGIRECO",
            "ConfigCacheID": "17612875182763812763812",
            "SplittingAlgorithm": "FileBased",
            "SplittingArguments": {
                "files_per_job": 1
            }
        }

        schema = TaskChainSchema()
        schema.update(request)
        schema.validate()