コード例 #1
0
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {"RequestType": {"default": "StoreResults", "optional": False},
                 "InputDataset": {"optional": False, "validate": dataset, "null": False},
                 "ConfigCacheID": {"optional": True, "null": True},
                 "DataTier": {"default": "USER", "type": str,
                              "optional": True, "validate": None,
                              "attr": "dataTier", "null": False},
                 "PhysicsGroup": {"default": "", "optional": False,
                                  "null": False, "validate": physicsgroup},
                 "MergedLFNBase": {"default": "/store/results", "type": str,
                                   "optional": True, "validate": None,
                                   "attr": "mergedLFNBase", "null": False},
                 # site whitelist shouldn't be allowed, but let's make an exception for StoreResults
                 "SiteWhitelist": {"default": [], "type": makeNonEmptyList, "assign_optional": False,
                                   "validate": lambda x: all([cmsname(y) for y in x])},
                 "BlockBlacklist": {"default": [], "type": makeList,
                                    "optional": True, "validate": lambda x: all([block(y) for y in x]),
                                    "attr": "blockBlacklist", "null": False},
                 "BlockWhitelist": {"default": [], "type": makeList,
                                    "optional": True, "validate": lambda x: all([block(y) for y in x]),
                                    "attr": "blockWhitelist", "null": False},
                 "RunBlacklist": {"default": [], "type": makeList,
                                  "optional": True, "validate": lambda x: all([int(y) > 0 for y in x]),
                                  "attr": "runBlacklist", "null": False},
                 "RunWhitelist": {"default": [], "type": makeList,
                                  "optional": True, "validate": lambda x: all([int(y) > 0 for y in x]),
                                  "attr": "runWhitelist", "null": False}}
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #2
0
ファイル: Express.py プロジェクト: alexanderrichards/WMCore
    def getWorkloadCreateArgs():
        baseArgs = StdBase.getWorkloadCreateArgs()
        specArgs = {"RequestType": {"default": "Express"},
                    "ConfigCacheID": {"optional": True, "null": True},
                    "Scenario": {"optional": False, "attr": "procScenario"},
                    "RecoCMSSWVersion": {"validate": lambda x: x in releases(),
                                         "optional": False, "attr": "recoFrameworkVersion"},
                    "RecoScramArch": {"validate": lambda x: all([y in architectures() for y in x]),
                                      "optional": False, "type": makeNonEmptyList},
                    "GlobalTag": {"optional": False},
                    "GlobalTagTransaction": {"optional": False},
                    "ProcessingString": {"default": "", "validate": procstringT0},
                    "StreamName": {"optional": False},
                    "SpecialDataset": {"optional": False},
                    "AlcaHarvestTimeout": {"type": int, "optional": False},
                    "AlcaHarvestDir": {"optional": False, "null": True},
                    "AlcaSkims": {"type": makeList, "optional": False},
                    "DQMSequences": {"type": makeList, "attr": "dqmSequences", "optional": False},
                    "Outputs": {"type": makeList, "optional": False},
                    "MaxInputRate": {"type": int, "optional": False},
                    "MaxInputEvents": {"type": int, "optional": False},
                    "MaxInputSize": {"type": int, "optional": False},
                    "MaxInputFiles": {"type": int, "optional": False},
                    "MaxLatency": {"type": int, "optional": False},

                    }
        baseArgs.update(specArgs)
        StdBase.setDefaultArgumentsProperty(baseArgs)
        return baseArgs
コード例 #3
0
 def getWorkloadCreateArgs():
     """
     Some default values set for testing purposes
     """
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {"RequestType": {"default": "MonteCarlo", "optional": False},
                 "PrimaryDataset": {"optional": False, "validate": primdataset,
                                    "attr": "inputPrimaryDataset", "null": False},
                 "Seeding": {"default": "AutomaticSeeding", "null": False,
                             "validate": lambda x: x in ["ReproducibleSeeding", "AutomaticSeeding"]},
                 "FilterEfficiency": {"default": 1.0, "type": float, "null": False,
                                      "validate": lambda x: x > 0.0},
                 "RequestNumEvents": {"type": int, "null": False,
                                      "optional": False, "validate": lambda x: x > 0},
                 "FirstEvent": {"default": 1, "type": int, "validate": lambda x: x > 0,
                                "null": False},
                 "FirstLumi": {"default": 1, "type": int, "validate": lambda x: x > 0,
                               "null": False},
                 "MCPileup": {"validate": dataset, "attr": "mcPileup", "null": True},
                 "DataPileup": {"validate": dataset, "attr": "dataPileup", "null": True},
                 "SplittingAlgo": {"default": "EventBased", "null": False,
                                   "validate": lambda x: x in ["EventBased"],
                                   "attr": "prodJobSplitAlgo"},
                 "DeterministicPileup": {"default": False, "type": strToBool, "null": False},
                 "EventsPerJob": {"type": int, "validate": lambda x: x > 0, "null": True},
                 "EventsPerLumi": {"type": int, "validate": lambda x: x > 0, "null": True},
                 "LheInputFiles": {"default": False, "type": strToBool, "null": False}
                 }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #4
