From 71af726e729ee3915c30e3d718e181fc8127e321 Mon Sep 17 00:00:00 2001
From: Vincent Massol <vincent@massol.net>
Date: Thu, 4 Jun 2020 11:08:33 +0200
Subject: [PATCH] [Misc] Don't run docker-all outside non weekends, see code
 comments for explanations

---
 Jenkinsfile | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/Jenkinsfile b/Jenkinsfile
index 230794e9735..6dc47173e36 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -217,7 +217,7 @@ private void buildStandardAll(builds)
       // Run the quality checks
       builds['Quality'].call()
     }
-    /* TODO: 27/4/2020: Disable sonar build to check the hypptheis that it's causing kills on agents by using too
+    /* TODO: 27/4/2020: Disable sonar build to check the hypothesis that it's causing kills on agents by using too
        much memory.
     ,
     'sonar': {
@@ -339,11 +339,17 @@ private def getCustomJobProperties()
   // Note: it's the xwikiBuild() calls from the standard builds that will set the jobProperties and thus set up the
   // job parameter + the crons. It would be better to set the properties directly in this Jenkinsfile but we haven't
   // found a way to merge properties and calling the properties() step will override any pre-existing properties.
+  //
+  // Notes:
+  // - We use @midnight so that Jenkins doesn't execute all jobs from various branches at the same time
+  // - We don't use @weekly for docker-all since we want them to execute on weekends only so that they don't execute
+  //   at the same time as docker-latest during standard week days, as it'll mean that all agents will be used and
+  //   be available for standard builds during the working days.
   return [
     parameters([string(defaultValue: 'standard', description: 'Job type', name: 'type')]),
     pipelineTriggers([
       parameterizedCron('''@midnight %type=docker-latest
-@weekly %type=docker-all
+H 0 * * 6 %type=docker-all
 @monthly %type=docker-unsupported'''),
       cron("@monthly")
     ])
-- 
GitLab