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