+ # find number of cores
+ factory.addStep(SetProperty(
+ name = "nproc",
+ property = "nproc",
+ description = "Finding number of CPUs",
+ command = ["nproc"]))
+
+ # expire tree if needed
+ if tree_expire > 0:
+ factory.addStep(FileDownload(
+ mastersrc = "expire.sh",
+ slavedest = "../expire.sh",
+ mode = 0755))
+
+ factory.addStep(ShellCommand(
+ name = "expire",
+ description = "Checking for build tree expiry",
+ command = ["./expire.sh", str(tree_expire)],
+ workdir = ".",
+ haltOnFailure = True,
+ timeout = 2400))
+
+ # user-requested clean targets
+ for tuple in CleanTargetMap:
+ factory.addStep(ShellCommand(
+ name = tuple[1],
+ description = 'User-requested "make %s"' % tuple[1],
+ command = ["make", tuple[1], "V=s"],
+ doStepIf = IsCleanRequested(tuple[0])
+ ))
+
+ factory.addStep(MasterShellCommand(
+ name = "maketag",
+ description = "Tagging Git repository",
+ command = [home_dir+'/maketag.sh', '-i', '-k', str(gpg_keyid or ''),
+ '-p', str(gpg_passfile or ''), '-v', WithProperties("%(tag:-)s")],
+ path = home_dir+'/source.git',
+ env = {'GNUPGHOME': gpg_home},
+ haltOnFailure = True,
+ doStepIf = IsTaggingRequested
+ ))
+
+ # switch to branch
+ factory.addStep(ShellCommand(
+ name = "switchbranch",
+ description = "Checking out Git branch",
+ command = ["git", "checkout", repo_branch],
+ haltOnFailure = True,
+ doStepIf = IsNoTaggingRequested
+ ))
+