diff --git a/src/python/CRABClient/JobType/Analysis.py b/src/python/CRABClient/JobType/Analysis.py index 7b3900ab..cced4c04 100644 --- a/src/python/CRABClient/JobType/Analysis.py +++ b/src/python/CRABClient/JobType/Analysis.py @@ -57,6 +57,7 @@ def run(self, filecacheurl = None, ): # pylint: disable=arguments-differ scram = ScramEnvironment(logger=self.logger) configArguments.update({'jobarch': scram.getScramArch(), + 'jobminuarch': scram.getScramMicroArch(), 'jobsw': scram.getCmsswVersion()}) # Build tarball diff --git a/src/python/CRABClient/JobType/ScramEnvironment.py b/src/python/CRABClient/JobType/ScramEnvironment.py index 20afcbc3..b0ba5fef 100644 --- a/src/python/CRABClient/JobType/ScramEnvironment.py +++ b/src/python/CRABClient/JobType/ScramEnvironment.py @@ -66,6 +66,8 @@ def initFromEnv(self): stdout, _, _ = execute_command(command='scram arch') self["SCRAM_ARCH"] = stdout + self["SCRAM_MIN_SUPPORTED_MICROARCH"] = os.environ.get("SCRAM_MIN_SUPPORTED_MICROARCH", "any") + try: self["CMSSW_BASE"] = os.environ["CMSSW_BASE"] self["CMSSW_VERSION"] = os.environ["CMSSW_VERSION"] @@ -101,3 +103,9 @@ def getScramArch(self): Determine the scram architecture """ return self["SCRAM_ARCH"] + + def getScramMicroArch(self): + """ + Determine the minimum required scram micro-architecture + """ + return self["SCRAM_MIN_SUPPORTED_MICROARCH"]