0
    def getWorkloadCreateArgs():
        baseArgs = StdBase.getWorkloadCreateArgs()
        specArgs = {"InputDataset": {"optional": False, "validate": dataset, "null": False},
                    "Scenario": {"optional": True, "null": True, "attr": "procScenario"},
                    "PrimaryDataset": {"optional": True, "validate": primdataset,
                                       "attr": "inputPrimaryDataset", "null": True},
                    "RunBlacklist": {"default": [], "type": makeList, "null": False,
                                     "validate": lambda x: all([int(y) > 0 for y in x])},
                    "RunWhitelist": {"default": [], "type": makeList, "null": False,
                                     "validate": lambda x: all([int(y) > 0 for y in x])},
                    "BlockBlacklist": {"default": [], "type": makeList,
                                       "validate": lambda x: all([block(y) for y in x])},
                    "BlockWhitelist": {"default": [], "type": makeList,
                                       "validate": lambda x: all([block(y) for y in x])},
                    "SplittingAlgo": {"default": "EventAwareLumiBased", "null": False,
                                      "validate": lambda x: x in ["EventBased", "LumiBased",
                                                                  "EventAwareLumiBased", "FileBased"],
                                      "attr": "procJobSplitAlgo"},
                    "EventsPerJob": {"type": int, "validate": lambda x: x > 0, "null": True},
                    "LumisPerJob": {"default": 8, "type": int, "null": False,
                                    "validate": lambda x: x > 0},
                    "FilesPerJob": {"default": 1, "type": int, "null": False,
                                    "validate": lambda x: x > 0}
                    }

        baseArgs.update(specArgs)
        StdBase.setDefaultArgumentsProperty(baseArgs)
        return baseArgs
コード例 #5
0
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {"RequestType": {"default": "StoreResults", "optional": False},
                 "InputDataset": {"optional": False, "validate": dataset, "null": False},
                 "ConfigCacheID": {"optional": True, "null": True},
                 "DataTier": {"default": "USER", "type": str,
                              "optional": True, "validate": None,
                              "attr": "dataTier", "null": False},
                 "PhysicsGroup": {"default": "", "optional": False,
                                  "null": False, "validate": physicsgroup},
                 "MergedLFNBase": {"default": "/store/results", "type": str,
                                   "optional": True, "validate": None,
                                   "attr": "mergedLFNBase", "null": False},
                 "BlockBlacklist": {"default": [], "type": makeList,
                                    "optional": True, "validate": lambda x: all([block(y) for y in x]),
                                    "attr": "blockBlacklist", "null": False},
                 "BlockWhitelist": {"default": [], "type": makeList,
                                    "optional": True, "validate": lambda x: all([block(y) for y in x]),
                                    "attr": "blockWhitelist", "null": False},
                 "RunBlacklist": {"default": [], "type": makeList,
                                  "optional": True, "validate": lambda x: all([int(y) > 0 for y in x]),
                                  "attr": "runBlacklist", "null": False},
                 "RunWhitelist": {"default": [], "type": makeList,
                                  "optional": True, "validate": lambda x: all([int(y) > 0 for y in x]),
                                  "attr": "runWhitelist", "null": False}}
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #6
0
ファイル: DataProcessing.py プロジェクト: DAMason/WMCore
    def getWorkloadCreateArgs():
        baseArgs = StdBase.getWorkloadCreateArgs()
        specArgs = {"InputDataset": {"optional": False, "validate": dataset, "null": False},
                    "Scenario": {"optional": True, "null": True, "attr": "procScenario"},
                    "PrimaryDataset": {"optional": True, "validate": primdataset,
                                       "attr": "inputPrimaryDataset", "null": True},
                    "RunBlacklist": {"default": [], "type": makeList, "null": False,
                                     "validate": lambda x: all([int(y) > 0 for y in x])},
                    "RunWhitelist": {"default": [], "type": makeList, "null": False,
                                     "validate": lambda x: all([int(y) > 0 for y in x])},
                    "BlockBlacklist": {"default": [], "type": makeList,
                                       "validate": lambda x: all([block(y) for y in x])},
                    "BlockWhitelist": {"default": [], "type": makeList,
                                       "validate": lambda x: all([block(y) for y in x])},
                    "SplittingAlgo": {"default": "EventAwareLumiBased", "null": False,
                                      "validate": lambda x: x in ["EventBased", "LumiBased",
                                                                  "EventAwareLumiBased", "FileBased"],
                                      "attr": "procJobSplitAlgo"},
                    "EventsPerJob": {"type": int, "validate": lambda x: x > 0, "null": True},
                    "LumisPerJob": {"default": 8, "type": int, "null": False,
                                    "validate": lambda x: x > 0},
                    "FilesPerJob": {"default": 1, "type": int, "null": False,
                                    "validate": lambda x: x > 0}
                    }

        baseArgs.update(specArgs)
        StdBase.setDefaultArgumentsProperty(baseArgs)
        return baseArgs
