honeycomb.yaml revision 1b788feb
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'
273