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