コード例 #7
0
ファイル: MonteCarlo.py プロジェクト: DAMason/WMCore
 def getWorkloadCreateArgs():
     """
     Some default values set for testing purposes
     """
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {"RequestType": {"default": "MonteCarlo", "optional": False},
                 "PrimaryDataset": {"optional": False, "validate": primdataset,
                                    "attr": "inputPrimaryDataset", "null": False},
                 "Seeding": {"default": "AutomaticSeeding", "null": False,
                             "validate": lambda x: x in ["ReproducibleSeeding", "AutomaticSeeding"]},
                 "FilterEfficiency": {"default": 1.0, "type": float, "null": False,
                                      "validate": lambda x: x > 0.0},
                 "RequestNumEvents": {"type": int, "null": False,
                                      "optional": False, "validate": lambda x: x > 0},
                 "FirstEvent": {"default": 1, "type": int, "validate": lambda x: x > 0,
                                "null": False},
                 "FirstLumi": {"default": 1, "type": int, "validate": lambda x: x > 0,
                               "null": False},
                 "MCPileup": {"validate": dataset, "attr": "mcPileup", "null": True},
                 "DataPileup": {"validate": dataset, "attr": "dataPileup", "null": True},
                 "SplittingAlgo": {"default": "EventBased", "null": False,
                                   "validate": lambda x: x in ["EventBased"],
                                   "attr": "prodJobSplitAlgo"},
                 "DeterministicPileup": {"default": False, "type": strToBool, "null": False},
                 "EventsPerJob": {"type": int, "validate": lambda x: x > 0, "null": True},
                 "EventsPerLumi": {"type": int, "validate": lambda x: x > 0, "null": True},
                 "LheInputFiles": {"default": False, "type": strToBool, "null": False}
                 }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #8
0
ファイル: StepChain.py プロジェクト: scarletnorberg/WMCore
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {
         "RequestType": {
             "default": "StepChain",
             "optional": False
         },
         "Step1": {
             "default": {},
             "optional": False,
             "type": dict
         },
         # ConfigCacheID is not used in the main dict for StepChain
         "ConfigCacheID": {
             "optional": True,
             "null": True
         },
         "DeterministicPileup": {
             "default": False,
             "type": strToBool,
             "optional": True,
             "null": False
         },
         "PrimaryDataset": {
             "null": True,
             "validate": primdataset
         },
         "StepChain": {
             "default": 1,
             "type": int,
             "null": False,
             "optional": False,
             "validate": lambda x: x > 0
         },
         "ChainParentageMap": {
             "default": {},
             "type": dict
         },
         "FirstEvent": {
             "default": 1,
             "type": int,
             "validate": lambda x: x > 0,
             "null": False
         },
         "FirstLumi": {
             "default": 1,
             "type": int,
             "validate": lambda x: x > 0,
             "null": False
         },
         "ParentageResolved": {
             "default": False,
             "type": strToBool,
             "null": False
         },
     }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #9
