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