Merge changes from topic 'improve-linting'
[releng/builder.git] / jjb / autorelease / autorelease-templates.yaml
index 2e62a848da9e8752aebda744da87ebec52712526..5ac36ad7c3499ca4c9a1a09f180591421f9d746f 100644 (file)
@@ -7,9 +7,9 @@
     node: centos7-autorelease-4c-16g
     jdk: '{jdk}'
 
-    logrotate:
-        daysToKeep: '{build-days-to-keep}'
-        artifactDaysToKeep: '14'
+    properties:
+        - opendaylight-infra-properties:
+            build-days-to-keep: '30'
 
     parameters:
         - maven-exec:
         - git:
             credentials-id: 'opendaylight-jenkins-ssh'
             url: '$GIT_BASE'
-            refspec: ''
+            refspec: '$GERRIT_REFSPEC'
             branches:
-                - 'origin/{branch}'
+                - '$GERRIT_BRANCH'
+            choosing-strategy: 'gerrit'
             skip-tag: true
             submodule:
                 recursive: true
         - wipe-local-maven-repo
         - jacoco-nojava-workaround
         - shell: "./scripts/list-project-dependencies.sh"
+        - autorelease-determine-merge-order
         - autorelease-cfp:
             autorelease-settings: 'autorelease-settings'
             odl-global-settings: 'odl-global-settings'
         - autorelease-generate-taglist
         - autorelease-distribute-taglist
+        - distribute-build-url:
+            path: 'integration/distribution/distribution-karaf/src/main/assembly'
         - autorelease-generate-release-patches
+        # In a perfect world projects should be releasing separately and we consume them
+        # via a project that pulls the release bits from each project from Nexus.
+        # Keep the patches compatible with that ideal, but apply an edit
+        # to enable building in a single maven reactor afterwards.
+        - autorelease-fix-relative-paths
         - maven-target:
               maven-version: 'mvn33'
               pom: 'pom.xml'
             cp *.log *.prop $_
 
     publishers:
+        - opendaylight-infra-notify-status
+        - archive:
+            # Need to archive dependencies.log in Jenkins to provide a simple
+            # way for downstream jobs to pull the latest version of this file
+            # in their builds.
+            artifacts: 'dependencies.log'
         - email-notification:
             email-recipients: '{email-recipients}'
             email-prefix: '[autorelease]'
               condition: UNSTABLE_OR_BETTER
               property-file: variables.jenkins-trigger
               fail-on-missing: true
+            - project: 'packaging-build-rpm-master'
+              condition: UNSTABLE_OR_BETTER
+              predefined-parameters: DOWNLOAD_URL=$BUNDLEURL
+              property-file: variables.jenkins-trigger
+              fail-on-missing: true
         - opendaylight-infra-shiplogs:
             maven-version: 'mvn33'
 
+
 - job-template:
     name: 'autorelease-project-report-{stream}'
 
     project-type: freestyle
     node: centos7-java-builder-2c-8g
 
-    logrotate:
-        daysToKeep: '{build-days-to-keep}'
-        numToKeep: '{build-num-to-keep}'
-        artifactDaysToKeep: '{build-artifact-days-to-keep}'
-        artifactNumToKeep: '{build-artifact-num-to-keep}'
+    properties:
+        - opendaylight-infra-properties:
+            build-days-to-keep: '{build-days-to-keep}'
 
     parameters:
         - opendaylight-infra-parameters:
         - git:
             credentials-id: 'opendaylight-jenkins-ssh'
             url: '$GIT_BASE'
-            refspec: ''
+            refspec: '$GERRIT_REFSPEC'
             branches:
-                - 'origin/{branch}'
+                - '$GERRIT_BRANCH'
+            choosing-strategy: 'gerrit'
             skip-tag: true
             submodule:
                 recursive: true
             properties-file: variables.prop
         - autorelease-generate-project-report
         - shell: "./scripts/list-project-dependencies.sh"
+        - autorelease-determine-merge-order
         - autorelease-sys-stats
 
     publishers: