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