0
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {
         "RequestType": {
             "default": "TaskChain",
             "optional": False
         },
         "Task1": {
             "default": {},
             "optional": False,
             "type": dict
         },
         # ConfigCacheID is not used in the main dict for TaskChain
         "ConfigCacheID": {
             "optional": True,
             "null": True
         },
         "IgnoredOutputModules": {
             "default": [],
             "type": makeList,
             "null": False
         },
         "TaskChain": {
             "default": 1,
             "type": int,
             "optional": False,
             "validate": lambda x: x > 0,
             "attr": "taskChain",
             "null": False
         },
         "ChainParentageMap": {
             "default": {},
             "type": dict
         },
         "FirstEvent": {
             "default": 1,
             "type": int,
             "optional": True,
             "validate": lambda x: x > 0,
             "attr": "firstEvent",
             "null": False
         },
         "FirstLumi": {
             "default": 1,
             "type": int,
             "optional": True,
             "validate": lambda x: x > 0,
             "attr": "firstLumi",
             "null": False
         }
     }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #10
0
def validate_request_priority(reqArgs):
    """
    Validate the RequestPriority argument against its definition
    in StdBase
    :param reqArgs: dictionary of user request arguments
    :return: nothing, but raises an exception in case of an invalid value
    """
    if 'RequestPriority' in reqArgs:
        reqPrioDefin = StdBase.getWorkloadCreateArgs()['RequestPriority']
        if not isinstance(reqArgs['RequestPriority'], reqPrioDefin['type']):
            msg = "RequestPriority must be of integer type, not: {}".format(
                type(reqArgs['RequestPriority']))
            raise InvalidSpecParameterValue(msg)
        if reqPrioDefin['validate'](reqArgs['RequestPriority']) is False:
            raise InvalidSpecParameterValue(
                "RequestPriority must be an integer between 0 and 999999")
コード例 #11
0
ファイル: StepChain.py プロジェクト: amaltaro/WMCore
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {"RequestType": {"default": "StepChain", "optional": False},
                 "Step1": {"default": {}, "optional": False, "type": dict},
                 # ConfigCacheID is not used in the main dict for StepChain
                 "ConfigCacheID": {"optional": True, "null": True},
                 "DeterministicPileup": {"default": False, "type": strToBool, "optional": True, "null": False},
                 "PrimaryDataset": {"null": True, "validate": primdataset},
                 "StepChain": {"default": 1, "type": int, "null": False,
                               "optional": False, "validate": lambda x: x > 0},
                 "FirstEvent": {"default": 1, "type": int, "validate": lambda x: x > 0,
                                "null": False},
                 "FirstLumi": {"default": 1, "type": int, "validate": lambda x: x > 0,
                               "null": False}
                }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #12
0
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {"RequestType": {"default": "TaskChain", "optional": False},
                 "Task1": {"default": {}, "optional": False, "type": dict},
                 # ConfigCacheID is not used in the main dict for TaskChain
                 "ConfigCacheID": {"optional": True, "null": True},
                 "IgnoredOutputModules": {"default": [], "type": makeList, "null": False},
                 "TaskChain": {"default": 1, "type": int,
                               "optional": False, "validate": lambda x: x > 0,
                               "attr": "taskChain", "null": False},
                 "FirstEvent": {"default": 1, "type": int,
                                "optional": True, "validate": lambda x: x > 0,
                                "attr": "firstEvent", "null": False},
                 "FirstLumi": {"default": 1, "type": int,
                               "optional": True, "validate": lambda x: x > 0,
                               "attr": "firstLumi", "null": False}
                }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #13
0
ファイル: Repack.py プロジェクト: alexanderrichards/WMCore
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {"RequestType": {"default": "Repack"},
                 "ConfigCacheID": {"optional": True, "null": True},
                 "Scenario": {"default": "fake", "attr": "procScenario"},
                 "GlobalTag": {"default": "fake"},
                 "ProcessingString": {"default": "", "validate": procstringT0},
                 "Outputs": {"type": makeList, "optional": False},
                 "MaxSizeSingleLumi": {"type": int, "optional": False},
                 "MaxSizeMultiLumi": {"type": int, "optional": False},
                 "MaxInputEvents": {"type": int, "optional": False},
                 "MaxInputFiles": {"type": int, "optional": False},
                 "MaxLatency": {"type": int, "optional": False},
                 "MinInputSize": {"type": int, "optional": False},
                 "MaxInputSize": {"type": int, "optional": False},
                 "MaxEdmSize": {"type": int, "optional": False},
                 "MaxOverSize": {"type": int, "optional": False},
                 }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #14
