Refactor macro/template cron param 66/8566/3
authorChristopher Lott (cl778h) <clott@research.att.com>
Mon, 29 Jan 2018 17:51:21 +0000 (12:51 -0500)
committerChristopher Lott (cl778h) <clott@research.att.com>
Mon, 29 Jan 2018 19:00:35 +0000 (14:00 -0500)
Be consistent with cron parameter: define in macro, use in template.
Never hard-code a trigger in a job template.
Document the parameters in the RST file.

Change-Id: I70a1deefd23bc9498f6c6013fb8751298dec7f53
Signed-off-by: Christopher Lott (cl778h) <clott@research.att.com>
docs/jjb/lf-maven-jobs.rst
jjb/lf-maven-jobs.yaml

index d1acc8d..29c565e 100644 (file)
@@ -222,6 +222,10 @@ This job uses the following strategy to deploy jobs to Nexus:
     :branch: Git branch to fetch for the build. (default: master)
     :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7)
     :build-timeout: Timeout in seconds before aborting build. (default: 60)
+    :cron: Cron schedule when to trigger the job. This parameter also
+        supports multiline input via YAML pipe | character in cases where
+        one may want to provide more than 1 cron timer. (default: 'H H * * 0'
+        to run weekly)
     :git-url: URL clone project from. (default: $GIT_URL/$PROJECT)
     :java-version: Version of Java to use for the build. (default: openjdk8)
     :mvn-global-settings: The name of the Maven global settings to use for
@@ -313,6 +317,10 @@ interest in that kind of support.
 
     :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7)
     :build-timeout: Timeout in seconds before aborting build. (default: 60)
+    :cron: Cron schedule when to trigger the job. This parameter also
+        supports multiline input via YAML pipe | character in cases where
+        one may want to provide more than 1 cron timer.  (default: 'H H * * 6'
+        to run weekly)
     :git-url: URL clone project from. (default: $GIT_URL/$PROJECT)
     :java-version: Version of Java to use for the build. (default: openjdk8)
     :mvn-global-settings: The name of the Maven global settings to use for
index 7e55dbe..609c592 100644 (file)
     branch: master
     build-days-to-keep: 30  # 30 days in case we need to troubleshoot
     build-timeout: 60
-    cron: ''
+    cron: 'H H * * 0'  # push fresh snapshot weekly
     git-url: '$GIT_URL/$PROJECT'
     java-version: openjdk8
     mvn-global-settings: global-settings
           choosing-strategy: default
 
     triggers:
-      - timed: 'H H * * 0'
+      - timed: '{obj:cron}'
       - gerrit:
           server-name: '{gerrit-server-name}'
           trigger-on: '{obj:gerrit_merge_triggers}'
     branch: master  # Sonar should always be run on master branch
     build-days-to-keep: 7
     build-timeout: 60
+    cron: 'H H * * 6'  # run weekly
     git-url: '$GIT_URL/$PROJECT'
     java-version: openjdk8
     mvn-global-settings: global-settings
               can call "org.codehaus.mojo:sonar-maven-plugin:3.3.0.603:sonar".
 
     triggers:
-      - timed: 'H H * * 6'
+      - timed: '{obj:cron}'
       - gerrit:
           server-name: '{gerrit-server-name}'
           trigger-on: '{obj:gerrit_sonar_triggers}'