Rename archive-build macro to opendaylight-infra-shiplogs
[releng/builder.git] / jjb / autorelease / autorelease-templates.yaml
1 # Autorelease build jobs
2
3 - job-template:
4     name: 'autorelease-release-{stream}'
5
6     project-type: maven
7     node: centos7-autorelease-4c-16g
8     jdk: '{jdk}'
9
10     logrotate:
11         daysToKeep: '{build-days-to-keep}'
12         artifactDaysToKeep: '14'
13
14     parameters:
15         - opendaylight-infra-parameters:
16             project: '{project}'
17             branch: '{branch}'
18             refspec: 'refs/heads/{branch}'
19             artifacts: '{archive-artifacts}'
20         - autorelease-release-tag:
21             release-tag: '{next-release-tag}'
22         - autorelease-release-branch:
23             release-branch: '{branch}'
24
25     scm:
26         - git:
27             credentials-id: 'opendaylight-jenkins-ssh'
28             url: '$GIT_BASE'
29             refspec: ''
30             branches:
31                 - 'origin/{branch}'
32             skip-tag: true
33             submodule:
34                 recursive: true
35                 timeout: 60
36
37     wrappers:
38         - opendaylight-infra-wrappers:
39             build-timeout: '1440'
40
41     triggers:
42         - timed: 'H 0 * * *'
43
44     prebuilders:
45         - wipe-local-maven-repo
46         - jacoco-nojava-workaround
47         - shell: "./scripts/list-project-dependencies.sh"
48         - autorelease-cfp:
49             autorelease-settings: 'autorelease-settings'
50             odl-global-settings: 'odl-global-settings'
51         - autorelease-generate-taglist
52         - autorelease-distribute-taglist
53         - autorelease-generate-release-patches
54
55     maven:
56         maven-name: '{mvn33}'
57         root-pom: 'pom.xml'
58         goals: 'clean deploy -V -B -Pintegrationtests,docs,repoBuild -Djenkins -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage'
59         maven-opts: '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
60         settings: 'autorelease-settings'
61         settings-type: cfp
62         global-settings: 'odl-global-settings'
63         global-settings-type: cfp
64         automatic-archiving: true
65         post-step-run-condition: UNSTABLE
66
67     postbuilders:
68         - autorelease-maven-deploy
69         - autorelease-get-integration-test-variables
70         - autorelease-maven-sources:
71             maven-version: '{mvn33}'
72             settings: 'autorelease-settings'
73             global-settings: 'odl-global-settings'
74         - autorelease-maven-sources-post-process
75         - autorelease-sys-stats
76         - shell: |
77             mkdir -p archives/
78             cp *.log *.prop $_
79
80     publishers:
81     - email-notification:
82         email-prefix: '[autorelease]'
83     - trigger-parameterized-builds:
84         - project: 'integration-distribution-test-{integration-test}'
85           condition: UNSTABLE_OR_BETTER
86           property-file: variables.prop
87           fail-on-missing: true
88     - opendaylight-infra-shiplogs:
89         maven-version: '{mvn33}'
90
91 - job-template:
92     name: 'autorelease-project-report-{stream}'
93
94     project-type: freestyle
95     node: centos7-java-builder-2c-8g
96
97     logrotate:
98         daysToKeep: '{build-days-to-keep}'
99         numToKeep: '{build-num-to-keep}'
100         artifactDaysToKeep: '{build-artifact-days-to-keep}'
101         artifactNumToKeep: '{build-artifact-num-to-keep}'
102
103     parameters:
104         - opendaylight-infra-parameters:
105             project: '{project}'
106             branch: '{branch}'
107             refspec: 'refs/heads/{branch}'
108             artifacts: '{archive-artifacts}'
109         - string:
110             name: REPORT_DIR
111             default: '$WORKSPACE/project-reports'
112             description: "The directory containing project reports"
113
114     scm:
115         - git:
116             credentials-id: 'opendaylight-jenkins-ssh'
117             url: '$GIT_BASE'
118             refspec: ''
119             branches:
120                 - 'origin/{branch}'
121             skip-tag: true
122             submodule:
123                 recursive: true
124
125     wrappers:
126         - opendaylight-infra-wrappers:
127             build-timeout: '30'
128
129     triggers:
130         - timed: '0 0 * * 0'
131
132     builders:
133         - shell: 'echo "DATE=`date +%Y-%m-%d`" > $WORKSPACE/variables.prop'
134         - inject:
135             properties-file: variables.prop
136         - autorelease-generate-project-report
137         - shell: "./scripts/list-project-dependencies.sh"
138         - autorelease-sys-stats
139
140     publishers:
141     - email-ext:
142         attachments: 'project-reports/*.log'
143         recipients: 'skitt@redhat.com thanh.ha@linuxfoundation.org'
144         reply-to: dev@lists.opendaylight.org
145         content-type: default
146         subject: '[releng] ODL {stream} project report for ${{ENV, var="DATE"}}'
147         body: |
148             This is a project report generated on $DATE listing the commit
149             history of ODL projects for the past week. See attached
150             git-report.log
151
152             Archive also available on Jenkins at $BUILD_URL
153         always: true
154     - opendaylight-infra-shiplogs:
155         maven-version: '{mvn33}'
156
157 ###
158 ### Maven Sites
159 ###
160
161 - job-template:
162     name: 'autorelease-site-publish-{stream}'
163     node: centos7-java-builder-2c-8g
164     concurrent: false
165     jdk: 'openjdk8'
166
167     # This job's purpose is to publish maven site
168
169     project-type: maven
170
171     logrotate:
172         daysToKeep: 7
173         numToKeep: 10
174         artifactDaysToKeep: -1
175         artifactNumToKeep: -1
176
177     parameters:
178         - opendaylight-infra-parameters:
179             project: '{project}'
180             branch: '{branch}'
181             refspec: 'refs/heads/{branch}'
182             artifacts: '{archive-artifacts}'
183
184     scm:
185     - gerrit-trigger-scm:
186         refspec: ''
187         choosing-strategy: 'default'
188
189     wrappers:
190         - opendaylight-infra-wrappers:
191             build-timeout: '{build-timeout}'
192
193     triggers:
194     - autorelease-trigger-patch-site-merged:
195         name: '{project}'
196         branch: '{branch}'
197
198     maven:
199         maven-name: '{mvn33}'
200         root-pom: 'site.xml'
201         goals: 'site:site site:deploy -Dstream={stream}'
202         maven-opts: '-Xmx1024m'
203         settings: 'autorelease-settings'
204         settings-type: cfp
205         global-settings: 'odl-global-settings'
206         global-settings-type: cfp
207
208     publishers:
209     - email-notification:
210         email-prefix: '[releng]'
211
212 - job-template:
213     name: 'autorelease-site-verify-{stream}'
214     node: centos7-java-builder-2c-8g
215     concurrent: true
216     jdk: 'openjdk8'
217
218     # This job's purpose is to verify maven site configuration
219
220     project-type: maven
221
222     logrotate:
223         daysToKeep: 7
224         numToKeep: 10
225         artifactDaysToKeep: -1
226         artifactNumToKeep: -1
227
228     parameters:
229         - opendaylight-infra-parameters:
230             project: '{project}'
231             branch: '{branch}'
232             refspec: 'refs/heads/{branch}'
233             artifacts: '{archive-artifacts}'
234
235     scm:
236     - gerrit-trigger-scm:
237         refspec: '$GERRIT_REFSPEC'
238         choosing-strategy: 'gerrit'
239
240     wrappers:
241         - opendaylight-infra-wrappers:
242             build-timeout: '{build-timeout}'
243
244     triggers:
245     - autorelease-trigger-patch-site-submitted:
246         name: '{project}'
247         branch: '{branch}'
248
249     maven:
250         maven-name: '{mvn33}'
251         root-pom: 'site.xml'
252         goals: 'site:site -Dstream={stream}'
253         maven-opts: '-Xmx1024m'
254         settings: 'autorelease-settings'
255         settings-type: cfp
256         global-settings: 'odl-global-settings'
257         global-settings-type: cfp
258
259     publishers:
260         - email-notification:
261             email-prefix: '[releng]'