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