Merge "CSIT-824 Add Carbon branch to hc2vpp-*-odl jobs"
[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-benchmark-master'
7     project: 'honeycomb'
8     os:
9         - ubuntu1604:
10             repo-os-part: 'ubuntu.xenial.main'
11     stream:
12         - master:
13             branch: 'master'
14             repo-stream-part: 'master'
15         - '1609':
16             branch: 'stable/1609'
17             repo-stream-part: 'stable.1609'
18         - '1701':
19             branch: 'stable/1701'
20             repo-stream-part: 'stable.1701'
21         - '1704':
22             branch: 'stable/1704'
23             repo-stream-part: 'stable.1704'
24         - '1707':
25             branch: 'stable/1707'
26             repo-stream-part: 'stable.1707'
27         - '1710':
28             branch: 'stable/1710'
29             repo-stream-part: 'stable.1710'
30
31 - job-template:
32     name: 'honeycomb-verify-{stream}-{os}'
33     project-type: maven
34     node: '{os}-basebuild-4c-4g'
35     concurrent: true
36     jdk: openjdk8-{os}
37
38     logrotate:
39         daysToKeep: '{build-days-to-keep}'
40         numToKeep: '{build-num-to-keep}'
41         artifactDaysToKeep: '{build-artifact-days-to-keep}'
42         artifactNumToKeep: '{build-artifact-num-to-keep}'
43
44     parameters:
45         - project-parameter:
46             project: '{project}'
47         - gerrit-parameter:
48             branch: '{branch}'
49         - os-parameter:
50             os: '{os}'
51
52     scm:
53         - gerrit-trigger-scm:
54             credentials-id: 'jenkins-gerrit-credentials'
55             refspec: '$GERRIT_REFSPEC'
56             choosing-strategy: 'gerrit'
57
58     wrappers:
59         - fdio-infra-wrappers:
60             build-timeout: '{build-timeout}'
61
62     triggers:
63         - gerrit-trigger-patch-submitted:
64             name: 'honeycomb'
65             branch: '{branch}'
66
67     maven:
68         maven-name: 'mvn33-new'
69         root-pom: 'pom.xml'
70         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Dmerge site'
71         maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
72         settings: 'honeycomb-settings'
73         settings-type: cfp
74         global-settings: 'global-settings'
75         global-settings-type: cfp
76
77     publishers:
78         - email-notification:
79             email-prefix: '[honeycomb]'
80         - fdio-infra-shiplogs:
81             maven-version: 'mvn33-new'
82
83 - job-template:
84     name: 'honeycomb-merge-{stream}-{os}'
85     project-type: maven
86     node: '{os}-basebuild-4c-4g'
87     jdk: openjdk8-{os}
88
89     logrotate:
90         daysToKeep: '{build-days-to-keep}'
91         numToKeep: '{build-num-to-keep}'
92         artifactDaysToKeep: '{build-artifact-days-to-keep}'
93         artifactNumToKeep: '{build-artifact-num-to-keep}'
94
95     parameters:
96         - project-parameter:
97             project: '{project}'
98         - os-parameter:
99             os: '{os}'
100         - maven-project-parameter:
101             maven: 'mvn33-new'
102         - maven-exec:
103             maven-version: 'mvn33-new'
104         - repo-name-parameter:
105             repo-name: '{repo-stream-part}.{repo-os-part}'
106
107     scm:
108         - gerrit-trigger-scm:
109             credentials-id: 'jenkins-gerrit-credentials'
110             refspec: ''
111             choosing-strategy: 'default'
112
113     wrappers:
114         - ssh-agent-credentials:
115             users:
116                 - 'jenkins-gerrit-credentials'
117         - fdio-infra-wrappers:
118             build-timeout: '{build-timeout}'
119
120     triggers:
121         - gerrit-trigger-patch-merged:
122             name: 'honeycomb'
123             branch: '{branch}'
124
125     maven:
126         maven-name: 'mvn33-new'
127         root-pom: 'pom.xml'
128         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Dmerge -Dsonar site site:deploy'
129         maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
130         settings: 'honeycomb-settings'
131         settings-type: cfp
132         global-settings: 'global-settings'
133         global-settings-type: cfp
134
135     postbuilders:
136         - maven-target:
137             maven-version: 'mvn33-new'
138             goals: '--version'
139             settings: 'honeycomb-settings'
140             settings-type: cfp
141             global-settings: 'global-settings'
142             global-settings-type: cfp
143         - provide-maven-settings:
144             settings-file: 'honeycomb-settings'
145             global-settings-file: 'global-settings'
146
147     reporters:
148         - findbugs
149
150     publishers:
151         - sonar:
152             jdk: 'openjdk8-{os}'
153             language: 'java'
154             branch: '{stream}'
155         - email-notification:
156             email-prefix: '[honeycomb]'
157         - maven-deploy:
158             id: ''
159             unique-version: true
160             deploy-unstable: false
161         - fdio-infra-shiplogs:
162             maven-version: 'mvn33-new'
163
164 - job-template:
165     name: 'honeycomb-benchmark-master'
166     project-type: maven
167     node: ubuntu1604-basebuild-4c-4g 
168     jdk: openjdk8-ubuntu1604
169
170     logrotate:
171         daysToKeep: '{build-days-to-keep}'
172         numToKeep: '{build-num-to-keep}'
173         artifactDaysToKeep: '{build-artifact-days-to-keep}'
174         artifactNumToKeep: '{build-artifact-num-to-keep}'
175
176     parameters:
177         - project-parameter:
178             project: '{project}'
179         - os-parameter:
180             os: 'ubuntu1604'
181         - maven-project-parameter:
182             maven: 'mvn33-new'
183         - maven-exec:
184             maven-version: 'mvn33-new'
185         - repo-name-parameter:
186             repo-name: 'master.ubuntu.xenial.main'
187
188     scm:
189         - git-scm:
190             credentials-id: 'jenkins-gerrit-credentials'
191             branch: 'master'
192
193     wrappers:
194         - ssh-agent-credentials:
195             users:
196                 - 'jenkins-gerrit-credentials'
197         - fdio-infra-wrappers:
198             build-timeout: '{build-timeout}'
199
200     triggers:
201         - timed: '@daily'
202
203     maven:
204         maven-name: 'mvn33-new'
205         root-pom: 'pom.xml'
206         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Dmerge -Pbenchmark'
207         maven-opts: '-Xmx2048m -Dmaven.compile.fork=true'
208         settings: 'honeycomb-settings'
209         settings-type: cfp
210         global-settings: 'global-settings'
211         global-settings-type: cfp
212
213     publishers:
214         - plot:
215             - title: 'Infrastructure CFG write benchmark (simple-container)'
216               yaxis: 'ops/second'
217               csv-file-name: 'simple-container.csv'
218               group: 'infra-bench'
219               keep-records: true
220               numbuilds: '20'
221               style: 'line'
222               use-description: false
223               series:
224                 - file: 'infra/it/benchmark/target/simple-container.csv'
225                   display-table: true
226                   format: 'csv'
227                   inclusion-flag: 'include-by-string'
228                   exclude: 'persistence=true freq=1,persistence=true freq=10,persistence=false freq=1,persistence=false freq=10'
229             - title: 'Infrastructure CFG write benchmark (list-in-container)'
230               yaxis: 'ops/second'
231               csv-file-name: 'list-in-container.csv'
232               group: 'infra-bench'
233               keep-records: true
234               numbuilds: '20'
235               style: 'line'
236               use-description: false
237               series:
238                 - file: 'infra/it/benchmark/target/list-in-container.csv'
239                   display-table: true
240                   format: 'csv'
241                   inclusion-flag: 'include-by-string'
242                   exclude: 'persistence=true freq=1,persistence=true freq=10,persistence=false freq=1,persistence=false freq=10'
243             - title: 'Infrastructure CFG write benchmark (complex-list-in-container)'
244               yaxis: 'ops/second'
245               csv-file-name: 'complex-list-in-container.csv'
246               group: 'infra-bench'
247               keep-records: true
248               numbuilds: '20'
249               style: 'line'
250               use-description: false
251               series:
252                 - file: 'infra/it/benchmark/target/complex-list-in-container.csv'
253                   display-table: true
254                   format: 'csv'
255                   inclusion-flag: 'include-by-string'
256                   exclude: 'persistence=true freq=1,persistence=true freq=10,persistence=false freq=1,persistence=false freq=10'
257             - title: 'Infrastructure CFG read benchmark'
258               yaxis: 'ops/second'
259               csv-file-name: 'operational-read.csv'
260               group: 'infra-bench'
261               keep-records: true
262               numbuilds: '20'
263               style: 'line'
264               use-description: false
265               series:
266                 - file: 'infra/it/benchmark/target/operational-read.csv'
267                   display-table: true
268                   format: 'csv'
269                   inclusion-flag: 'include-by-string'
270                   exclude: 'simple-container,list-in-container,complex-list-in-container'
271         - fdio-infra-shiplogs:
272             maven-version: 'mvn33-new'