0
ファイル: Repack.py プロジェクト: panwarlsweet/WMCore
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {
         "RequestType": {
             "default": "Repack"
         },
         "ConfigCacheID": {
             "optional": True,
             "null": True
         },
         "Scenario": {
             "default": "fake",
             "attr": "procScenario"
         },
         "GlobalTag": {
             "default": "fake"
         },
         "ProcessingString": {
             "default": "",
             "validate": procstringT0
         },
         "Outputs": {
             "type": makeList,
             "optional": False
         },
         "MaxSizeSingleLumi": {
             "type": int,
             "optional": False
         },
         "MaxSizeMultiLumi": {
             "type": int,
             "optional": False
         },
         "MaxInputEvents": {
             "type": int,
             "optional": False
         },
         "MaxInputFiles": {
             "type": int,
             "optional": False
         },
         "MaxLatency": {
             "type": int,
             "optional": False
         },
         "MinInputSize": {
             "type": int,
             "optional": False
         },
         "MaxInputSize": {
             "type": int,
             "optional": False
         },
         "MaxEdmSize": {
             "type": int,
             "optional": False
         },
         "MaxOverSize": {
             "type": int,
             "optional": False
         },
     }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #15
0
ファイル: StepChain.py プロジェクト: todor-ivanov/WMCore
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {
         "RequestType": {
             "default": "StepChain",
             "optional": False
         },
         "Step1": {
             "default": {},
             "optional": False,
             "type": dict
         },
         # ConfigCacheID is not used in the main dict for StepChain
         "ConfigCacheID": {
             "optional": True,
             "null": True
         },
         "DeterministicPileup": {
             "default": False,
             "type": strToBool,
             "optional": True,
             "null": False
         },
         "PrimaryDataset": {
             "null": True,
             "validate": primdataset
         },
         "StepChain": {
             "default": 1,
             "type": int,
             "null": False,
             "optional": False,
             "validate": lambda x: x > 0
         },
         "ChainParentageMap": {
             "default": {},
             "type": dict
         },
         "FirstEvent": {
             "default": 1,
             "type": int,
             "validate": lambda x: x > 0,
             "null": False
         },
         "FirstLumi": {
             "default": 1,
             "type": int,
             "validate": lambda x: x > 0,
             "null": False
         },
         "ParentageResolved": {
             "default": False,
             "type": strToBool,
             "null": False
         },
         ### Override StdBase parameter definition
         "TimePerEvent": {
             "default": 12.0,
             "type": float,
             "validate": lambda x: x > 0
         },
         "Memory": {
             "default": 2300.0,
             "type": float,
             "validate": lambda x: x > 0
         },
         "Multicore": {
             "default": 1,
             "type": int,
             "validate": checkMemCore
         },
         "EventStreams": {
             "type": int,
             "null": True,
             "default": 0,
             "validate": checkEventStreams
         }
     }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #16
0
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {
         "RequestType": {
             "default": "StoreResults",
             "optional": False
         },
         "InputDataset": {
             "optional": False,
             "validate": dataset,
             "null": False
         },
         "CmsPath": {
             "default": "/tmp",
             "type": str,
             "optional": False,
             "validate": None,
             "attr": "cmsPath",
             "null": False
         },
         "DataTier": {
             "default": "USER",
             "type": str,
             "optional": True,
             "validate": None,
             "attr": "dataTier",
             "null": False
         },
         "MergedLFNBase": {
             "default": "/store/results",
             "type": str,
             "optional": True,
             "validate": None,
             "attr": "mergedLFNBase",
             "null": False
         },
         "BlockBlacklist": {
             "default": [],
             "type": makeList,
             "optional": True,
             "validate": lambda x: all([block(y) for y in x]),
             "attr": "blockBlacklist",
             "null": False
         },
         "BlockWhitelist": {
             "default": [],
             "type": makeList,
             "optional": True,
             "validate": lambda x: all([block(y) for y in x]),
             "attr": "blockWhitelist",
             "null": False
         },
         "RunBlacklist": {
             "default": [],
             "type": makeList,
             "optional": True,
             "validate": lambda x: all([int(y) > 0 for y in x]),
             "attr": "runBlacklist",
             "null": False
         },
         "RunWhitelist": {
             "default": [],
             "type": makeList,
             "optional": True,
             "validate": lambda x: all([int(y) > 0 for y in x]),
             "attr": "runWhitelist",
             "null": False
         }
     }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #17
