Merge "Add mvn option -B to not log download stats"
[releng/builder.git] / jjb / releng-jobs.yaml
1 - project:
2     name: builder-jobs
3     jobs:
4         - 'builder-verify-jjb'
5         - 'builder-verify-python'
6         - 'builder-merge'
7         - 'builder-weekly'
8         - 'builder-check-poms'
9
10     project: 'releng/builder'
11
12 - job-template:
13     name: builder-verify-jjb
14     node: jjbuilder
15
16     project-type: freestyle
17
18     logrotate:
19         daysToKeep: 7
20
21     parameters:
22         - opendaylight-infra-parameters:
23             project: '{project}'
24             branch: 'master'
25             refspec: 'refs/heads/master'
26             artifacts: '{archive-artifacts}'
27
28     scm:
29         - gerrit-trigger-scm:
30             refspec: '$GERRIT_REFSPEC'
31             choosing-strategy: 'gerrit'
32
33     wrappers:
34         - opendaylight-infra-wrappers:
35             build-timeout: '{build-timeout}'
36
37     triggers:
38         - gerrit:
39             server-name: 'OpenDaylight'
40             trigger-on:
41                 - patchset-created-event:
42                     exclude-drafts: 'false'
43                     exclude-trivial-rebase: 'false'
44                     exclude-no-code-change: 'false'
45                 - draft-published-event
46                 - comment-added-contains-event:
47                     comment-contains-value: 'recheck'
48             projects:
49               - project-compare-type: 'ANT'
50                 project-pattern: 'releng/builder'
51                 branches:
52                   - branch-compare-type: 'ANT'
53                     branch-pattern: '**/master'
54                 file-paths:
55                     - compare-type: ANT
56                       pattern: jjb/**
57                     - compare-type: ANT
58                       pattern: jjb-templates/**
59
60     builders:
61         - shell: |
62             pip freeze
63             python scripts/jjb-autoupdate-project.py
64             jenkins-jobs -l DEBUG test --recursive -o archives/job_output jjb/
65             gzip archives/job_output/*
66
67         - releng-check-unicode
68
69     publishers:
70         - email-notification:
71             email-prefix: '[releng]'
72         - archive-build:
73             maven-version: '{mvn33}'
74
75 - job-template:
76     name: builder-verify-python
77     node: centos7-java-builder-2c-8g
78
79     project-type: freestyle
80
81     logrotate:
82         daysToKeep: 7
83         numToKeep: 10
84         artifactDaysToKeep: -1
85         artifactNumToKeep: -1
86
87     parameters:
88         - opendaylight-infra-parameters:
89             project: '{project}'
90             branch: 'master'
91             refspec: 'refs/heads/master'
92             artifacts: '{archive-artifacts}'
93
94     scm:
95         - gerrit-trigger-scm:
96             refspec: '$GERRIT_REFSPEC'
97             choosing-strategy: 'gerrit'
98
99     wrappers:
100         - opendaylight-infra-wrappers:
101             build-timeout: '{build-timeout}'
102
103     triggers:
104         - gerrit:
105             server-name: 'OpenDaylight'
106             trigger-on:
107                 - patchset-created-event:
108                     exclude-drafts: 'false'
109                     exclude-trivial-rebase: 'false'
110                     exclude-no-code-change: 'false'
111                 - draft-published-event
112                 - comment-added-contains-event:
113                     comment-contains-value: 'recheck'
114             projects:
115               - project-compare-type: 'ANT'
116                 project-pattern: 'releng/builder'
117                 branches:
118                   - branch-compare-type: 'ANT'
119                     branch-pattern: '**/master'
120                 file-paths:
121                     - compare-type: ANT
122                       pattern: scripts/**
123
124
125     builders:
126         - shell: |
127             virtualenv $WORKSPACE/venv
128             source $WORKSPACE/venv/bin/activate
129             pip install --upgrade pip
130             pip freeze
131             pip install flake8
132             flake8 scripts/
133
134     publishers:
135         - email-notification:
136             email-prefix: '[releng]'
137         - archive-build:
138             maven-version: '{mvn33}'
139
140 - job-template:
141     name: 'builder-merge'
142     node: jjbuilder
143
144     # builder-merge job to run JJB update
145     #
146     # This job's purpose is to update all the JJB
147
148     project-type: freestyle
149
150     logrotate:
151         daysToKeep: 7
152         numToKeep: 3
153         artifactDaysToKeep: -1
154         artifactNumToKeep: -1
155
156     parameters:
157         - opendaylight-infra-parameters:
158             project: '{project}'
159             branch: 'master'
160             refspec: 'refs/heads/master'
161             artifacts: '{archive-artifacts}'
162
163     scm:
164         - gerrit-trigger-scm:
165             refspec: ''
166             choosing-strategy: 'default'
167
168     wrappers:
169         - opendaylight-infra-wrappers:
170             build-timeout: '{build-timeout}'
171
172     triggers:
173         - gerrit:
174             server-name: 'OpenDaylight'
175             trigger-on:
176                 - change-merged-event
177                 - comment-added-contains-event:
178                     comment-contains-value: 'remerge'
179             projects:
180               - project-compare-type: 'ANT'
181                 project-pattern: 'releng/builder'
182                 branches:
183                     - branch-compare-type: 'ANT'
184                       branch-pattern: '**/master'
185                 file-paths:
186                     - compare-type: ANT
187                       pattern: jjb/**
188                     - compare-type: ANT
189                       pattern: jjb-templates/**
190
191     builders:
192         - shell: |
193             pip freeze
194             jenkins-jobs --version
195             jenkins-jobs update --recursive --delete-old --workers 4 jjb/
196
197     publishers:
198         - email-notification:
199             email-prefix: '[releng]'
200         - archive-build:
201             maven-version: '{mvn33}'
202
203 - job-template:
204     name: 'builder-weekly'
205     disabled: true
206     node: jjbuilder
207
208     # builder-weekly job to run JJB update weekly
209     #
210     # This job's purpose is to update all the JJB on a weekly (Sunday)
211     # basis with --flush-cache enabled to ensure jobs are okay
212
213     project-type: freestyle
214
215     logrotate:
216         daysToKeep: 7
217         numToKeep: 3
218         artifactDaysToKeep: -1
219         artifactNumToKeep: -1
220
221     parameters:
222         - opendaylight-infra-parameters:
223             project: '{project}'
224             branch: 'master'
225             refspec: 'refs/heads/master'
226             artifacts: '{archive-artifacts}'
227
228     scm:
229         - git-scm:
230             branch: 'master'
231
232     wrappers:
233         - opendaylight-infra-wrappers:
234             build-timeout: '{build-timeout}'
235
236     triggers:
237         - timed: 'H H * * 0'
238
239     builders:
240         - shell: |
241             jenkins-jobs --flush-cache update --recursive jjb/
242
243     publishers:
244         - email-notification:
245             email-prefix: '[releng]'
246         - archive-build:
247             maven-version: '{mvn33}'
248
249 - job-template:
250     name: builder-check-poms
251     node: centos7-java-builder-2c-8g
252
253     project-type: freestyle
254
255     logrotate:
256         daysToKeep: 1
257         numToKeep: 1
258         artifactDaysToKeep: -1
259         artifactNumToKeep: -1
260
261     parameters:
262         - opendaylight-infra-parameters:
263             project: '{project}'
264             branch: 'master'
265             refspec: 'refs/heads/master'
266             artifacts: '{archive-artifacts}'
267
268     wrappers:
269         - opendaylight-infra-wrappers:
270             build-timeout: '{build-timeout}'
271
272     triggers:
273         - timed: 'H H * * 1'
274
275     builders:
276         - shell:
277             !include-raw-escape:
278                 - include-raw-check-poms.sh
279
280     publishers:
281         - email-notification:
282             email-prefix: '[releng]'
283         - archive-build:
284             maven-version: '{mvn33}'