2 - xtesting-jobs: &xtesting-jobs
4 current-parameters: true
6 - xtesting-params: &xtesting-params
7 name: 'xtesting-params'
38 - xtesting-containers: &xtesting-containers
39 name: 'xtesting-containers'
42 container: '{container}'
45 - xtesting-run-containers: &xtesting-run-containers
46 name: 'xtesting-build-containers'
47 <<: *xtesting-containers
50 - xtesting-build-containers: &xtesting-build-containers
51 name: 'xtesting-build-containers'
52 <<: *xtesting-containers
57 name: xtesting-pull-containers
61 if [ "{repo}" = "_" ]; then
62 image={container}:{tag}
63 elif [ "{port}" = "None" ]; then
64 image={repo}/{container}:{tag}
66 image={repo}:{port}/{container}:{tag}
68 sudo docker pull $image
71 name: xtesting-build-containers
75 if [ "{repo}" = "_" ]; then
76 image={container}:{tag}
77 elif [ "{port}" = "None" ]; then
78 image={repo}/{container}:{tag}
80 image={repo}:{port}/{container}:{tag}
82 if [ "{ref_arg}" = "None" ]; then
85 build_arg="--build-arg {ref_arg}={ref}"
88 sudo docker build $build_arg \
89 --pull=false --no-cache --force-rm=true \
93 name: xtesting-run-containers
97 [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
98 if [ "{repo}" = "_" ]; then
99 image={container}:{tag}
100 elif [ "{port}" = "None" ]; then
101 image={repo}/{container}:{tag}
103 image={repo}:{port}/{container}:{tag}
105 sudo docker run --rm \
106 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
108 $image run_tests -t {test}
110 gsutil -m cp -r $WORKSPACE/ \
111 gs://artifacts.opnfv.org/xtesting/$JOB_NAME-$BUILD_ID > /dev/null 2>&1
112 find $WORKSPACE -type f \
114 "http://artifacts.opnfv.org/xtesting/$JOB_NAME-$BUILD_ID/%P\n"
118 name: xtesting-remove-images
122 if [ "{repo}" = "_" ]; then
123 image={container}:{tag}
124 elif [ "{port}" = "None" ]; then
125 image={repo}/{container}:{tag}
127 image={repo}:{port}/{container}:{tag}
129 sudo docker rmi $image || true
135 url: https://gerrit.opnfv.org/gerrit/functest-xtesting
136 refspec: '+refs/changes/*:refs/changes/*'
141 name: 'xtesting-{repo}-{container}-{tag}-pull'
146 - xtesting-pull-containers:
147 <<: *xtesting-containers
150 name: 'xtesting-opnfv-xtesting-pull'
152 container: 'xtesting'
154 - 'xtesting-{repo}-{container}-{tag}-pull'
157 name: 'xtesting-{repo}-{container}-{tag}-rmi'
162 - xtesting-remove-images:
163 <<: *xtesting-containers
166 name: 'xtesting-opnfv-xtesting-rmi'
168 container: 'xtesting'
170 - 'xtesting-{repo}-{container}-{tag}-rmi'
173 name: 'xtesting-{repo}-{container}-{tag}-{test}-run'
178 - xtesting-run-containers:
179 <<: *xtesting-run-containers
182 name: 'xtesting-opnfv-xtesting'
184 container: 'xtesting'
198 - 'xtesting-{repo}-{container}-{tag}-{test}-run'
201 name: 'xtesting-{tag}-daily'
202 project-type: multijob
210 use-build-blocker: true
211 blocking-level: 'NODE'
213 - '^xtesting-{tag}-(daily|check|gate)$'
216 name: remove former images
218 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
221 name: pull containers
223 - name: 'xtesting-opnfv-xtesting-{tag}-pull'
226 name: opnfv/xtesting:{tag}
228 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
230 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
232 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
234 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
236 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
238 - name: 'xtesting-opnfv-xtesting-{tag}-sixth-run'
242 name: 'xtesting-{repo}-{container}-{tag}-gate'
250 - xtesting-build-containers:
251 <<: *xtesting-build-containers
255 name: 'xtesting-{repo}-{container}-{tag}-check'
265 - xtesting-build-containers:
266 <<: *xtesting-build-containers
270 name: 'xtesting-_-alpine-3.10-rmi'
277 - 'xtesting-{repo}-{container}-{tag}-rmi'
280 name: 'xtesting-_-alpine-3.10-pull'
287 - 'xtesting-{repo}-{container}-{tag}-pull'
290 name: xtesting-opnfv-xtesting-{tag}-build
296 - 'xtesting-{repo}-{container}-{tag}-gate'
297 - 'xtesting-{repo}-{container}-{tag}-check'
300 name: 'xtesting-{tag}-check'
301 project-type: multijob
309 use-build-blocker: true
310 blocking-level: 'NODE'
312 - '^xtesting-{tag}-(daily|check|gate)$'
315 name: remove former images
317 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
320 name: remove dependencies
322 - name: 'xtesting-_-alpine-3.10-rmi'
325 name: pull dependencies
327 - name: 'xtesting-_-alpine-3.10-pull'
332 - name: 'xtesting-opnfv-xtesting-{tag}-check'
335 name: opnfv/xtesting:{tag}
337 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
339 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
341 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
343 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
345 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
347 - name: 'xtesting-opnfv-xtesting-{tag}-sixth-run'
351 name: xtesting-patchset-created
354 server-name: 'gerrit.opnfv.org'
356 - patchset-created-event
357 - comment-added-contains-event:
358 comment-contains-value: 'recheck'
359 - comment-added-contains-event:
360 comment-contains-value: 'reverify'
362 - project-compare-type: 'ANT'
363 project-pattern: 'functest-xtesting'
365 - branch-compare-type: 'ANT'
366 branch-pattern: '**/{branch}'
374 name: 'xtesting-{tag}-gate'
375 project-type: multijob
377 - xtesting-patchset-created:
384 use-build-blocker: true
385 blocking-level: 'NODE'
387 - '^xtesting-{tag}-(daily|check|gate)$'
390 name: remove former images
392 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
395 name: remove dependencies
397 - name: 'xtesting-_-alpine-3.10-rmi'
400 name: pull dependencies
402 - name: 'xtesting-_-alpine-3.10-pull'
407 - name: 'xtesting-opnfv-xtesting-{tag}-gate'
410 name: opnfv/xtesting:{tag}
412 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
414 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
416 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
418 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
420 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
422 - name: 'xtesting-opnfv-xtesting-{tag}-sixth-run'
429 - 'xtesting-{tag}-daily'
430 - 'xtesting-{tag}-check'
431 - 'xtesting-{tag}-gate'
443 regex: ^xtesting-[a-z]+-(daily|check|gate)$