Provide maven settings pre-builder for yangtools
[releng/builder.git] / jjb / autorelease / autorelease-templates.yaml
index 3a2d3ce4216d7920264ab4c351c1eae27a16c1db..5bce394b20989f9d1d5e850bd5ae27002c03fe5c 100644 (file)
@@ -46,6 +46,9 @@
     prebuilders:
         - wipe-org-opendaylight-repo
         - jacoco-nojava-workaround
+        - provide-maven-settings:
+            global-settings-file: '{odl-global-settings}'
+            settings-file: '{autorelease-settings}'
         - autorelease-generate-taglist
         - autorelease-generate-release-patches
 
             odl-global-settings: '{odl-global-settings}'
         - autorelease-maven-deploy
         - shell: "./scripts/list-project-dependencies.sh"
+        - autorelease-get-integration-test-variables
         - autorelease-maven-sources:
             maven-version: '{mvn33}'
             settings: '{autorelease-settings}'
         - autorelease-sys-stats
 
     publishers:
-        - archive-artifacts:
-            artifacts: '*.log,patches/*.patch'
+    - archive-artifacts:
+        artifacts: '*.prop,*.log,patches/*.patch'
+    - email-notification:
+        email-prefix: '[autorelease]'
+    - trigger-parameterized-builds:
+        - project: 'integration-distribution-test-{integration-test}'
+          condition: UNSTABLE_OR_BETTER
+          property-file: variables.prop
+          fail-on-missing: true
+
+- job-template:
+    name: 'autorelease-project-report-{stream}'
+
+    project-type: freestyle
+    node: dynamic_verify
+
+    logrotate:
+        daysToKeep: '{build-days-to-keep}'
+        numToKeep: '{build-num-to-keep}'
+        artifactDaysToKeep: '{build-artifact-days-to-keep}'
+        artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - string:
+            name: REPORT_DIR
+            default: '$WORKSPACE/project-reports'
+            description: "The directory containing project reports"
+
+    scm:
+        - git:
+            credentials-id: '{ssh-credentials}'
+            url: '$GIT_BASE'
+            refspec: ''
+            branches:
+                - 'origin/{branch}'
+            skip-tag: true
+            submodule:
+                recursive: true
+
+    wrappers:
+        - timeout:
+            type: absolute
+            timeout: 30
+            fail: true
+        - ssh-agent-credentials:
+            users:
+                - '{ssh-credentials}'
+
+    triggers:
+        - timed: '0 0 * * 0'
+
+    builders:
+        - shell: 'echo "DATE=`date +%Y-%m-%d`" > $WORKSPACE/variables.prop'
+        - inject:
+            properties-file: variables.prop
+        - autorelease-generate-project-report
+        - shell: "./scripts/list-project-dependencies.sh"
+        - autorelease-sys-stats
+
+    publishers:
+    - archive-artifacts:
+        artifacts: '*.log,project-reports/*.log'
+    - email-ext:
+        attachments: 'project-reports/*.log'
+        recipients: 'skitt@redhat.com thanh.ha@linuxfoundation.org'
+        reply-to: dev@lists.opendaylight.org
+        content-type: default
+        subject: '[releng] ODL {stream} project report for ${{ENV, var="DATE"}}'
+        body: |
+            This is a project report generated on $DATE listing the commit
+            history of ODL projects for the past week. See attached
+            git-report.log
+
+            Archive also available on Jenkins at $BUILD_URL
+        always: true
+
+###
+### Maven Sites
+###
+
+- job-template:
+    name: 'autorelease-site-publish-{stream}'
+    node: dynamic_merge
+    concurrent: false
+    jdk: 'openjdk8'
+
+    # This job's purpose is to publish maven site
+
+    project-type: maven
+
+    logrotate:
+        daysToKeep: 7
+        numToKeep: 10
+        artifactDaysToKeep: -1
+        artifactNumToKeep: -1
+
+    parameters:
+    - project-parameter:
+        project: '{project}'
+    - gerrit-parameter:
+        branch: '{branch}'
+
+    scm:
+    - gerrit-trigger-scm:
+        credentials-id: '{ssh-credentials}'
+        refspec: ''
+        choosing-strategy: 'default'
+
+    wrappers:
+    - ssh-agent-credentials:
+        users:
+        - '{ssh-credentials}'
+
+    triggers:
+    - autorelease-trigger-patch-site-merged:
+        name: '{project}'
+        branch: '{branch}'
+
+    maven:
+        maven-name: '{mvn33}'
+        root-pom: 'site.xml'
+        goals: 'site:site site:deploy -Dstream={stream}'
+        maven-opts: '-Xmx1024m'
+        settings: '{autorelease-settings}'
+        global-settings: '{odl-global-settings}'
+
+    publishers:
+    - email-notification:
+        email-prefix: '[releng]'
+
+- job-template:
+    name: 'autorelease-site-verify-{stream}'
+    node: dynamic_verify
+    concurrent: true
+    jdk: 'openjdk8'
+
+    # This job's purpose is to verify maven site configuration
+
+    project-type: maven
+
+    logrotate:
+        daysToKeep: 7
+        numToKeep: 10
+        artifactDaysToKeep: -1
+        artifactNumToKeep: -1
+
+    parameters:
+    - project-parameter:
+        project: '{project}'
+    - gerrit-parameter:
+        branch: '{branch}'
+
+    scm:
+    - gerrit-trigger-scm:
+        credentials-id: '{ssh-credentials}'
+        refspec: '$GERRIT_REFSPEC'
+        choosing-strategy: 'gerrit'
+
+    wrappers:
+    - ssh-agent-credentials:
+        users:
+        - '{ssh-credentials}'
+
+    triggers:
+    - autorelease-trigger-patch-site-submitted:
+        name: '{project}'
+        branch: '{branch}'
+
+    maven:
+        maven-name: '{mvn33}'
+        root-pom: 'site.xml'
+        goals: 'site:site -Dstream={stream}'
+        maven-opts: '-Xmx1024m'
+        settings: '{autorelease-settings}'
+        global-settings: '{odl-global-settings}'
+
+    publishers:
         - email-notification:
-            email-prefix: '[autorelease]'
+            email-prefix: '[releng]'