jjb: Immediately remove currentJobs with null build
[lttng-ci.git] / scripts / system-tests / system-trigger.groovy
index dc4e9b75d5fbf5405f0c10248acf39f6fde72cd9..6b1028d2a4cd07b1189c04a73f16ed252e5fbc31 100644 (file)
@@ -269,11 +269,15 @@ def CraftJobName = { jobType, linuxBranch, lttngBranch ->
 
 def LaunchJob = { jobName, jobInfo ->
   def job = Hudson.instance.getJob(jobName)
+  if (job == null) {
+    println(String.format("Failed to find job by name '%s'", jobName))
+    return null;
+  }
   def params = []
   for (paramdef in job.getProperty(ParametersDefinitionProperty.class).getParameterDefinitions()) {
     // If there is a default value for this parameter, use it. Don't use empty
     // default value parameters.
-    if (paramdef.getDefaultValue()) {
+    if (paramdef.getDefaultParameterValue() != null) {
       params += paramdef.getDefaultParameterValue();
     }
   }
@@ -304,18 +308,23 @@ def recentLttngBranchesOfInterest = ['master',
   'stable-2.13',
   'stable-2.12']
 def recentLinuxBranchesOfInterest = ['master',
-  'linux-5.16.y',
+  'linux-6.1.y',
   'linux-5.15.y',
   'linux-5.10.y',
   'linux-5.4.y',
   'linux-4.19.y',
   'linux-4.14.y',
-  'linux-4.9.y']
+]
 
 def legacyLttngBranchesOfInterest = []
-def legacyLinuxBranchesOfInterest = []
+def legacyLinuxBranchesOfInterest = [
+    'linux-5.14.y',
+    'linux-4.18.y',
+    'linux-4.12.y',
+    'linux-4.9.y',
+]
 
-def vmLinuxBranchesOfInterest = ['linux-3.18.y']
+def vmLinuxBranchesOfInterest = []
 
 // Generate configurations of interest.
 def configurationOfInterest = [] as Set
@@ -432,7 +441,21 @@ currentJobs.each { jobName, jobInfo ->
 
   jobInfo['status'] = 'PENDING';
   jobInfo['build'] = LaunchJob(jobName, jobInfo);
-  ongoingJobs += 1;
+  if (jobInfo['build'] != null) {
+    ongoingJobs += 1;
+  }
+}
+
+// Some jobs may have a null build immediately if LaunchJob
+// failed for some reason, those jobs can immediately be removed.
+def jobKeys = currentJobs.collect { jobName, jobInfo ->
+    return jobName;
+}
+jobKeys.each { k ->
+  if (currentJobs.get(k)['build'] == null) {
+    println(String.format("Removing job '%s' since build is null", k));
+    currentJobs.remove(k);
+  }
 }
 
 while (ongoingJobs > 0) {
This page took 0.025598 seconds and 4 git commands to generate.