Document Gerrit Branch Lock job
[releng/global-jjb.git] / jjb / lf-ci-jobs.yaml
index e9e483e..638716e 100644 (file)
@@ -36,6 +36,7 @@
     github-url: 'https://github.com'
     stream: master
     submodule-recursive: true
+    submodule-timeout: 10
     packer-cloud-settings: packer-cloud-env
     packer-version: 1.2.5
 
     jjb-version: 2.2.1
     stream: master
     submodule-recursive: true
+    submodule-timeout: 10
 
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
-        pattern: '.*\.groovy'
+        pattern: 'jjb/.*'
       - compare-type: REG_EXP
-        pattern: '.*\.sh'
+        pattern: 'global-jjb'
       - compare-type: REG_EXP
-        pattern: '.*\.bat'
-      - compare-type: REG_EXP
-        pattern: '.*\.ps1'
-      - compare-type: REG_EXP
-        pattern: '.*\.(yaml|yml)'
-      - compare-type: REG_EXP
-        pattern: '.*\/global-jjb'
+        pattern: 'shell/.*'
 
     # github_included_regions MUST match gerrit_trigger_file_paths
     github_included_regions:
-      - '.*\.groovy'
-      - '.*\.sh'
-      - '.*\.bat'
-      - '.*\.ps1'
-      - '.*\.(yaml|yml)'
-      - '.*\/global-jjb'
+      - 'jjb/.*'
+      - 'global-jjb'
+      - 'shell/.*'
 
     #####################
     # Job Configuration #
     disable-job: false
     git-url: '$GIT_URL/$GERRIT_PROJECT'
     stream: master
+    submodule-timeout: 10
     gerrit_merge_triggers:
       - comment-added-contains-event:
           comment-contains-value: (un)?lock branch$
           refspec: ''
           branch: '{branch}'
           submodule-recursive: false
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
       - inject:
           properties-content: 'jenkins_silos={jenkins-silos}'
       - shell: !include-raw-escape: ../shell/jenkins-configure-clouds.sh
-      - shell: rm "$HOME/.config/jenkins_jobs/jenkins_jobs.ini"
+      - shell: rm -f "$HOME/.config/jenkins_jobs/jenkins_jobs.ini"
 
 - builder:
     name: lf-jenkins-cfg-global-vars
       - inject:
           properties-content: 'jenkins_silos={jenkins-silos}'
       - shell: !include-raw-escape: ../shell/jenkins-configure-global-vars.sh
-      - shell: rm "$HOME/.config/jenkins_jobs/jenkins_jobs.ini"
+      - shell: rm -f "$HOME/.config/jenkins_jobs/jenkins_jobs.ini"
 
 - lf_jenkins_configuration: &lf_jenkins_cfg_merge
     name: lf-jenkins-cfg-merge
     git-url: '$GIT_URL/$GERRIT_PROJECT'
     github-url: 'https://github.com'
     jenkins-silos: production sandbox
+    submodule-timeout: 10
 
     gerrit_merge_triggers:
       - change-merged-event
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
     builders:
-      - shell: !include-raw-escape:
-          - ../shell/lftools-install.sh
+      - lf-infra-pre-build
       - lf-jenkins-cfg-global-vars:
           jenkins-silos: '{jenkins-silos}'
       - lf-jenkins-cfg-clouds:
           refspec: 'refs/heads/{branch}'
           branch: '{branch}'
           submodule-recursive: true
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           refspec: ''
           branch: 'refs/heads/{branch}'
           submodule-recursive: true
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
     git-url: '$GIT_URL/$PROJECT'
     github-url: 'https://github.com'
     stream: master
+    submodule-timeout: 10
     gerrit_jjb_deploy_job_triggers:
       - comment-added-contains-event:
           comment-contains-value: 'jjb-deploy[:]* (?!\*+$).+$'
           refspec: 'refs/heads/{branch}'
           branch: '{branch}'
           submodule-recursive: true
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
           branch: '$sha1'
           submodule-recursive: true
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
     #####################
 
     builders:
+      - lf-infra-pre-build
       - lf-infra-jjbini
       - shell: !include-raw-escape:
           - ../shell/jjb-install.sh
           refspec: ''
           branch: '{branch}'
           submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           refspec: ''
           branch: 'refs/heads/{branch}'
           submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
     concurrent: true
 
     builders:
+      - lf-infra-pre-build
       - lf-infra-jjbini
       - shell: !include-raw-escape:
           - ../shell/git-validate-jira-urls.sh
           refspec: '$GERRIT_REFSPEC'
           branch: '$GERRIT_BRANCH'
           submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: gerrit
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
           branch: '$sha1'
           submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
 
     builders:
       - shell: |
-          cd jjb/global-jjb
+          cd global-jjb
           git fetch https://gerrit.linuxfoundation.org/infra/releng/global-jjb $GERRIT_REFSPEC
           git cherry-pick FETCH_HEAD
       - lf-infra-jjbini
     ######################
 
     git-url: '$GIT_URL/$PROJECT'
+    submodule-timeout: 10
 
     #####################
     # Job Configuration #
           refspec: ''
           branch: 'master'
           submodule-recursive: true
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
     project-pattern: '**'
     spdx-disable: false
     stream: master
+    submodule-timeout: 10
 
     #####################
     # Job Configuration #
           branch: '$GERRIT_BRANCH'
           # Submodules are out of the project's control
           submodule-recursive: false
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: gerrit
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           branch: '$sha1'
           # Submodules are out of the project's control
           submodule-recursive: false
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           refspec: '$GERRIT_REFSPEC'
           branch: '$GERRIT_BRANCH'
           submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: gerrit
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
           branch: '$sha1'
           submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
     github-url: 'https://github.com'
     openstack-cloud: vex
     stream: master
+    submodule-timeout: 10
 
     #####################
     # Job Configuration #
           refspec: 'refs/heads/{branch}'
           branch: '{branch}'
           submodule-recursive: true
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           refspec: ''
           branch: 'refs/heads/{branch}'
           submodule-recursive: true
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           refspec: '$GERRIT_REFSPEC'
           branch: '$GERRIT_BRANCH'
           submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: gerrit
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           refspec: ''
           branch: 'refs/heads/{branch}'
           submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
     ######################
 
     build-timeout: 10
+    openstack: true
+    openstack-cloud: vex
 
     gerrit_verify_triggers:
       - patchset-created-event:
 
     builders:
       - lf-infra-packer-validate:
+          openstack: '{openstack}'
+          openstack-cloud: '{openstack-cloud}'
           packer-cloud-settings: '{packer-cloud-settings}'
           packer-version: '{packer-version}'
 
           refspec: '$GERRIT_REFSPEC'
           branch: '$GERRIT_BRANCH'
           submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: gerrit
           jenkins-ssh-credential: '{jenkins-ssh-credential}'
 
           refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
           branch: '$sha1'
           submodule-recursive: '{submodule-recursive}'
+          submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jenkins-ssh-credential: '{jenkins-ssh-credential}'