Merge "Revert "Install odl-mdsal-trace in netvirt oxygen csit""
[releng/builder.git] / jjb / releng-jobs.yaml
1 ---
2 - project:
3     name: builder-jobs
4     jobs:
5       - gerrit-jenkins-cfg-merge:
6           jenkins-silos: releng sandbox
7       - gerrit-jjb-deploy-job
8       - gerrit-jjb-merge:
9           build-node: centos7-builder-4c-4g
10           build-timeout: 90
11       - gerrit-jjb-verify
12       - builder-check-poms
13       - builder-copy-sandbox-logs
14       - builder-openstack-cron
15       - gerrit-tox-verify
16       # Automation for docs and jobs
17       - 'builder-update-image-list'
18
19     # The following values are only specified here
20     # so that code blocks look similar to other projects.
21     project: 'releng/builder'
22     project-name: builder
23     stream: master
24     branch: master
25     build-node: centos7-builder-2c-2g
26     archive-artifacts: '**/*.log'
27     build-timeout: 30
28     jjb-version: 2.0.0
29     jenkins-urls: >
30       https://jenkins.opendaylight.org/releng
31       https://jenkins.opendaylight.org/sandbox
32
33 - project:
34     name: packer-jobs
35     # packer jobs templates are defined in global-jjb
36     jobs:
37       - '{project-name}-packer-jobs'
38     project: 'releng/builder'
39     project-name: builder
40     branch: master
41     archive-artifacts: '**/*.log'
42     build-node: centos7-builder-2c-1g
43
44     platforms:
45       - centos
46       - ubuntu-14.04
47       - ubuntu-16.04
48
49     templates:
50       - devstack
51       - devstack-pre-pip-newton:
52           build-timeout: 75
53       - devstack-pre-pip-ocata:
54           build-timeout: 75
55       - devstack-pre-pip-pike:
56           build-timeout: 75
57       - gbp
58       - mininet-ovs-2.5:
59           build-timeout: 60
60       - mininet-ovs-2.6:
61           build-timeout: 75
62
63     exclude:
64       - platforms: centos
65         templates: gbp
66       - platforms: centos
67         templates: mininet-ovs-2.5
68       - platforms: centos
69         templates: mininet-ovs-2.6
70       - platforms: ubuntu-14.04
71         templates: devstack-pre-pip-newton
72       - platforms: ubuntu-14.04
73         templates: devstack-pre-pip-ocata
74       - platforms: ubuntu-14.04
75         templates: devstack-pre-pip-pike
76       - platforms: ubuntu-14.04
77         templates: devstack
78       - platforms: ubuntu-14.04
79         templates: mininet-ovs-2.5
80       - platforms: ubuntu-14.04
81         templates: mininet-ovs-2.6
82       - platforms: ubuntu-16.04
83         templates: devstack-pre-pip-newton
84       - platforms: ubuntu-16.04
85         templates: devstack-pre-pip-ocata
86       - platforms: ubuntu-16.04
87         templates: devstack-pre-pip-pike
88       - platforms: ubuntu-16.04
89         templates: devstack
90
91 - job-template:
92     name: builder-check-poms
93     node: centos7-builder-2c-1g
94
95     project-type: freestyle
96
97     properties:
98       - opendaylight-infra-properties:
99           build-days-to-keep: 14
100
101     parameters:
102       - opendaylight-infra-parameters:
103           os-cloud: '{os-cloud}'
104           project: '{project}'
105           branch: '{branch}'
106           refspec: 'refs/heads/{branch}'
107           artifacts: '{archive-artifacts}'
108
109     wrappers:
110       - opendaylight-infra-wrappers:
111           build-timeout: '{build-timeout}'
112
113     triggers:
114       - timed: 'H H * * 1'
115
116     builders:
117       - shell: !include-raw-escape: check-poms.sh
118
119     publishers:
120       - email-notification:
121           email-recipients: '{email-recipients}'
122           email-prefix: '[releng]'
123       - lf-infra-publish
124
125 - job-template:
126     name: builder-copy-sandbox-logs
127     node: centos7-builder-2c-1g
128
129     project-type: freestyle
130
131     properties:
132       - opendaylight-infra-properties:
133           build-days-to-keep: 1
134
135     parameters:
136       - opendaylight-infra-parameters:
137           os-cloud: ''
138           project: ''
139           branch: ''
140           refspec: ''
141           artifacts: ''
142
143     wrappers:
144       - opendaylight-infra-wrappers:
145           build-timeout: 10
146
147     triggers:
148       - gerrit:
149           server-name: '{gerrit-server-name}'
150           trigger-on:
151             - comment-added-contains-event:
152                 comment-contains-value: 'copy-logs:'
153           projects:
154             - project-compare-type: ANT
155               project-pattern: '**'
156               branches:
157                 - branch-compare-type: ANT
158                   branch-pattern: '**'
159
160     builders:
161       - shell: !include-raw-escape: copy-sandbox-logs.sh
162
163     publishers:
164       - lf-infra-publish
165
166
167 - job-template:
168     name: builder-openstack-cron
169     project-type: freestyle
170     node: '{build-node}'
171
172     properties:
173       - lf-infra-properties:
174           build-days-to-keep: 7
175
176     parameters:
177       - lf-infra-parameters:
178           project: '{project}'
179           stream: '{stream}'
180           branch: '{branch}'
181           lftools-version: '{lftools-version}'
182       - string:
183           name: OS_CLOUD
184           default: '{os-cloud}'
185           description: Artifacts to archive to the logs server.
186       - string:
187           name: ARCHIVE_ARTIFACTS
188           default: '{archive-artifacts}'
189           description: Artifacts to archive to the logs server.
190       - string:
191           name: JENKINS_URLS
192           default: '{jenkins-urls}'
193           description: 'Space separated list of Jenkins URLs to check for active builds'
194
195     scm:
196       - git-scm:
197           branch: '{branch}'
198
199     wrappers:
200       - lf-infra-wrappers:
201           build-timeout: '{build-timeout}'
202           jenkins-ssh-credential: '{jenkins-ssh-credential}'
203       # Listed after to override openstack-infra-wrappers clouds.yaml definition
204       - config-file-provider:
205           files:
206             - file-id: clouds-yaml
207               target: '$HOME/.config/openstack/clouds.yaml'
208
209     triggers:
210       - timed: '0,30 * * * *'
211
212     builders:
213       - odl-openstack-install
214       - shell: !include-raw-escape: global-jjb/shell/lftools-install.sh
215       # Servers
216       - odl-openstack-cleanup-stale-stacks
217       - odl-openstack-cleanup-stale-nodes
218       - odl-openstack-cleanup-orphaned-nodes
219       # Images
220       - odl-openstack-check-image-protection
221       - odl-openstack-cleanup-old-images
222
223     publishers:
224       - lf-infra-publish
225
226 - job-template:
227     name: 'builder-update-image-list'
228     project-type: freestyle
229     node: centos7-builder-2c-1g
230
231     properties:
232       - opendaylight-infra-properties:
233           build-days-to-keep: 7
234
235     parameters:
236       - opendaylight-infra-parameters:
237           os-cloud: vex
238           project: '{project}'
239           branch: '{branch}'
240           refspec: 'refs/heads/{branch}'
241           artifacts: '{archive-artifacts}'
242
243     scm:
244       - git-scm:
245           branch: '{branch}'
246
247     wrappers:
248       - opendaylight-infra-wrappers:
249           build-timeout: '{build-timeout}'
250       # Listed after to override openstack-infra-wrappers clouds.yaml definition
251       - config-file-provider:
252           files:
253             - file-id: clouds-yaml
254               target: '$HOME/.config/openstack/clouds.yaml'
255
256     triggers:
257       # Update image list every Monday to Friday at 11:00 UTC
258       - timed: '0 11 * * 1-5'
259
260     builders:
261       - shell: !include-raw-escape: opendaylight-infra-update-image-list.sh
262       - opendaylight-infra-push-gerrit-patch:
263           project: '{project}'
264           gerrit-topic: 'releng-update-cloud-image-list'
265           gerrit-commit-message: 'Update cloud image list docs'
266
267     publishers:
268       - email-notification:
269           email-recipients: '{email-recipients}'
270           email-prefix: '[releng]'
271       - lf-infra-publish