2 - xtesting-jobs: &xtesting-jobs
4 current-parameters: true
6 - xtesting-params: &xtesting-params
7 name: 'xtesting-params'
35 - xtesting-containers: &xtesting-containers
36 name: 'xtesting-containers'
39 container: '{container}'
42 - xtesting-run-containers: &xtesting-run-containers
43 name: 'xtesting-build-containers'
44 <<: *xtesting-containers
47 - xtesting-build-containers: &xtesting-build-containers
48 name: 'xtesting-build-containers'
49 <<: *xtesting-containers
54 name: xtesting-pull-containers
58 if [ "{repo}" = "_" ]; then
59 image={container}:{tag}
60 elif [ "{port}" = "None" ]; then
61 image={repo}/{container}:{tag}
63 image={repo}:{port}/{container}:{tag}
65 sudo docker pull $image
68 name: xtesting-build-containers
72 if [ "{repo}" = "_" ]; then
73 image={container}:{tag}
74 elif [ "{port}" = "None" ]; then
75 image={repo}/{container}:{tag}
77 image={repo}:{port}/{container}:{tag}
79 if [ "{ref_arg}" = "None" ]; then
82 build_arg="--build-arg {ref_arg}={ref}"
85 sudo docker build $build_arg \
86 --pull=false --no-cache --force-rm=true \
90 name: xtesting-run-containers
94 [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
95 if [ "{repo}" = "_" ]; then
96 image={container}:{tag}
97 elif [ "{port}" = "None" ]; then
98 image={repo}/{container}:{tag}
100 image={repo}:{port}/{container}:{tag}
102 sudo docker run --rm \
103 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
105 $image run_tests -t {test}
107 gsutil -m cp -r $WORKSPACE/ \
108 gs://artifacts.opnfv.org/xtesting/$JOB_NAME-$BUILD_ID > /dev/null 2>&1
109 find $WORKSPACE -type f \
111 "http://artifacts.opnfv.org/xtesting/$JOB_NAME-$BUILD_ID/%P\n"
115 name: xtesting-remove-images
119 if [ "{repo}" = "_" ]; then
120 image={container}:{tag}
121 elif [ "{port}" = "None" ]; then
122 image={repo}/{container}:{tag}
124 image={repo}:{port}/{container}:{tag}
126 sudo docker rmi $image || true
132 url: https://gerrit.opnfv.org/gerrit/functest-xtesting
133 refspec: '+refs/changes/*:refs/changes/*'
138 name: 'xtesting-{repo}-{container}-{tag}-pull'
143 - xtesting-pull-containers:
144 <<: *xtesting-containers
147 name: 'xtesting-opnfv-xtesting-pull'
149 container: 'xtesting'
151 - 'xtesting-{repo}-{container}-{tag}-pull'
154 name: 'xtesting-{repo}-{container}-{tag}-rmi'
159 - xtesting-remove-images:
160 <<: *xtesting-containers
163 name: 'xtesting-opnfv-xtesting-rmi'
165 container: 'xtesting'
167 - 'xtesting-{repo}-{container}-{tag}-rmi'
170 name: 'xtesting-{repo}-{container}-{tag}-{test}-run'
175 - xtesting-run-containers:
176 <<: *xtesting-run-containers
179 name: 'xtesting-opnfv-xtesting'
181 container: 'xtesting'
195 - 'xtesting-{repo}-{container}-{tag}-{test}-run'
198 name: 'xtesting-{tag}-daily'
199 project-type: multijob
207 use-build-blocker: true
208 blocking-level: 'NODE'
210 - '^xtesting-{tag}-(daily|check|gate)$'
213 name: remove former images
215 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
218 name: pull containers
220 - name: 'xtesting-opnfv-xtesting-{tag}-pull'
223 name: opnfv/xtesting:{tag}
225 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
227 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
229 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
231 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
233 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
235 - name: 'xtesting-opnfv-xtesting-{tag}-sixth-run'
239 name: 'xtesting-{repo}-{container}-{tag}-gate'
247 - xtesting-build-containers:
248 <<: *xtesting-build-containers
252 name: 'xtesting-{repo}-{container}-{tag}-check'
262 - xtesting-build-containers:
263 <<: *xtesting-build-containers
267 name: 'xtesting-_-alpine-3.9-rmi'
274 - 'xtesting-{repo}-{container}-{tag}-rmi'
277 name: 'xtesting-_-alpine-3.9-pull'
284 - 'xtesting-{repo}-{container}-{tag}-pull'
287 name: xtesting-opnfv-xtesting-{tag}-build
293 - 'xtesting-{repo}-{container}-{tag}-gate'
294 - 'xtesting-{repo}-{container}-{tag}-check'
297 name: 'xtesting-{tag}-check'
298 project-type: multijob
306 use-build-blocker: true
307 blocking-level: 'NODE'
309 - '^xtesting-{tag}-(daily|check|gate)$'
312 name: remove former images
314 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
317 name: remove dependencies
319 - name: 'xtesting-_-alpine-3.9-rmi'
322 name: pull dependencies
324 - name: 'xtesting-_-alpine-3.9-pull'
329 - name: 'xtesting-opnfv-xtesting-{tag}-check'
332 name: opnfv/xtesting:{tag}
334 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
336 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
338 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
340 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
342 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
344 - name: 'xtesting-opnfv-xtesting-{tag}-sixth-run'
348 name: xtesting-patchset-created
351 server-name: 'gerrit.opnfv.org'
353 - patchset-created-event
354 - comment-added-contains-event:
355 comment-contains-value: 'recheck'
356 - comment-added-contains-event:
357 comment-contains-value: 'reverify'
359 - project-compare-type: 'ANT'
360 project-pattern: 'functest-xtesting'
362 - branch-compare-type: 'ANT'
363 branch-pattern: '**/{branch}'
371 name: 'xtesting-{tag}-gate'
372 project-type: multijob
374 - xtesting-patchset-created:
381 use-build-blocker: true
382 blocking-level: 'NODE'
384 - '^xtesting-{tag}-(daily|check|gate)$'
387 name: remove former images
389 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
392 name: remove dependencies
394 - name: 'xtesting-_-alpine-3.9-rmi'
397 name: pull dependencies
399 - name: 'xtesting-_-alpine-3.9-pull'
404 - name: 'xtesting-opnfv-xtesting-{tag}-gate'
407 name: opnfv/xtesting:{tag}
409 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
411 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
413 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
415 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
417 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
419 - name: 'xtesting-opnfv-xtesting-{tag}-sixth-run'
426 - 'xtesting-{tag}-daily'
427 - 'xtesting-{tag}-check'
428 - 'xtesting-{tag}-gate'
440 regex: ^xtesting-[a-z]+-(daily|check|gate)$