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