Merge "Enable ovn4nfv-k8s-plugins project jobs"
[releng.git] / jjb / functest / functest-virtual.yaml
1 ---
2 - functest-defaultparameters: &functest-defaultparameters
3     name: 'functest-defaultparameters'
4     repo: opnfv
5     tag:
6       - gambia
7       - hunter
8       - latest
9
10 - functest-buildparameters: &functest-buildparameters
11     name: 'functest-buildparameters'
12     parameters:
13       - functest-virtual-defaults
14       - string:
15           name: branch
16           default: master
17
18 - job-template:
19     name: '{repo}-functest-{container}-{test}-{tag}-run'
20     parameters:
21       - functest-virtual-defaults
22     builders:
23       - shell: |
24           sudo docker run \
25             -e EXTERNAL_NETWORK=public1 \
26             -v /home/opnfv/functest/results/$JOB_NAME-$BUILD_ID:\
27           /home/opnfv/functest/results \
28             -v /home/opnfv/functest/openstack.creds:\
29           /home/opnfv/functest/conf/env_file \
30             -v /home/opnfv/functest/images:/home/opnfv/functest/images \
31             {repo}/functest-{container}:{tag} run_tests -t {test}
32
33 - project:
34     name: repo-functest-healthcheck-test-tag-run
35     <<: *functest-defaultparameters
36     container: healthcheck
37     test:
38       - connection_check
39       - tenantnetwork1
40       - tenantnetwork2
41       - vmready1
42       - vmready2
43       - singlevm1
44       - singlevm2
45       - vping_ssh
46       - vping_userdata
47       - cinder_test
48       - odl
49       - api_check
50       - snaps_health_check
51     jobs:
52       - '{repo}-functest-{container}-{test}-{tag}-run'
53
54 - functest-healthcheckjobs: &functest-healthcheckjobs
55     name: 'functest-healthcheckjobs'
56     projects:
57       - name: '{repo}-functest-healthcheck-connection_check-{tag}-run'
58       - name: '{repo}-functest-healthcheck-tenantnetwork1-{tag}-run'
59       - name: '{repo}-functest-healthcheck-tenantnetwork2-{tag}-run'
60       - name: '{repo}-functest-healthcheck-vmready1-{tag}-run'
61       - name: '{repo}-functest-healthcheck-vmready2-{tag}-run'
62       - name: '{repo}-functest-healthcheck-singlevm1-{tag}-run'
63       - name: '{repo}-functest-healthcheck-singlevm2-{tag}-run'
64       - name: '{repo}-functest-healthcheck-vping_ssh-{tag}-run'
65       - name: '{repo}-functest-healthcheck-vping_userdata-{tag}-run'
66       - name: '{repo}-functest-healthcheck-cinder_test-{tag}-run'
67       - name: '{repo}-functest-healthcheck-odl-{tag}-run'
68       - name: '{repo}-functest-healthcheck-api_check-{tag}-run'
69       - name: '{repo}-functest-healthcheck-snaps_health_check-{tag}-run'
70
71 - project:
72     name: repo-functest-smoke-test-tag-run
73     <<: *functest-defaultparameters
74     container: smoke
75     test:
76       - tempest_smoke
77       - neutron-tempest-plugin-api
78       - rally_jobs
79       - refstack_defcore
80       - patrole
81       - snaps_smoke
82       - neutron_trunk
83       - networking-bgpvpn
84       - networking-sfc
85       - barbican
86     jobs:
87       - '{repo}-functest-{container}-{test}-{tag}-run'
88
89 - functest-smokejobs: &functest-smokejobs
90     name: 'functest-smokejobs'
91     projects:
92       - name: '{repo}-functest-smoke-tempest_smoke-{tag}-run'
93       - name: '{repo}-functest-smoke-neutron-tempest-plugin-api-{tag}-run'
94       - name: '{repo}-functest-smoke-rally_jobs-{tag}-run'
95       - name: '{repo}-functest-smoke-refstack_defcore-{tag}-run'
96       - name: '{repo}-functest-smoke-patrole-{tag}-run'
97       - name: '{repo}-functest-smoke-snaps_smoke-{tag}-run'
98       - name: '{repo}-functest-smoke-neutron_trunk-{tag}-run'
99       - name: '{repo}-functest-smoke-networking-bgpvpn-{tag}-run'
100       - name: '{repo}-functest-smoke-networking-sfc-{tag}-run'
101       - name: '{repo}-functest-smoke-barbican-{tag}-run'
102
103 - project:
104     name: repo-functest-benchmarking-test-tag-run'
105     <<: *functest-defaultparameters
106     container: benchmarking
107     test:
108       - vmtp
109       - shaker
110     jobs:
111       - '{repo}-functest-{container}-{test}-{tag}-run'
112
113 - functest-benchmarkingjobs: &functest-benchmarkingjobs
114     name: 'functest-benchmarkingjobs'
115     projects:
116       - name: '{repo}-functest-benchmarking-vmtp-{tag}-run'
117       - name: '{repo}-functest-benchmarking-shaker-{tag}-run'
118
119 - project:
120     name: repo-functest-components-test-tag-run
121     <<: *functest-defaultparameters
122     container: components
123     test:
124       - tempest_full
125       - tempest_scenario
126       - rally_full
127     jobs:
128       - '{repo}-functest-{container}-{test}-{tag}-run'
129
130 - functest-componentsjobs: &functest-componentsjobs
131     name: 'functest-componentsjobs'
132     projects:
133       - name: '{repo}-functest-components-tempest_full-{tag}-run'
134       - name: '{repo}-functest-components-tempest_scenario-{tag}-run'
135       - name: '{repo}-functest-components-rally_full-{tag}-run'
136
137 - project:
138     name: repo-functest-vnf-{test}-{tag}-run
139     <<: *functest-defaultparameters
140     container: vnf
141     test:
142       - cloudify
143       - cloudify_ims
144       - heat_ims
145       - vyos_vrouter
146       - juju_epc
147     jobs:
148       - '{repo}-functest-{container}-{test}-{tag}-run'
149
150 - functest-vnfjobs: &functest-vnfjobs
151     name: 'functest-vnfjobs'
152     projects:
153       - name: '{repo}-functest-vnf-cloudify-{tag}-run'
154       - name: '{repo}-functest-vnf-cloudify_ims-{tag}-run'
155       - name: '{repo}-functest-vnf-heat_ims-{tag}-run'
156       - name: '{repo}-functest-vnf-vyos_vrouter-{tag}-run'
157       - name: '{repo}-functest-vnf-juju_epc-{tag}-run'
158
159 - project:
160     name: repo-functest-features-test-tag-run
161     <<: *functest-defaultparameters
162     container: features
163     test:
164       - doctor-notification
165       - bgpvpn
166       - functest-odl-sfc
167       - barometercollectd
168       - vgpu
169       - stor4nfv_os
170     jobs:
171       - '{repo}-functest-{container}-{test}-{tag}-run'
172
173 - functest-featuresjobs: &functest-featuresjobs
174     name: 'functest-featuresjobs'
175     projects:
176       - name: '{repo}-functest-features-doctor-notification-{tag}-run'
177       - name: '{repo}-functest-features-bgpvpn-{tag}-run'
178       - name: '{repo}-functest-features-functest-odl-sfc-{tag}-run'
179       - name: '{repo}-functest-features-barometercollectd-{tag}-run'
180       - name: '{repo}-functest-features-vgpu-{tag}-run'
181       - name: '{repo}-functest-features-stor4nfv_os-{tag}-run'
182
183 - job-template:
184     name: '{repo}-functest-{tag}-daily'
185     <<: *functest-defaultparameters
186     project-type: multijob
187     parameters:
188       - functest-virtual-defaults
189     builders:
190       - multijob:
191           name: healthcheck
192           <<: *functest-healthcheckjobs
193       - multijob:
194           name: smoke
195           <<: *functest-smokejobs
196       - multijob:
197           name: benchmarking
198           <<: *functest-benchmarkingjobs
199       - multijob:
200           name: features
201           <<: *functest-featuresjobs
202
203 - project:
204     name: repo-functest-tag-daily
205     <<: *functest-defaultparameters
206     jobs:
207       - '{repo}-functest-{tag}-daily'
208
209 - scm:
210     name: functest-gerrit
211     scm:
212       - git:
213           url: https://gerrit.opnfv.org/gerrit/functest
214           refspec: '+refs/changes/*:refs/changes/*'
215           branches:
216             - ${branch}
217
218 - job-template:
219     name: '{repo}-functest-{container}-{tag}-build'
220     <<: *functest-buildparameters
221     scm:
222       - functest-gerrit
223     builders:
224       - shell: |
225           case "{container}" in
226           "components")
227               args="" ;;
228           *)
229               args="--build-arg BRANCH=${{branch}}" ;;
230           esac
231           cd docker/$(echo {container} |cut -d\- -f 2)
232           sudo docker build \
233             ${{args}} --pull=false --no-cache --force-rm=true \
234             -t {repo}/functest-{container}:{tag} .
235
236 - project:
237     name: repo-functest-container-tag-build
238     <<: *functest-defaultparameters
239     container:
240       - core
241       - tempest
242       - healthcheck
243       - smoke
244       - benchmarking
245       - components
246       - vnf
247       - features
248     jobs:
249       - '{repo}-functest-{container}-{tag}-build'
250
251 - functest-projectparameters: &functest-projectparameters
252     name: 'functest-projectparameters'
253     current-parameters: true
254
255 - job-template:
256     name: '{repo}-functest-{tag}-gate'
257     project-type: multijob
258     <<: *functest-buildparameters
259     builders:
260       - multijob:
261           name: build functest-core
262           projects:
263             - name: '{repo}-functest-core-{tag}-build'
264               <<: *functest-projectparameters
265       - multijob:
266           name: build functest-tempest
267           projects:
268             - name: '{repo}-functest-tempest-{tag}-build'
269               <<: *functest-projectparameters
270       - multijob:
271           name: build all remaining contrainers
272           projects:
273             - name: '{repo}-functest-healthcheck-{tag}-build'
274               <<: *functest-projectparameters
275             - name: '{repo}-functest-smoke-{tag}-build'
276               <<: *functest-projectparameters
277             - name: '{repo}-functest-benchmarking-{tag}-build'
278               <<: *functest-projectparameters
279             - name: '{repo}-functest-components-{tag}-build'
280               <<: *functest-projectparameters
281             - name: '{repo}-functest-vnf-{tag}-build'
282               <<: *functest-projectparameters
283             - name: '{repo}-functest-features-{tag}-build'
284               <<: *functest-projectparameters
285       - multijob:
286           name: healthcheck
287           <<: *functest-healthcheckjobs
288       - multijob:
289           name: smoke
290           <<: *functest-smokejobs
291       - multijob:
292           name: benchmarking
293           <<: *functest-benchmarkingjobs
294       - multijob:
295           name: features
296           <<: *functest-featuresjobs
297
298 - project:
299     name: repo-functest-tag-gate
300     <<: *functest-defaultparameters
301     jobs:
302       - '{repo}-functest-{tag}-gate'