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