Create Nile Jobs for VinePerf and Barometer
[releng.git] / jjb / barometer / barometer.yaml
1 ---
2 ###################################################
3 # All the jobs except verify have been removed!
4 # They will only be enabled on request by projects!
5 ###################################################
6 - project:
7     name: barometer
8
9     project: '{name}'
10
11     jobs:
12       - 'barometer-verify-{stream}'
13       - 'barometer-merge-{stream}'
14       - 'barometer-daily-{stream}'
15       - 'barometer-plugins-tests'
16
17     stream:
18       - master:
19           branch: '{stream}'
20           gs-pathname: ''
21           disabled: false
22       - nile:
23           branch: 'stable/{stream}'
24           gs-pathname: '/{stream}'
25           disabled: false
26       - moselle:
27           branch: 'stable/{stream}'
28           gs-pathname: '/{stream}'
29           disabled: false
30       - lakelse:
31           branch: 'stable/{stream}'
32           gs-pathname: '/{stream}'
33           disabled: false
34       - kali:
35           branch: 'stable/{stream}'
36           gs-pathname: '/{stream}'
37           disabled: false
38       - jerma:
39           branch: 'stable/{stream}'
40           gs-pathname: '/{stream}'
41           disabled: false
42       - iruya:
43           branch: 'stable/{stream}'
44           gs-pathname: '/{stream}'
45           disabled: false
46
47 - job-template:
48     name: 'barometer-verify-{stream}'
49
50     disabled: '{obj:disabled}'
51
52     parameters:
53       - project-parameter:
54           project: '{project}'
55           branch: '{branch}'
56       - 'opnfv-build-centos-defaults'
57
58     scm:
59       - git-scm-gerrit
60
61     triggers:
62       - gerrit:
63           server-name: 'gerrit.opnfv.org'
64           trigger-on:
65             - patchset-created-event:
66                 exclude-drafts: 'false'
67                 exclude-trivial-rebase: 'false'
68                 exclude-no-code-change: 'false'
69             - draft-published-event
70             - comment-added-contains-event:
71                 comment-contains-value: 'recheck'
72             - comment-added-contains-event:
73                 comment-contains-value: 'reverify'
74           projects:
75             - project-compare-type: 'ANT'
76               project-pattern: '{project}'
77               branches:
78                 - branch-compare-type: 'ANT'
79                   branch-pattern: '**/{branch}'
80               disable-strict-forbidden-file-verification: 'true'
81               forbidden-file-paths:
82                 - compare-type: ANT
83                   pattern: 'docs/**|.gitignore'
84
85     builders:
86       - shell: |
87           pwd
88           cd src
89           make clobber
90           make
91
92 - job-template:
93     name: 'barometer-merge-{stream}'
94
95     project-type: freestyle
96
97     disabled: '{obj:disabled}'
98
99     concurrent: true
100
101     properties:
102       - logrotate-default
103       - throttle:
104           enabled: true
105           max-total: 3
106           max-per-node: 2
107           option: 'project'
108
109     parameters:
110       - project-parameter:
111           project: '{project}'
112           branch: '{branch}'
113       - 'opnfv-build-centos-defaults'
114
115     scm:
116       - git-scm
117
118     triggers:
119       - gerrit:
120           server-name: 'gerrit.opnfv.org'
121           trigger-on:
122             - change-merged-event
123             - comment-added-contains-event:
124                 comment-contains-value: 'remerge'
125           projects:
126             - project-compare-type: 'ANT'
127               project-pattern: '{project}'
128               branches:
129                 - branch-compare-type: 'ANT'
130                   branch-pattern: '**/{branch}'
131               disable-strict-forbidden-file-verification: 'true'
132               forbidden-file-paths:
133                 - compare-type: ANT
134                   pattern: 'docs/**'
135
136     builders:
137       - shell: |
138           pwd
139           cd src
140           make clobber
141           make
142
143 - job-template:
144     name: 'barometer-daily-{stream}'
145
146     project-type: freestyle
147
148     disabled: '{obj:disabled}'
149
150     concurrent: false
151
152     properties:
153       - logrotate-default
154
155     parameters:
156       - project-parameter:
157           project: '{project}'
158           branch: '{branch}'
159       - barometer-project-parameter:
160           gs-pathname: '{gs-pathname}'
161       - 'opnfv-build-centos-defaults'
162
163     scm:
164       - git-scm
165
166     triggers:
167       - timed: '@midnight'
168
169     builders:
170       - shell: !include-raw-escape: ./barometer-build.sh
171       - shell: !include-raw-escape: ./barometer-upload-artifact.sh
172
173 - job-template:
174     name: 'barometer-plugins-tests'
175
176     branch: master
177
178     disabled: '{obj:disabled}'
179
180     parameters:
181       - string:
182           name: BRANCH
183           default: '{branch}'
184       - opnfv-build-centos-defaults
185
186     triggers:
187       - timed: '@midnight'
188
189     builders:
190       - shell: |
191          rm -rf barometer
192          git clone "https://gerrit.opnfv.org/gerrit/barometer"
193          cd barometer
194          sudo docker build -t opnfv/barometer-collectd-tests-base --network=host \
195             -f docker/barometer-collectd-plugin-tests/Dockerfile.base .
196          docker build -t opnfv/barometer-collectd-tests --network=host \
197             -f docker/barometer-collectd-plugin-tests/Dockerfile .
198          docker run -t --net=host
199             -v `pwd`/src/collectd/collectd_sample_configs-master:/opt/collectd/etc/collectd.conf.d \
200             -v /var/run:/var/run -v /tmp:/tmp -v  `pwd`/plugin_test:/tests \
201             --privileged opnfv/barometer-collectd-tests:latest
202          docker container rm $(sudo docker container ls -aq)
203          docker rmi opnfv/barometer-collectd-tests:latest
204          docker rmi opnfv/barometer-collectd-tests-base:latest
205
206 ########################
207 # parameter macros
208 ########################
209 - parameter:
210     name: barometer-project-parameter
211     parameters:
212       - string:
213           name: GS_URL
214           default: '$GS_BASE{gs-pathname}'
215           description: "URL to Google Storage."