2277e92ab7391a32d4460fc9e6f5d7fa1fde4b02
[releng.git] / jjb / compass4nfv / compass-verify-jobs.yml
1 - project:
2     name: 'compass-verify-jobs'
3
4     project: 'compass4nfv'
5
6     installer: 'compass'
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: true
19
20     distro:
21         - 'xenial':
22             disabled: false
23             os-version: 'xenial'
24             openstack-os-version: ''
25 #####################################
26 # patch verification phases
27 #####################################
28     phase:
29         - 'basic'
30         - 'deploy-virtual'
31 #####################################
32 # jobs
33 #####################################
34     jobs:
35         - 'compass-verify-{distro}-{stream}'
36         - 'compass-verify-{phase}-{distro}-{stream}'
37 #####################################
38 # job templates
39 #####################################
40 - job-template:
41     name: 'compass-verify-{distro}-{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             max-per-node: 1
54             option: 'project'
55         - build-blocker:
56             use-build-blocker: true
57             blocking-jobs:
58                 - 'compass-verify-[^-]*-[^-]*'
59                 - 'compass-os-.*?-virtual-daily-.*?'
60             block-level: 'NODE'
61
62     scm:
63         - git-scm-gerrit
64
65     wrappers:
66         - ssh-agent-wrapper
67         - timeout:
68             timeout: 120
69             fail: true
70
71     triggers:
72         - gerrit:
73             server-name: 'gerrit.opnfv.org'
74             trigger-on:
75                 - patchset-created-event:
76                     exclude-drafts: 'false'
77                     exclude-trivial-rebase: 'false'
78                     exclude-no-code-change: 'false'
79                 - draft-published-event
80                 - comment-added-contains-event:
81                     comment-contains-value: 'recheck'
82                 - comment-added-contains-event:
83                     comment-contains-value: 'reverify'
84             projects:
85               - project-compare-type: 'ANT'
86                 project-pattern: '{project}'
87                 branches:
88                   - branch-compare-type: 'ANT'
89                     branch-pattern: '**/{branch}'
90                 file-paths:
91                   - compare-type: ANT
92                     pattern: '**/*'
93                 forbidden-file-paths:
94                   - compare-type: ANT
95                     pattern: 'docs/**'
96             readable-message: true
97
98     parameters:
99         - project-parameter:
100             project: '{project}'
101         - gerrit-parameter:
102             branch: '{branch}'
103         - 'compass-virtual-defaults'
104         - '{installer}-defaults'
105         - 'compass-verify-defaults':
106             installer: '{installer}'
107             gs-pathname: '{gs-pathname}'
108         - string:
109             name: DEPLOY_SCENARIO
110             default: 'os-nosdn-nofeature-ha'
111
112     builders:
113         - description-setter:
114             description: "Built on $NODE_NAME"
115         - multijob:
116             name: basic
117             condition: SUCCESSFUL
118             projects:
119                 - name: 'opnfv-lint-verify-{stream}'
120                   current-parameters: true
121                   node-parameters: true
122                   kill-phase-on: FAILURE
123                   abort-all-job: true
124         - multijob:
125             name: deploy-virtual
126             condition: SUCCESSFUL
127             projects:
128                 - name: 'compass-verify-deploy-virtual-{distro}-{stream}'
129                   current-parameters: true
130                   predefined-parameters: |
131                     COMPASS_OS_VERSION={os-version}
132                   node-parameters: true
133                   kill-phase-on: FAILURE
134                   abort-all-job: true
135 #        - multijob:
136 #            name: smoke-test
137 #            condition: SUCCESSFUL
138 #            projects:
139 #                - name: 'functest-compass-virtual-suite-{stream}'
140 #                  current-parameters: true
141 #                  predefined-parameters:
142 #                    FUNCTEST_SUITE_NAME=healthcheck
143 #                  node-parameters: true
144 #                  kill-phase-on: NEVER
145 #                  abort-all-job: true
146
147 - job-template:
148     name: 'compass-verify-{phase}-{distro}-{stream}'
149
150     disabled: '{obj:disabled}'
151
152     concurrent: true
153
154     properties:
155         - throttle:
156             enabled: true
157             max-per-node: 1
158             option: 'project'
159         - build-blocker:
160             use-build-blocker: true
161             blocking-jobs:
162                 - 'compass-os-.*?-virtual-daily-.*?'
163                 - 'compass-verify-deploy-.*'
164                 - 'functest-compass-virtual.*'
165             block-level: 'NODE'
166
167     scm:
168         - git-scm-gerrit
169
170     wrappers:
171         - ssh-agent-wrapper
172         - timeout:
173             timeout: 120
174             fail: true
175
176     builders:
177         - description-setter:
178             description: "Built on $NODE_NAME"
179         - '{project}-verify-{phase}-macro'
180
181     publishers:
182         - archive:
183             artifacts: 'ansible.log'
184             allow-empty: 'true'
185             fingerprint: true
186 #####################################
187 # builder macros
188 #####################################
189 - builder:
190     name: 'compass4nfv-verify-basic-macro'
191     builders:
192         - shell: |
193             #!/bin/bash
194
195             echo "Not activated!"
196
197 - builder:
198     name: 'compass4nfv-verify-deploy-virtual-macro'
199     builders:
200         - shell:
201             !include-raw: ./compass-build.sh
202         - shell:
203             !include-raw: ./compass-deploy.sh
204 #####################################
205 # parameter macros
206 #####################################
207 - parameter:
208     name: 'compass-verify-defaults'
209     parameters:
210         - string:
211             name: BUILD_DIRECTORY
212             default: $WORKSPACE/build_output
213             description: "Directory where the build artifact will be located upon the completion of the build."
214         - string:
215             name: CACHE_DIRECTORY
216             default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}"
217             description: "Directory where the cache to be used during the build is located."
218         - string:
219             name: GS_URL
220             default: '$GS_BASE{gs-pathname}'
221             description: "URL to Google Storage."
222         - string:
223             name: PPA_REPO
224             default: "http://205.177.226.237:9999{gs-pathname}"
225         - string:
226             name: PPA_CACHE
227             default: "$WORKSPACE/work/repo/"
228         - choice:
229             name: COMPASS_OPENSTACK_VERSION
230             choices:
231                 - 'newton'
232         - choice:
233             name: COMPASS_OS_VERSION
234             choices:
235                 - 'xenial'