0
ファイル: Express.py プロジェクト: panwarlsweet/WMCore
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {
         "RequestType": {
             "default": "Express"
         },
         "ConfigCacheID": {
             "optional": True,
             "null": True
         },
         "Scenario": {
             "optional": False,
             "attr": "procScenario"
         },
         "RecoCMSSWVersion": {
             "validate": lambda x: x in releases(),
             "optional": False,
             "attr": "recoFrameworkVersion"
         },
         "RecoScramArch": {
             "validate": lambda x: all([y in architectures() for y in x]),
             "optional": False,
             "type": makeNonEmptyList
         },
         "GlobalTag": {
             "optional": False
         },
         "GlobalTagTransaction": {
             "optional": False
         },
         "ProcessingString": {
             "default": "",
             "validate": procstringT0
         },
         "StreamName": {
             "optional": False
         },
         "SpecialDataset": {
             "optional": False
         },
         "AlcaHarvestTimeout": {
             "type": int,
             "optional": False
         },
         "AlcaHarvestDir": {
             "optional": False,
             "null": True
         },
         "AlcaSkims": {
             "type": makeList,
             "optional": False
         },
         "DQMSequences": {
             "type": makeList,
             "attr": "dqmSequences",
             "optional": False
         },
         "Outputs": {
             "type": makeList,
             "optional": False
         },
         "MaxInputRate": {
             "type": int,
             "optional": False
         },
         "MaxInputEvents": {
             "type": int,
             "optional": False
         },
         "MaxInputSize": {
             "type": int,
             "optional": False
         },
         "MaxInputFiles": {
             "type": int,
             "optional": False
         },
         "MaxLatency": {
             "type": int,
             "optional": False
         },
     }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs
コード例 #18
0
ファイル: TaskChain.py プロジェクト: todor-ivanov/WMCore
 def getWorkloadCreateArgs():
     baseArgs = StdBase.getWorkloadCreateArgs()
     specArgs = {
         "RequestType": {
             "default": "TaskChain",
             "optional": False
         },
         "Task1": {
             "default": {},
             "optional": False,
             "type": dict
         },
         # ConfigCacheID is not used in the main dict for TaskChain
         "ConfigCacheID": {
             "optional": True,
             "null": True
         },
         "IgnoredOutputModules": {
             "default": [],
             "type": makeList,
             "null": False
         },
         "TaskChain": {
             "default": 1,
             "type": int,
             "optional": False,
             "validate": lambda x: x > 0,
             "attr": "taskChain",
             "null": False
         },
         "ChainParentageMap": {
             "default": {},
             "type": dict
         },
         "FirstEvent": {
             "default": 1,
             "type": int,
             "optional": True,
             "validate": lambda x: x > 0,
             "attr": "firstEvent",
             "null": False
         },
         "FirstLumi": {
             "default": 1,
             "type": int,
             "optional": True,
             "validate": lambda x: x > 0,
             "attr": "firstLumi",
             "null": False
         },
         ### Override StdBase parameter definition
         "TimePerEvent": {
             "default": 12.0,
             "type": float,
             "validate": checkTimePerEvent
         },
         "Memory": {
             "default": 2300.0,
             "type": float,
             "validate": checkMemCore
         },
         "Multicore": {
             "default": 1,
             "type": int,
             "validate": checkMemCore
         },
         "EventStreams": {
             "type": int,
             "null": True,
             "default": 0,
             "validate": checkEventStreams
         },
         # no need for workload-level defaults, if task-level default is provided
         "RequiresGPU": {
             "default": None,
             "null": True,
             "validate": lambda x: x in
             ("forbidden", "optional", "required")
         },
         "GPUParams": {
             "default": json.dumps(None),
             "validate": gpuParameters
         },
     }
     baseArgs.update(specArgs)
     StdBase.setDefaultArgumentsProperty(baseArgs)
     return baseArgs