Merge "Clean distribution test job"
[releng/builder.git] / jjb / autorelease / autorelease-macros.yaml
index db61e47b0a85459a1e5a4c21ed57a0e7b7b5cbd8..e9e33f728e2c61d9e0a65b4768c4e85050d3fc7a 100644 (file)
             default: '{release-branch}'
             description: "The Release train branch to base build off eg. stable/helium"
 
+- parameter:
+    name: autorelease-release-datestamp
+    parameters:
+        - bool:
+            name: DATESTAMP
+            default: '{datestamp}'
+            description: "Whether to include a datestamp or not"
+
 - wrapper:
     name: autorelease-build-timeout
     wrappers:
         - timeout:
             type: absolute
-            timeout: 360
+            timeout: 1440
             fail: true
 
+- trigger:
+    name: autorelease-trigger-patch-site-merged
+    triggers:
+        - gerrit:
+            server-name: 'OpenDaylight'
+            trigger-on:
+                - change-merged-event
+                - comment-added-contains-event:
+                    comment-contains-value: 'republish'
+            projects:
+              - project-compare-type: 'ANT'
+                project-pattern: '{name}'
+                branches:
+                    - branch-compare-type: 'ANT'
+                      branch-pattern: '**/{branch}'
+                file-paths:
+                    - compare-type: ANT
+                      pattern: src/site/**
+                    - compare-type: ANT
+                      pattern: site.xml
+
+- trigger:
+    name: autorelease-trigger-patch-site-submitted
+    triggers:
+        - gerrit:
+            server-name: 'OpenDaylight'
+            trigger-on:
+                - patchset-created-event:
+                    exclude-drafts: 'false'
+                    exclude-trivial-rebase: 'false'
+                    exclude-no-code-change: 'false'
+                - draft-published-event
+                - comment-added-contains-event:
+                    comment-contains-value: 'recheck'
+                - comment-added-contains-event:
+                    comment-contains-value: 'reverify'
+            projects:
+              - project-compare-type: 'ANT'
+                project-pattern: '{name}'
+                branches:
+                  - branch-compare-type: 'ANT'
+                    branch-pattern: '**/{branch}'
+                file-paths:
+                    - compare-type: ANT
+                      pattern: src/site/**
+                    - compare-type: ANT
+                      pattern: site.xml
+
+- builder:
+    name: autorelease-checkout-gerrit-patch
+    builders:
+        - shell: |
+            cd ${GERRIT_PROJECT}
+            echo "Checking out ${GERRIT_PROJECT} patch ${GERRIT_REFSPEC}..."
+            git fetch origin ${GERRIT_REFSPEC} && git checkout FETCH_HEAD
+            cd ..
+
 - builder:
     name: autorelease-cfp
     builders:
         - config-file-provider:
             files:
                 - file-id: '{autorelease-settings}'
-                  variable: 'AUTORELEASE_SETTINGS'
+                  variable: 'SETTINGS_FILE'
                 - file-id: '{odl-global-settings}'
-                  variable: 'ODL_GLOBAL_SETTINGS'
+                  variable: 'GLOBAL_SETTINGS_FILE'
 
 - builder:
     name: autorelease-maven-deploy
     builders:
-        - shell: |
-            mkdir -p hide/from/pom/files
-            cd hide/from/pom/files
-            mkdir -p m2repo/org/
-            mv /tmp/r/org/opendaylight m2repo/org/
-            mvn org.sonatype.plugins:nexus-staging-maven-plugin:1.6.2:deploy-staged-repository -DrepositoryDirectory="`pwd`/m2repo" -DnexusUrl=http://nexus.opendaylight.org/ -DstagingProfileId="21a27b7f3bbb8d" -DserverId="opendaylight.weekly" -s $AUTORELEASE_SETTINGS -gs $ODL_GLOBAL_SETTINGS
+        - shell:
+            !include-raw:
+                - include-raw-autorelease-maven-deploy.sh
 
 - builder:
     name: autorelease-maven-sources
         - maven-target:
             maven-version: '{maven-version}'
             pom: 'pom.xml'
-            goals: 'dependency:sources -l sources.log -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+            goals: 'dependency:sources -DoutputFile=$WORKSPACE/sources.log -DappendOutput -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
             java-opts:
                 - '-Xmx4096m -XX:MaxPermSize=1024m'
             settings: '{settings}'
             global-settings: '{global-settings}'
+
+- builder:
+    name: autorelease-maven-sources-post-process
+    builders:
+        - shell: |
+            awk '/The following files have NOT been resolved:/,/^$/' sources.log > missing-sources.log
+
+- builder:
+    name: autorelease-generate-taglist
+    builders:
+        - shell: |
+            git submodule foreach 'echo $path `git rev-parse --verify HEAD` ${RELEASE_TAG} >> ../taglist.log'
+
+- builder:
+    name: autorelease-generate-release-patches
+    builders:
+    - shell:
+        !include-raw:
+            - include-raw-autorelease-release-versions.sh
+
+- builder:
+    name: autorelease-sys-stats
+    builders:
+        - shell: |
+            uname -a
+            df -h
+
+- builder:
+    name: autorelease-get-integration-test-variables
+    builders:
+    - shell:
+        !include-raw:
+            - include-raw-autorelease-get-integration-test-variables.sh
+
+- builder:
+    name: autorelease-generate-project-report
+    builders:
+    - shell:
+        !include-raw:
+            - include-raw-generate-project-report.sh