Merge "Fix for newton jobs stacking problem"
[releng/builder.git] / jjb / releng-jobs.yaml
index 4d13488b8855fcda9916077da0e5ad9e77af2e8a..a74855eeefaf92c32346ae6f63048ecb8bf8f36e 100644 (file)
@@ -8,8 +8,11 @@
         - 'builder-check-poms'
         - 'builder-verify-packer'
         - 'builder-merge-packer-{platforms}-{templates}'
+        # OpenStack Related
         - 'builder-delete-stale-stacks'
+        # Automation for docs and jobs
         - 'builder-update-csit-tests'
+        - 'builder-update-image-list'
 
     platforms:
         - centos
           templates: devstack-pre-pip-mitaka
         - platforms: ubuntu-14.04
           templates: devstack-pre-pip-newton
+        - platforms: ubuntu-14.04
+          templates: devstack
+        - platforms: ubuntu-14.04
+          templates: docker
 
     project-type: freestyle
     archive-artifacts: '**/*.log'
@@ -55,7 +62,7 @@
 
 - job-template:
     name: builder-verify-jjb
-    node: jjbuilder
+    node: centos7-java-builder-2c-4g
 
     project-type: freestyle
 
             files: 'jjb/**'
 
     builders:
+        - opendaylight-infra-jjbini
         - shell: |
+            virtualenv $WORKSPACE/venv
+            source $WORKSPACE/venv/bin/activate
+            pip install --upgrade pip
             pip freeze
+            pip install jenkins-job-builder
             jenkins-jobs -l DEBUG test --recursive -o archives/job_output jjb/
             gzip archives/job_output/*
-
         - releng-check-unicode
         - verify-gpg-signature
 
 
 - job-template:
     name: 'builder-merge'
-    node: jjbuilder
+    node: centos7-java-builder-2c-4g
 
     # builder-merge job to run JJB update
     #
                       pattern: jjb/**
 
     builders:
+        - opendaylight-infra-jjbini
         - shell: |
+            virtualenv $WORKSPACE/venv
+            source $WORKSPACE/venv/bin/activate
+            pip install --upgrade pip
             pip freeze
+            pip install jenkins-job-builder
             jenkins-jobs --version
             jenkins-jobs update --recursive --delete-old --workers 4 jjb/
 
 - job-template:
     name: 'builder-weekly'
     disabled: false
-    node: jjbuilder
+    node: centos7-java-builder-2c-4g
 
     # builder-weekly job to run JJB update weekly
     #
         - timed: 'H H * * 0'
 
     builders:
+        - opendaylight-infra-jjbini
         - shell: |
+            virtualenv $WORKSPACE/venv
+            source $WORKSPACE/venv/bin/activate
+            pip install --upgrade pip
+            pip freeze
+            pip install jenkins-job-builder
             jenkins-jobs --flush-cache update --recursive --workers 4 jjb/
 
     publishers:
             build-timeout: '{build-timeout}'
 
     triggers:
-        - timed: 'H H/6 * * *'
+        # Attempt to clear up stacks every 30 mins in case we have orphaned stacks
+        - timed: '0,30 * * * *'
 
     builders:
         - shell: !include-raw-escape: opendaylight-infra-cleanup-stale-stacks.sh
         - opendaylight-infra-shiplogs:
             maven-version: 'mvn33'
 
+- job-template:
+    name: 'builder-update-image-list'
+    project-type: freestyle
+    node: centos7-java-builder-2c-4g
+
+    properties:
+        - opendaylight-infra-properties:
+            build-days-to-keep: 7
+
+    parameters:
+        - opendaylight-infra-parameters:
+            project: '{project}'
+            branch: '{branch}'
+            refspec: 'refs/heads/{branch}'
+            artifacts: '{archive-artifacts}'
+
+    scm:
+        - git-scm:
+            branch: '{branch}'
+
+    wrappers:
+        - opendaylight-infra-wrappers:
+            build-timeout: '{build-timeout}'
+        # Listed after to override openstack-infra-wrappers clouds.yaml definition
+        - config-file-provider:
+            files:
+                - file-id: opendaylight-private-clouds-yaml
+                  target: '$HOME/.config/openstack/clouds.yaml'
+
+    triggers:
+        # Update image list every Monday to Friday at 11:00 UTC
+        - timed: '0 11 * * 1-5'
+
+    builders:
+        - shell: !include-raw-escape: opendaylight-infra-update-image-list.sh
+        - opendaylight-infra-push-gerrit-patch:
+            project: '{project}'
+            gerrit-topic: 'releng-update-cloud-image-list'
+            gerrit-commit-message: 'Update cloud image list docs'
+
+    publishers:
+        - email-notification:
+            email-recipients: '{email-recipients}'
+            email-prefix: '[releng]'
+        - opendaylight-infra-shiplogs:
+            maven-version: 'mvn33'
+
 - job-template:
     name: 'builder-verify-packer'
     project-type: freestyle
 
     scm:
         - gerrit-trigger-scm:
-            refspec: ''
+            refspec: '$GERRIT_REFSPEC'
+            branches:
+                - '$GERRIT_BRANCH'
             choosing-strategy: 'default'
 
     wrappers:
                       branch-pattern: '**/{branch}'
                 file-paths:
                     - compare-type: ANT
-                      pattern: 'packer/**'
+                      pattern: 'packer/vars/{platforms}.json'
+                    - compare-type: ANT
+                      pattern: 'packer/templates/{templates}.json'
+                    - compare-type: ANT
+                      pattern: 'packer/provision/{templates}.sh'
+                    - compare-type: ANT
+                      pattern: 'packer/provision/system_reseal.sh'
+                    - compare-type: ANT
+                      pattern: 'packer/provision/rh-user_data.sh'
+                    - compare-type: ANT
+                      pattern: 'packer/provision/devstack-pre-pip.sh'
+                    - compare-type: ANT
+                      pattern: 'packer/provision/baseline.sh'
 
     builders:
         - packer-validate:
         - opendaylight-infra-properties:
             build-days-to-keep: 14
 
+    parameters:
+        - opendaylight-infra-parameters:
+            project: '{project}'
+            branch: '{branch}'
+            refspec: 'refs/heads/{branch}'
+            artifacts: '{archive-artifacts}'
+
+    scm:
+        - gerrit-trigger-scm:
+            refspec: ''
+            choosing-strategy: 'default'
+
     wrappers:
         - opendaylight-infra-wrappers:
             build-timeout: '{build-timeout}'
 
     triggers:
         - reverse:
-               jobs: 'build-merge'
+               jobs: 'builder-merge'
 
     builders:
         - shell: |