Merge "CSIT-824 Add Carbon branch to hc2vpp-*-odl jobs"
[ci-management.git] / jjb / hc2vpp / hc2vpp.yaml
1 - project:
2     name: hc2vpp
3     jobs:
4         - 'hc2vpp-verify-{stream}-{os}'
5         - 'hc2vpp-merge-{stream}-{os}'
6         - 'hc2vpp-integration-{stream}-{os}'
7         - 'hc2vpp-verify-image-{stream}-{os}'
8     project: 'hc2vpp'
9     os:
10         - ubuntu1604:
11             repo-os-part: 'ubuntu.xenial.main'
12             skip-site: 'false'
13         - centos7:
14             repo-os-part: 'centos7'
15             skip-site: 'true'
16     stream:
17         - master:
18             branch: 'master'
19             repo-stream-part: 'master'
20         - '1701':
21             branch: 'stable/1701'
22             repo-stream-part: 'stable.1701'
23         - '1704':
24             branch: 'stable/1704'
25             repo-stream-part: 'stable.1704'
26         - '1707':
27             branch: 'stable/1707'
28             repo-stream-part: 'stable.1707'
29         - '1710':
30             branch: 'stable/1710'
31             repo-stream-part: 'stable.1710'
32
33 - job-template:
34     name: 'hc2vpp-verify-{stream}-{os}'
35     project-type: maven
36     node: '{os}-basebuild-4c-4g'
37     concurrent: true
38     jdk: openjdk8-{os}
39
40     logrotate:
41         daysToKeep: '{build-days-to-keep}'
42         numToKeep: '{build-num-to-keep}'
43         artifactDaysToKeep: '{build-artifact-days-to-keep}'
44         artifactNumToKeep: '{build-artifact-num-to-keep}'
45
46     parameters:
47         - project-parameter:
48             project: '{project}'
49         - gerrit-parameter:
50             branch: '{branch}'
51         - os-parameter:
52             os: '{os}'
53
54     scm:
55         - gerrit-trigger-scm:
56             credentials-id: 'jenkins-gerrit-credentials'
57             refspec: '$GERRIT_REFSPEC'
58             choosing-strategy: 'gerrit'
59
60     wrappers:
61         - fdio-infra-wrappers:
62             build-timeout: '{build-timeout}'
63
64     triggers:
65         - gerrit-trigger-patch-submitted:
66             name: 'hc2vpp'
67             branch: '{branch}'
68
69     maven:
70         maven-name: 'mvn33-new'
71         root-pom: 'pom.xml'
72         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Dmerge site'
73         maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
74         settings: 'hc2vpp-settings'
75         settings-type: cfp
76         global-settings: 'global-settings'
77         global-settings-type: cfp
78
79     publishers:
80         - email-notification:
81             email-prefix: '[hc2vpp]'
82         - fdio-infra-shiplogs:
83             maven-version: 'mvn33-new'
84
85 - job-template:
86     name: 'hc2vpp-verify-image-{stream}-{os}'
87     project-type: maven
88     node: '{os}-basebuild-4c-4g'
89     concurrent: true
90     jdk: openjdk8-{os}
91
92     logrotate:
93         daysToKeep: '{build-days-to-keep}'
94         numToKeep: '{build-num-to-keep}'
95         artifactDaysToKeep: '{build-artifact-days-to-keep}'
96         artifactNumToKeep: '{build-artifact-num-to-keep}'
97
98     parameters:
99         - project-parameter:
100             project: '{project}'
101         - gerrit-parameter:
102             branch: '{branch}'
103         - os-parameter:
104             os: '{os}'
105
106     scm:
107         - gerrit-trigger-scm:
108             credentials-id: 'jenkins-gerrit-credentials'
109             refspec: '$GERRIT_REFSPEC'
110             choosing-strategy: 'gerrit'
111
112     wrappers:
113         - fdio-infra-wrappers:
114             build-timeout: '{build-timeout}'
115
116     triggers:
117         - gerrit:
118             server-name: 'Primary'
119             trigger-on:
120                 - comment-added-contains-event:
121                     comment-contains-value: 'verify-images'
122             projects:
123               - project-compare-type: 'ANT'
124                 project-pattern: '{project}'
125                 branches:
126                   - branch-compare-type: 'ANT'
127                     branch-pattern: '**/{branch}'
128             skip-vote:
129                 successful: true
130                 failed: true
131                 unstable: true
132                 notbuilt: true
133
134     maven:
135         maven-name: 'mvn33-new'
136         root-pom: 'pom.xml'
137         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Dmerge'
138         maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
139         settings: 'hc2vpp-settings'
140         settings-type: cfp
141         global-settings: 'global-settings'
142         global-settings-type: cfp
143
144     publishers:
145         - email-notification:
146             email-prefix: '[hc2vpp]'
147         - fdio-infra-shiplogs:
148             maven-version: 'mvn33-new'
149
150 - job-template:
151     name: 'hc2vpp-merge-{stream}-{os}'
152     project-type: maven
153     node: '{os}-basebuild-4c-4g'
154     jdk: openjdk8-{os}
155
156     logrotate:
157         daysToKeep: '{build-days-to-keep}'
158         numToKeep: '{build-num-to-keep}'
159         artifactDaysToKeep: '{build-artifact-days-to-keep}'
160         artifactNumToKeep: '{build-artifact-num-to-keep}'
161
162     parameters:
163         - project-parameter:
164             project: '{project}'
165         - os-parameter:
166             os: '{os}'
167         - maven-project-parameter:
168             maven: 'mvn33-new'
169         - maven-exec:
170             maven-version: 'mvn33-new'
171         - repo-name-parameter:
172             repo-name: '{repo-stream-part}.{repo-os-part}'
173
174     scm:
175         - gerrit-trigger-scm:
176             credentials-id: 'jenkins-gerrit-credentials'
177             refspec: ''
178             choosing-strategy: 'default'
179
180     wrappers:
181         - ssh-agent-credentials:
182             users:
183                 - 'jenkins-gerrit-credentials'
184         - fdio-infra-wrappers:
185             build-timeout: '{build-timeout}'
186
187     triggers:
188         - gerrit-trigger-patch-merged:
189             name: 'hc2vpp'
190             branch: '{branch}'
191
192     maven:
193         maven-name: 'mvn33-new'
194         root-pom: 'pom.xml'
195         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Dmerge -Dsonar -Ddocs.hc.folder=io/fd/hc2vpp -Dmaven.site.skip={skip-site} site -Dmaven.site.deploy.skip={skip-site} site:deploy'
196         maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
197         settings: 'hc2vpp-settings'
198         settings-type: cfp
199         global-settings: 'global-settings'
200         global-settings-type: cfp
201
202     reporters:
203         - findbugs
204
205     publishers:
206         - sonar:
207             jdk: 'openjdk8-{os}'
208             language: 'java'
209             branch: '{stream}'
210         - email-notification:
211             email-prefix: '[hc2vpp]'
212         - fdio-infra-shiplogs:
213             maven-version: 'mvn33-new'
214
215 - job-template:
216     name: 'hc2vpp-integration-{stream}-{os}'
217     project-type: maven
218     node: '{os}-basebuild-4c-4g'
219     jdk: openjdk8-{os}
220
221     logrotate:
222         daysToKeep: '{build-days-to-keep}'
223         numToKeep: '{build-num-to-keep}'
224         artifactDaysToKeep: '{build-artifact-days-to-keep}'
225         artifactNumToKeep: '{build-artifact-num-to-keep}'
226
227     parameters:
228         - project-parameter:
229             project: '{project}'
230         - os-parameter:
231             os: '{os}'
232         - stream-parameter:
233             stream: '{stream}'
234         - maven-project-parameter:
235             maven: 'mvn33-new'
236         - maven-exec:
237             maven-version: 'mvn33-new'
238
239         - repo-name-parameter:
240             repo-name: '{repo-stream-part}.{repo-os-part}'
241
242     scm:
243         - git-scm:
244             credentials-id: 'jenkins-gerrit-credentials'
245             refspec: ''
246             branch: '{branch}'
247
248     wrappers:
249         - ssh-agent-credentials:
250             users:
251                 - 'jenkins-gerrit-credentials'
252         - fdio-infra-wrappers:
253             build-timeout: '{build-timeout}'
254
255     triggers:
256         - reverse:
257             jobs: 'vpp-merge-{stream}-{os},hc2vpp-merge-{stream}-{os}'
258             result: 'success'
259
260     prebuilders:
261         - shell:
262             !include-raw-escape: include-raw-hc2vpp-integration-prebuild.sh
263     maven:
264         maven-name: 'mvn33-new'
265         root-pom: 'pom.xml'
266         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Dmerge'
267         maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
268         settings: 'hc2vpp-settings'
269         settings-type: cfp
270         global-settings: 'global-settings'
271         global-settings-type: cfp
272
273     postbuilders:
274         - maven-target:
275             maven-version: 'mvn33-new'
276             goals: '--version'
277             settings: 'hc2vpp-settings'
278             settings-type: cfp
279             global-settings: 'global-settings'
280             global-settings-type: cfp
281         - provide-maven-settings:
282             settings-file: 'hc2vpp-settings'
283             global-settings-file: 'global-settings'
284         - shell:
285             !include-raw-escape:
286                 - ../scripts/maven_push_functions.sh
287                 - include-raw-hc2vpp-pkg-push.sh
288     reporters:
289         - findbugs
290
291     publishers:
292         - email-notification:
293             email-prefix: '[hc2vpp]'
294         - maven-deploy:
295             id: ''
296             unique-version: true
297             deploy-unstable: false
298         - fdio-infra-shiplogs:
299             maven-version: 'mvn33-new'