Update new slave tag
[releng.git] / jjb / armband / armband-verify-jobs.yml
1 - project:
2     name: 'armband-verify-jobs'
3
4     project: 'armband'
5
6     installer: 'fuel'
7 #####################################
8 # branch definitions
9 #####################################
10     stream:
11         - master:
12             branch: '{stream}'
13             gs-pathname: ''
14             disabled: false
15         - danube:
16             branch: 'stable/{stream}'
17             gs-pathname: '/{stream}'
18             disabled: false
19 #####################################
20 # patch verification phases
21 #####################################
22     phase:
23         - 'basic':
24             slave-label: 'opnfv-build-enea'
25         - 'build':
26             slave-label: 'opnfv-build-enea'
27         - 'deploy-virtual':
28             slave-label: 'opnfv-build-enea'
29         - 'smoke-test':
30             slave-label: 'opnfv-build-enea'
31 #####################################
32 # jobs
33 #####################################
34     jobs:
35         - 'armband-verify-{stream}'
36         - 'armband-verify-{phase}-{stream}'
37 #####################################
38 # job templates
39 #####################################
40 - job-template:
41     name: 'armband-verify-{stream}'
42
43     project-type: multijob
44
45     disabled: '{obj:disabled}'
46
47     concurrent: true
48
49     properties:
50         - logrotate-default
51         - throttle:
52             enabled: true
53             max-total: 4
54             option: 'project'
55
56     scm:
57         - git-scm-gerrit
58
59     wrappers:
60         - ssh-agent-wrapper
61         - timeout:
62             timeout: 360
63             fail: true
64
65     triggers:
66         - gerrit:
67             server-name: 'gerrit.opnfv.org'
68             trigger-on:
69                 - patchset-created-event:
70                     exclude-drafts: 'false'
71                     exclude-trivial-rebase: 'false'
72                     exclude-no-code-change: 'false'
73                 - draft-published-event
74                 - comment-added-contains-event:
75                     comment-contains-value: 'recheck'
76                 - comment-added-contains-event:
77                     comment-contains-value: 'reverify'
78             projects:
79               - project-compare-type: 'ANT'
80                 project-pattern: '{project}'
81                 branches:
82                   - branch-compare-type: 'ANT'
83                     branch-pattern: '**/{branch}'
84                 file-paths:
85                   - compare-type: ANT
86                     pattern: 'ci/**'
87                   - compare-type: ANT
88                     pattern: 'patches/**'
89                 forbidden-file-paths:
90                   - compare-type: ANT
91                     pattern: 'docs/**'
92             readable-message: true
93
94     parameters:
95         - project-parameter:
96             project: '{project}'
97             branch: '{branch}'
98         - 'opnfv-build-enea-defaults'
99         - 'armband-verify-defaults':
100             gs-pathname: '{gs-pathname}'
101
102     builders:
103         - description-setter:
104             description: "Built on $NODE_NAME"
105         - multijob:
106             name: basic
107             condition: SUCCESSFUL
108             projects:
109                 - name: 'armband-verify-basic-{stream}'
110                   current-parameters: false
111                   predefined-parameters: |
112                     BRANCH=$BRANCH
113                     GERRIT_REFSPEC=$GERRIT_REFSPEC
114                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
115                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
116                   node-parameters: false
117                   kill-phase-on: FAILURE
118                   abort-all-job: true
119         - multijob:
120             name: build
121             condition: SUCCESSFUL
122             projects:
123                 - name: 'armband-verify-build-{stream}'
124                   current-parameters: false
125                   predefined-parameters: |
126                     BRANCH=$BRANCH
127                     GERRIT_REFSPEC=$GERRIT_REFSPEC
128                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
129                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
130                   node-parameters: false
131                   kill-phase-on: FAILURE
132                   abort-all-job: true
133         - multijob:
134             name: deploy-virtual
135             condition: SUCCESSFUL
136             projects:
137                 - name: 'armband-verify-deploy-virtual-{stream}'
138                   current-parameters: false
139                   predefined-parameters: |
140                     BRANCH=$BRANCH
141                     GERRIT_REFSPEC=$GERRIT_REFSPEC
142                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
143                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
144                   node-parameters: false
145                   kill-phase-on: FAILURE
146                   abort-all-job: true
147         - multijob:
148             name: smoke-test
149             condition: SUCCESSFUL
150             projects:
151                 - name: 'armband-verify-smoke-test-{stream}'
152                   current-parameters: false
153                   predefined-parameters: |
154                     BRANCH=$BRANCH
155                     GERRIT_REFSPEC=$GERRIT_REFSPEC
156                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
157                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
158                   node-parameters: false
159                   kill-phase-on: FAILURE
160                   abort-all-job: true
161
162 - job-template:
163     name: 'armband-verify-{phase}-{stream}'
164
165     disabled: '{obj:disabled}'
166
167     concurrent: true
168
169     properties:
170         - logrotate-default
171         - throttle:
172             enabled: true
173             max-total: 6
174             option: 'project'
175         - build-blocker:
176             use-build-blocker: true
177             blocking-jobs:
178                 - 'armband-verify-deploy-.*'
179                 - 'armband-verify-test-.*'
180             block-level: 'NODE'
181
182     scm:
183         - git-scm-gerrit
184
185     wrappers:
186         - ssh-agent-wrapper
187         - timeout:
188             timeout: 360
189             fail: true
190     parameters:
191         - project-parameter:
192             project: '{project}'
193             branch: '{branch}'
194         - '{slave-label}-defaults'
195         - '{installer}-defaults'
196         - 'armband-verify-defaults':
197             gs-pathname: '{gs-pathname}'
198
199     builders:
200         - description-setter:
201             description: "Built on $NODE_NAME"
202         - '{project}-verify-{phase}-macro'
203 #####################################
204 # builder macros
205 #####################################
206 - builder:
207     name: 'armband-verify-basic-macro'
208     builders:
209         - shell: |
210             #!/bin/bash
211
212             echo "Not activated!"
213
214 - builder:
215     name: 'armband-verify-build-macro'
216     builders:
217         - shell:
218             !include-raw: ./build.sh
219         - shell:
220             !include-raw: ./armband-workspace-cleanup.sh
221
222 - builder:
223     name: 'armband-verify-deploy-virtual-macro'
224     builders:
225         - shell: |
226             #!/bin/bash
227
228             echo "Not activated!"
229
230 - builder:
231     name: 'armband-verify-smoke-test-macro'
232     builders:
233         - shell: |
234             #!/bin/bash
235
236             echo "Not activated!"
237 #####################################
238 # parameter macros
239 #####################################
240 - parameter:
241     name: 'armband-verify-defaults'
242     parameters:
243         - string:
244             name: BUILD_DIRECTORY
245             default: $WORKSPACE/build_output
246             description: "Directory where the build artifact will be located upon the completion of the build."
247         - string:
248             name: CACHE_DIRECTORY
249             default: $HOME/opnfv/cache/$INSTALLER_TYPE
250             description: "Directory where the cache to be used during the build is located."
251         - string:
252             name: GS_URL
253             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
254             description: "URL to Google Storage."