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'
190 - 'xtesting-{repo}-{container}-{tag}-{test}-run'
193 name: 'xtesting-{tag}-daily'
194 project-type: multijob
202 use-build-blocker: true
203 blocking-level: 'NODE'
205 - '^xtesting-{tag}-(daily|check|gate)$'
208 name: remove former images
210 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
213 name: pull containers
215 - name: 'xtesting-opnfv-xtesting-{tag}-pull'
218 name: opnfv/xtesting:{tag}
220 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
222 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
224 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
226 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
228 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
230 - name: 'xtesting-opnfv-xtesting-{tag}-sixth-run'
234 name: 'xtesting-{repo}-{container}-{tag}-gate'
242 - xtesting-build-containers:
243 <<: *xtesting-build-containers
247 name: 'xtesting-{repo}-{container}-{tag}-check'
257 - xtesting-build-containers:
258 <<: *xtesting-build-containers
262 name: 'xtesting-_-alpine-3.9-rmi'
269 - 'xtesting-{repo}-{container}-{tag}-rmi'
272 name: 'xtesting-_-alpine-3.9-pull'
279 - 'xtesting-{repo}-{container}-{tag}-pull'
282 name: xtesting-opnfv-xtesting-{tag}-build
288 - 'xtesting-{repo}-{container}-{tag}-gate'
289 - 'xtesting-{repo}-{container}-{tag}-check'
292 name: 'xtesting-{tag}-check'
293 project-type: multijob
301 use-build-blocker: true
302 blocking-level: 'NODE'
304 - '^xtesting-{tag}-(daily|check|gate)$'
307 name: remove former images
309 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
312 name: remove dependencies
314 - name: 'xtesting-_-alpine-3.9-rmi'
317 name: pull dependencies
319 - name: 'xtesting-_-alpine-3.9-pull'
324 - name: 'xtesting-opnfv-xtesting-{tag}-check'
327 name: opnfv/xtesting:{tag}
329 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
331 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
333 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
335 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
337 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
339 - name: 'xtesting-opnfv-xtesting-{tag}-sixth-run'
343 name: xtesting-patchset-created
346 server-name: 'gerrit.opnfv.org'
348 - patchset-created-event
349 - comment-added-contains-event:
350 comment-contains-value: 'recheck'
351 - comment-added-contains-event:
352 comment-contains-value: 'reverify'
354 - project-compare-type: 'ANT'
355 project-pattern: 'functest-xtesting'
357 - branch-compare-type: 'ANT'
358 branch-pattern: '**/{branch}'
366 name: 'xtesting-{tag}-gate'
367 project-type: multijob
369 - xtesting-patchset-created:
376 use-build-blocker: true
377 blocking-level: 'NODE'
379 - '^xtesting-{tag}-(daily|check|gate)$'
382 name: remove former images
384 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
387 name: remove dependencies
389 - name: 'xtesting-_-alpine-3.9-rmi'
392 name: pull dependencies
394 - name: 'xtesting-_-alpine-3.9-pull'
399 - name: 'xtesting-opnfv-xtesting-{tag}-gate'
402 name: opnfv/xtesting:{tag}
404 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
406 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
408 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
410 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
412 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
414 - name: 'xtesting-opnfv-xtesting-{tag}-sixth-run'
421 - 'xtesting-{tag}-daily'
422 - 'xtesting-{tag}-check'
423 - 'xtesting-{tag}-gate'
435 regex: ^xtesting-[a-z]+-(daily|check|gate)$