Merge "Jobs for CSIT rls1704 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         - ubuntu1404:
11             repo-os-part: 'ubuntu.trusty.main'
12             skip-site: 'false'
13         - ubuntu1604:
14             repo-os-part: 'ubuntu.xenial.main'
15             skip-site: 'true'
16         - centos7:
17             repo-os-part: 'centos7'
18             skip-site: 'true'
19     stream:
20         - master:
21             branch: 'master'
22             repo-stream-part: 'master'
23         - '1701':
24             branch: 'stable/1701'
25             repo-stream-part: 'stable.1701'
26         - '1704':
27             branch: 'stable/1704'
28             repo-stream-part: 'stable.1704'
29
30 - job-template:
31     name: 'hc2vpp-verify-{stream}-{os}'
32     project-type: maven
33     node: '{os}-basebuild-4c-4g'
34     concurrent: true
35     jdk: openjdk8-{os}
36
37     logrotate:
38         daysToKeep: '{build-days-to-keep}'
39         numToKeep: '{build-num-to-keep}'
40         artifactDaysToKeep: '{build-artifact-days-to-keep}'
41         artifactNumToKeep: '{build-artifact-num-to-keep}'
42
43     parameters:
44         - project-parameter:
45             project: '{project}'
46         - gerrit-parameter:
47             branch: '{branch}'
48         - os-parameter:
49             os: '{os}'
50
51     scm:
52         - gerrit-trigger-scm:
53             credentials-id: 'jenkins-gerrit-credentials'
54             refspec: '$GERRIT_REFSPEC'
55             choosing-strategy: 'gerrit'
56
57     wrappers:
58         - fdio-infra-wrappers:
59             build-timeout: '{build-timeout}'
60
61     triggers:
62         - gerrit-trigger-patch-submitted:
63             name: 'hc2vpp'
64             branch: '{branch}'
65
66     prebuilders:
67         - shell: |
68             if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.8.0-openjdk-amd64||echo 'ignoring failure';fi
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     prebuilders:
135         - shell: |
136             if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.8.0-openjdk-amd64||echo 'ignoring failure';fi
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             if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.8.0-openjdk-amd64||echo 'ignoring failure';fi
266         - shell:
267             !include-raw-escape: include-raw-hc2vpp-integration-prebuild.sh
268     maven:
269         maven-name: 'mvn33-new'
270         root-pom: 'pom.xml'
271         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Dmerge'
272         maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
273         settings: 'hc2vpp-settings'
274         settings-type: cfp
275         global-settings: 'global-settings'
276         global-settings-type: cfp
277
278     postbuilders:
279         - maven-target:
280             maven-version: 'mvn33-new'
281             goals: '--version'
282             settings: 'hc2vpp-settings'
283             settings-type: cfp
284             global-settings: 'global-settings'
285             global-settings-type: cfp
286         - provide-maven-settings:
287             settings-file: 'hc2vpp-settings'
288             global-settings-file: 'global-settings'
289         - shell:
290             !include-raw-escape:
291                 - ../scripts/maven_push_functions.sh
292                 - include-raw-hc2vpp-pkg-push.sh
293     reporters:
294         - findbugs
295
296     publishers:
297         - email-notification:
298             email-prefix: '[hc2vpp]'
299         - maven-deploy:
300             id: ''
301             unique-version: true
302             deploy-unstable: false
303         - fdio-infra-shiplogs:
304             maven-version: 'mvn33-new'