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