Merge "Add OVS 2.5.0 and hardware_vtep DB to Docker images."
[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 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: dynamic_verify
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             !include-raw-escape:
194                 - include-raw-jjb-update.sh
195
196     publishers:
197         - email-notification:
198             email-prefix: '[releng]'
199         - archive-build:
200             maven-version: '{mvn33}'
201
202 - job-template:
203     name: 'builder-weekly'
204     disabled: true
205     node: jjbuilder
206
207     # builder-weekly job to run JJB update weekly
208     #
209     # This job's purpose is to update all the JJB on a weekly (Sunday)
210     # basis with --flush-cache enabled to ensure jobs are okay
211
212     project-type: freestyle
213
214     logrotate:
215         daysToKeep: 7
216         numToKeep: 3
217         artifactDaysToKeep: -1
218         artifactNumToKeep: -1
219
220     parameters:
221         - opendaylight-infra-parameters:
222             project: '{project}'
223             branch: 'master'
224             refspec: 'refs/heads/master'
225             artifacts: '{archive-artifacts}'
226
227     scm:
228         - git-scm:
229             branch: 'master'
230
231     wrappers:
232         - opendaylight-infra-wrappers:
233             build-timeout: '{build-timeout}'
234
235     triggers:
236         - timed: 'H H * * 0'
237
238     builders:
239         - shell: |
240             jenkins-jobs --flush-cache update --recursive jjb/
241
242     publishers:
243         - email-notification:
244             email-prefix: '[releng]'
245         - archive-build:
246             maven-version: '{mvn33}'
247
248 - job-template:
249     name: builder-check-poms
250     node: dynamic_verify
251
252     project-type: freestyle
253
254     logrotate:
255         daysToKeep: 1
256         numToKeep: 1
257         artifactDaysToKeep: -1
258         artifactNumToKeep: -1
259
260     parameters:
261         - opendaylight-infra-parameters:
262             project: '{project}'
263             branch: 'master'
264             refspec: 'refs/heads/master'
265             artifacts: '{archive-artifacts}'
266
267     wrappers:
268         - opendaylight-infra-wrappers:
269             build-timeout: '{build-timeout}'
270
271     triggers:
272         - timed: 'H H * * 1'
273
274     builders:
275         - shell:
276             !include-raw-escape:
277                 - include-raw-check-poms.sh
278
279     publishers:
280         - email-notification:
281             email-prefix: '[releng]'
282         - archive-build:
283             maven-version: '{mvn33}'