params += paramdef.getDefaultParameterValue();
}
- params.add(new StringParameterValue('tools_commit_id', runConfig.lttngToolsCommitId))
- params.add(new StringParameterValue('modules_commit_id', runConfig.lttngModulesCommitId))
- params.add(new StringParameterValue('ust_commit_id', runConfig.lttngUstCommitId))
- params.add(new StringParameterValue('kernel_tag_id', runConfig.linuxTagId))
+ params.add(new StringParameterValue('LTTNG_TOOLS_COMMIT_ID', runConfig.lttngToolsCommitId))
+ params.add(new StringParameterValue('LTTNG_MODULES_COMMIT_ID', runConfig.lttngModulesCommitId))
+ params.add(new StringParameterValue('LTTNG_UST_COMMIT_ID', runConfig.lttngUstCommitId))
+ params.add(new StringParameterValue('KERNEL_TAG_ID', runConfig.linuxTagId))
def currBuild = job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
if (currBuild != null ) {
def recentLinuxBranchesOfInterest = ['master', 'linux-4.9.y', 'linux-4.4.y']
def legacyLttngBranchesOfInterest = ['stable-2.7']
-def legacyLinuxBranchesOfInterest = ['linux-3.18.y', 'linux-4.4.y']
+def legacyLinuxBranchesOfInterest = ['linux-3.18.y']
-// Generate configurations of interest
+// Generate configurations of interest.
def configurationOfInterest = [] as Set
recentLttngBranchesOfInterest.each { lttngBranch ->
def lttngBranchesOfInterest = recentLttngBranchesOfInterest + legacyLttngBranchesOfInterest
def linuxBranchesOfInterest = recentLinuxBranchesOfInterest + legacyLinuxBranchesOfInterest
-// For Linux branches, we look for new non-RC tags
+// For LTTng branches, we look for new commits.
def toolsHeadCommits = GetHeadCommits(toolsRepo, lttngBranchesOfInterest)
def modulesHeadCommits = GetHeadCommits(modulesRepo, lttngBranchesOfInterest)
def ustHeadCommits = GetHeadCommits(ustRepo, lttngBranchesOfInterest)
-// For LTTng branches, we look for new commits
+// For Linux branches, we look for new non-RC tags.
def linuxLastTagIds = GetLastTagIds(linuxRepo, linuxBranchesOfInterest)
// Load previously built Linux tag ids.
println("Loading Git object IDs of previously built projects from the workspace.");
def oldLinuxTags = LoadPreviousIdsFromWorkspace(linuxOnDiskPath) as Set
-// Load previously built LTTng commit ids
+// Load previously built LTTng commit ids.
def oldToolsHeadCommits = LoadPreviousIdsFromWorkspace(toolsOnDiskPath) as Set
def oldModulesHeadCommits = LoadPreviousIdsFromWorkspace(modulesOnDiskPath) as Set
def oldUstHeadCommits = LoadPreviousIdsFromWorkspace(ustOnDiskPath) as Set
def runConfigs = [] as Set
// For each top of branch kernel tags that were not seen before, schedule one
-// job for each lttng/linux tracked configurations
+// job for each lttng/linux tracked configurations.
linuxLastTagIds.each { linuxTag ->
if (!oldLinuxTags.contains(linuxTag.value)) {
lttngBranchesOfInterest.each { lttngBranch ->
jobType = 'baremetal_benchmarks';
}
-// Launch canary jobs.
-println("Schedule canary jobs once a day")
-canaryRunConfigs.each { config ->
- def jobName = jobType + '_canary';
- def currBuild = LaunchJob(jobName, config);
-
- // LaunchJob will return null if the job doesn't exist or is disabled.
- if (currBuild != null) {
- ongoingBuild[jobName] = currBuild;
- }
-}
-
// Launch regular jobs.
if (runConfigs.size() > 0) {
- println("Schedule jobs because of code changes.");
+ println("\nSchedule jobs triggered by code changes:");
runConfigs.each { config ->
def jobName = CraftJobName(jobType, config);
def currBuild = LaunchJob(jobName, config);
println("No new commit or tags, nothing more to do.")
}
+// Launch canary jobs.
+println("\nSchedule canary jobs once a day:")
+canaryRunConfigs.each { config ->
+ def jobName = jobType + '_canary';
+ def currBuild = LaunchJob(jobName, config);
+
+ // LaunchJob will return null if the job doesn't exist or is disabled.
+ if (currBuild != null) {
+ ongoingBuild[jobName] = currBuild;
+ }
+}
+
// Save the tag and commit IDs scheduled in the past and during this run to the
// workspace. We save it at the end to be sure all jobs were launched. We save
// the object IDs even in case of failure. There is no point of re-running the
// Sleep before the next iteration.
try {
- Thread.sleep(10000)
+ Thread.sleep(30000)
} catch(e) {
if (e in InterruptedException) {
build.setResult(hudson.model.Result.ABORTED)