Remove all Functest Gambia jjbs
[releng.git] / jjb / functest / functest-daily-jobs.yaml
1 ---
2 ###################################
3 # job configuration for functest
4 ###################################
5 - project:
6     name: functest-daily
7
8     project: functest
9
10     # -------------------------------
11     # BRANCH ANCHORS
12     # -------------------------------
13     master: &master
14       stream: master
15       branch: '{stream}'
16       gs-pathname: ''
17     iruya: &iruya
18       stream: iruya
19       branch: 'stable/{stream}'
20       gs-pathname: '/{stream}'
21     hunter: &hunter
22       stream: hunter
23       branch: 'stable/{stream}'
24       gs-pathname: '/{stream}'
25     # -------------------------------
26     # POD, INSTALLER, AND BRANCH MAPPING
27     # -------------------------------
28     #    Installers using labels
29     #            CI PODs
30     # This section should only contain the installers
31     # that have been switched using labels for slaves
32     # -------------------------------
33     pod:
34       # fuel CI PODs
35       - baremetal:
36           slave-label: fuel-baremetal
37           installer: fuel
38           <<: *master
39       - virtual:
40           slave-label: fuel-virtual
41           installer: fuel
42           <<: *master
43       - baremetal:
44           slave-label: fuel-baremetal
45           installer: fuel
46           <<: *hunter
47       - virtual:
48           slave-label: fuel-virtual
49           installer: fuel
50           <<: *hunter
51       # apex CI PODs
52       - virtual:
53           slave-label: apex-virtual-master
54           installer: apex
55           <<: *master
56       - baremetal:
57           slave-label: apex-baremetal-master
58           installer: apex
59           <<: *master
60       - virtual:
61           slave-label: apex-virtual-master
62           installer: apex
63           <<: *hunter
64       - baremetal:
65           slave-label: apex-baremetal-master
66           installer: apex
67           <<: *hunter
68       # armband CI PODs
69       - armband-baremetal:
70           slave-label: armband-baremetal
71           installer: fuel
72           <<: *master
73       - armband-baremetal:
74           slave-label: armband-baremetal
75           installer: fuel
76           <<: *hunter
77       # fuel NONE CI PODs
78       - zte-pod1:
79           slave-label: fuel-baremetal
80           installer: fuel
81           <<: *master
82       - itri-pod1:
83           slave-label: fuel-baremetal
84           installer: fuel
85           <<: *master
86
87     testsuite:
88       - 'suite':
89           job-timeout: 60
90       - 'daily':
91           job-timeout: 600
92
93     jobs:
94       - 'functest-{installer}-{pod}-{testsuite}-{stream}'
95
96 ################################
97 # job template
98 ################################
99 - job-template:
100     name: 'functest-{installer}-{pod}-{testsuite}-{stream}'
101
102     concurrent: true
103
104     properties:
105       - logrotate-default
106       - throttle:
107           enabled: true
108           max-per-node: 1
109           max-total: 10
110           option: 'project'
111
112     wrappers:
113       - build-name:
114           name: '$BUILD_NUMBER Suite: $FUNCTEST_MODE Scenario: $DEPLOY_SCENARIO'
115       - timeout:
116           timeout: '{job-timeout}'
117           abort: true
118
119     parameters:
120       - project-parameter:
121           project: '{project}'
122           branch: '{branch}'
123       - '{installer}-defaults'
124       - '{slave-label}-defaults'
125       - 'functest-{testsuite}-parameter'
126       - string:
127           name: DEPLOY_SCENARIO
128           default: 'os-nosdn-nofeature-noha'
129       - string:
130           name: DOCKER_TAG
131           default: ''
132       - string:
133           name: CLEAN_DOCKER_IMAGES
134           default: 'false'
135           description: 'Remove downloaded docker images (opnfv/functest*:*)'
136       - functest-parameter:
137           gs-pathname: '{gs-pathname}'
138
139     scm:
140       - git-scm
141
142     builders:
143       - description-setter:
144           description: "Built on $NODE_NAME"
145       - 'functest-{testsuite}-builder'
146
147
148 ########################
149 # parameter macros
150 ########################
151 - parameter:
152     name: functest-daily-parameter
153     parameters:
154       - string:
155           name: FUNCTEST_MODE
156           default: 'daily'
157           description: "Daily suite name to run"
158
159 - parameter:
160     name: functest-suite-parameter
161     parameters:
162       - choice:
163           name: FUNCTEST_MODE
164           choices:
165             - 'tier'
166             - 'testcase'
167           default: 'tier'
168           description: "Test case or Tier to be run"
169       - choice:
170           name: FUNCTEST_SUITE_NAME
171           choices:
172             - 'connection_check'
173             - 'api_check'
174             - 'snaps_health_check'
175             - 'vping_ssh'
176             - 'vping_userdata'
177             - 'cinder_test'
178             - 'tempest_smoke'
179             - 'rally_sanity'
180             - 'refstack_defcore'
181             - 'patrole'
182             - 'odl'
183             - 'snaps_smoke'
184             - 'shaker'
185             - 'vmtp'
186             - 'neutron_trunk'
187             - 'doctor-notification'
188             - 'bgpvpn'
189             - 'functest-odl-sfc'
190             - 'barometercollectd'
191             - 'fds'
192             - 'tempest_full'
193             - 'rally_full'
194             - 'cloudify_ims'
195             - 'vyos_vrouter'
196             - 'juju_epc'
197             - 'parser'
198           default: 'connection_check'
199       - choice:
200           name: FUNCTEST_TIER
201           choices:
202             - 'healthcheck'
203             - 'smoke'
204             - 'benchmarking'
205             - 'features'
206             - 'components'
207             - 'vnf'
208             - 'parser'
209           default: 'healthcheck'
210       - string:
211           name: TESTCASE_OPTIONS
212           default: ''
213           description: 'Additional parameters specific to test case(s)'
214
215 - parameter:
216     name: functest-parameter
217     parameters:
218       - string:
219           name: GS_PATHNAME
220           default: '{gs-pathname}'
221           description: "Version directory where the opnfv documents will be stored in gs repository"
222       - string:
223           name: FUNCTEST_REPO_DIR
224           default: "/home/opnfv/repos/functest"
225           description: "Directory where the Functest repository is cloned"
226       - string:
227           name: PUSH_RESULTS_TO_DB
228           default: "true"
229           description: "Push the results of all the tests to the resultDB"
230       - string:
231           name: CI_DEBUG
232           default: 'false'
233           description: "Show debug output information"
234       - string:
235           name: RC_FILE_PATH
236           default: ''
237           description: "Path to the OS credentials file if given"
238       - string:
239           name: REPO
240           default: "opnfv"
241           description: "Repository name for functest images"
242 ########################
243 # trigger macros
244 ########################
245 - trigger:
246     name: 'functest-master'
247     triggers:
248       - pollscm:
249           cron: "H 9 * * *"
250 ########################
251 # builder macros
252 ########################
253 - builder:
254     name: functest-daily-builder
255     builders:
256       - 'functest-cleanup'
257       - 'functest-daily'
258       - 'functest-store-results'
259       - 'functest-exit'
260
261 - builder:
262     name: functest-suite-builder
263     builders:
264       - 'functest-cleanup'
265       - 'functest-daily'
266       - 'functest-store-results'
267       - 'functest-exit'
268
269 - builder:
270     name: functest-daily
271     builders:
272       # yamllint disable rule:indentation
273       - conditional-step:
274           condition-kind: regex-match
275           regex: "os-.*"
276           label: '$DEPLOY_SCENARIO'
277           steps:
278             - shell:
279                 !include-raw:
280                     - ./functest-env-presetup.sh
281                     - ../../utils/fetch_os_creds.sh
282                     - ./functest-alpine.sh
283       - conditional-step:
284           condition-kind: regex-match
285           regex: "k8-.*"
286           label: '$DEPLOY_SCENARIO'
287           steps:
288             - shell:
289                 !include-raw:
290                     - ../../utils/fetch_k8_conf.sh
291                     - ./functest-k8.sh
292
293 # yamllint enable rule:indentation
294 - builder:
295     name: functest-store-results
296     builders:
297       - shell:
298           !include-raw: ../../utils/push-test-logs.sh
299
300 - builder:
301     name: functest-cleanup
302     builders:
303       - shell:
304           !include-raw: ./functest-cleanup.sh
305
306 - builder:
307     name: functest-exit
308     builders:
309       - shell:
310           !include-raw: ./functest-exit.sh