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