Merge "update builder script and how-to-use-docs"
[releng.git] / jjb / vswitchperf / vswitchperf.yml
1 - project:
2     name: vswitchperf
3     jobs:
4         - 'vswitchperf-daily-{stream}'
5         - 'vswitchperf-merge-{stream}'
6         - 'vswitchperf-verify-{stream}'
7
8     # stream:    branch with - in place of / (eg. stable-helium)
9     # branch:    branch (eg. stable/helium)
10     stream:
11         - master:
12             branch: 'master'
13
14     project: 'vswitchperf'
15     somevar: 'foo'
16
17 - job-template:
18     name: 'vswitchperf-daily-{stream}'
19
20     # Job template for daily builders
21     #
22     # Required Variables:
23     #     stream:    branch with - in place of / (eg. stable)
24     #     branch:    branch (eg. stable)
25
26     varsetabove: '{somevar}'
27     node: opnfv-build
28
29     logrotate:
30         daysToKeep: '{build-days-to-keep}'
31         numToKeep: '{build-num-to-keep}'
32         artifactDaysToKeep: '{build-artifact-days-to-keep}'
33         artifactNumToKeep: '{build-artifact-num-to-keep}'
34
35     parameters:
36         - project-parameter:
37             project: '{project}'
38         - string:
39             name: GIT_BASE
40             default: https://gerrit.opnfv.org/gerrit/vswitchperf
41
42     scm:
43         - git-scm:
44             credentials-id: '{ssh-credentials}'
45             refspec: ''
46             branch: '{branch}'
47
48     triggers:
49         - timed: 'H H * * *'
50
51     prebuilders:
52         - test-macro
53
54     builders:
55         - shell: |
56             pwd
57             cd src
58             make clobber
59             make
60             # run basic sanity test
61             make sanity
62
63     postbuilders:
64         - test-macro
65
66 - job-template:
67     name: 'vswitchperf-verify-{stream}'
68
69     project-type: freestyle
70
71     node: opnfv-build
72
73     concurrent: true
74
75     properties:
76         - throttle:
77             enabled: true
78             max-total: 3
79             max-per-node: 2
80
81     logrotate:
82         daysToKeep: 30
83         numToKeep: 10
84         artifactDaysToKeep: -1
85         artifactNumToKeep: -1
86
87     parameters:
88         - project-parameter:
89             project: '{project}'
90         - gerrit-parameter:
91             branch: 'master'
92         - string:
93             name: GIT_BASE
94             default: https://gerrit.opnfv.org/gerrit/vswitchperf
95     scm:
96         - gerrit-trigger-scm:
97             credentials-id: '{ssh-credentials}'
98             refspec: '$GERRIT_REFSPEC'
99             choosing-strategy: 'gerrit'
100
101     triggers:
102         - gerrit:
103             trigger-on:
104                 - patchset-created-event:
105                     exclude-drafts: 'false'
106                     exclude-trivial-rebase: 'false'
107                     exclude-no-code-change: 'false'
108                 - draft-published-event
109                 - comment-added-contains-event:
110                     comment-contains-value: 'recheck'
111                 - comment-added-contains-event:
112                     comment-contains-value: 'reverify'
113             projects:
114               - project-compare-type: 'ANT'
115                 project-pattern: 'vswitchperf'
116                 branches:
117                   - branch-compare-type: 'ANT'
118                     branch-pattern: '**/master'
119                 forbidden-file-paths:
120                   - compare-type: ANT
121                     pattern: 'docs/**'
122
123     builders:
124         - shell: |
125             pwd
126             cd src
127             make clobber
128             make
129             # run basic sanity test
130             make sanity
131
132 - job-template:
133     name: 'vswitchperf-merge-{stream}'
134
135     # builder-merge job to run JJB update
136     #
137     # This job's purpose is to update all the JJB
138
139     project-type: freestyle
140
141     node: opnfv-build
142
143     concurrent: true
144
145     properties:
146         - throttle:
147             enabled: true
148             max-total: 3
149             max-per-node: 2
150
151     logrotate:
152         daysToKeep: 30
153         numToKeep: 40
154         artifactDaysToKeep: -1
155         artifactNumToKeep: 5
156
157     parameters:
158         - project-parameter:
159             project: '{project}'
160         - gerrit-parameter:
161             branch: 'master'
162         - string:
163             name: GIT_BASE
164             default: https://gerrit.opnfv.org/gerrit/vswitchperf
165
166     scm:
167         - gerrit-trigger-scm:
168             credentials-id: '{ssh-credentials}'
169             refspec: ''
170             choosing-strategy: 'default'
171
172     triggers:
173         - gerrit:
174             trigger-on:
175                 - change-merged-event
176                 - comment-added-contains-event:
177                     comment-contains-value: 'remerge'
178             projects:
179               - project-compare-type: 'ANT'
180                 project-pattern: 'vswitchperf'
181                 branches:
182                     - branch-compare-type: 'ANT'
183                       branch-pattern: '**/master'
184                 forbidden-file-paths:
185                   - compare-type: ANT
186                     pattern: 'docs/**'
187
188     builders:
189         - shell: |
190             pwd
191             cd src
192             make clobber
193             make