2 - xtesting-jobs: &xtesting-jobs
4 current-parameters: true
6 - xtesting-params: &xtesting-params
7 name: 'xtesting-params'
32 - xtesting-containers: &xtesting-containers
33 name: 'xtesting-containers'
36 container: '{container}'
39 - xtesting-run-containers: &xtesting-run-containers
40 name: 'xtesting-build-containers'
41 <<: *xtesting-containers
44 - xtesting-build-containers: &xtesting-build-containers
45 name: 'xtesting-build-containers'
46 <<: *xtesting-containers
51 name: xtesting-pull-containers
55 if [ "{repo}" = "_" ]; then
56 image={container}:{tag}
57 elif [ "{port}" = "None" ]; then
58 image={repo}/{container}:{tag}
60 image={repo}:{port}/{container}:{tag}
62 sudo docker pull $image
65 name: xtesting-build-containers
69 if [ "{repo}" = "_" ]; then
70 image={container}:{tag}
71 elif [ "{port}" = "None" ]; then
72 image={repo}/{container}:{tag}
74 image={repo}:{port}/{container}:{tag}
76 if [ "{ref_arg}" = "None" ]; then
79 build_arg="--build-arg {ref_arg}={ref}"
82 sudo docker build $build_arg \
83 --pull=false --no-cache --force-rm=true \
87 name: xtesting-run-containers
91 [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
92 if [ "{repo}" = "_" ]; then
93 image={container}:{tag}
94 elif [ "{port}" = "None" ]; then
95 image={repo}/{container}:{tag}
97 image={repo}:{port}/{container}:{tag}
99 sudo docker run --rm \
100 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
102 $image run_tests -t {test}
104 gsutil -m cp -r $WORKSPACE/ \
105 gs://artifacts.opnfv.org/xtesting/$JOB_NAME-$BUILD_ID > /dev/null 2>&1
106 find $WORKSPACE -type f \
108 "http://artifacts.opnfv.org/xtesting/$JOB_NAME-$BUILD_ID/%P\n"
112 name: xtesting-remove-images
116 if [ "{repo}" = "_" ]; then
117 image={container}:{tag}
118 elif [ "{port}" = "None" ]; then
119 image={repo}/{container}:{tag}
121 image={repo}:{port}/{container}:{tag}
123 sudo docker rmi $image || true
129 url: https://gerrit.opnfv.org/gerrit/functest-xtesting
130 refspec: '+refs/changes/*:refs/changes/*'
135 name: 'xtesting-{repo}-{container}-{tag}-pull'
139 - xtesting-pull-containers:
140 <<: *xtesting-containers
143 name: 'xtesting-opnfv-xtesting-pull'
145 container: 'xtesting'
147 - 'xtesting-{repo}-{container}-{tag}-pull'
150 name: 'xtesting-{repo}-{container}-{tag}-rmi'
154 - xtesting-remove-images:
155 <<: *xtesting-containers
158 name: 'xtesting-opnfv-xtesting-rmi'
160 container: 'xtesting'
162 - 'xtesting-{repo}-{container}-{tag}-rmi'
165 name: 'xtesting-{repo}-{container}-{tag}-{test}-run'
169 - xtesting-run-containers:
170 <<: *xtesting-run-containers
173 name: 'xtesting-opnfv-xtesting'
175 container: 'xtesting'
183 - 'xtesting-{repo}-{container}-{tag}-{test}-run'
186 name: 'xtesting-{tag}-daily'
187 project-type: multijob
194 use-build-blocker: true
195 blocking-level: 'NODE'
197 - '^xtesting-[a-z]+-(daily|check|gate)$'
200 name: remove former images
202 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
205 name: pull containers
207 - name: 'xtesting-opnfv-xtesting-{tag}-pull'
210 name: opnfv/xtesting:{tag}
212 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
214 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
216 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
218 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
220 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
224 name: 'xtesting-{repo}-{container}-{tag}-gate'
231 - xtesting-build-containers:
232 <<: *xtesting-build-containers
236 name: 'xtesting-{repo}-{container}-{tag}-check'
245 - xtesting-build-containers:
246 <<: *xtesting-build-containers
250 name: 'xtesting-_-alpine-3.9-rmi'
256 - 'xtesting-{repo}-{container}-{tag}-rmi'
259 name: 'xtesting-_-alpine-3.9-pull'
265 - 'xtesting-{repo}-{container}-{tag}-pull'
268 name: xtesting-opnfv-xtesting-{tag}-build
274 - 'xtesting-{repo}-{container}-{tag}-gate'
275 - 'xtesting-{repo}-{container}-{tag}-check'
278 name: 'xtesting-{tag}-check'
279 project-type: multijob
286 use-build-blocker: true
287 blocking-level: 'NODE'
289 - '^xtesting-[a-z]+-(daily|check|gate)$'
292 name: remove former images
294 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
297 name: remove dependencies
299 - name: 'xtesting-_-alpine-3.9-rmi'
302 name: pull dependencies
304 - name: 'xtesting-_-alpine-3.9-pull'
307 name: opnfv/functest-xtesting
309 - name: 'xtesting-opnfv-xtesting-{tag}-check'
312 name: opnfv/xtesting:{tag}
314 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
316 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
318 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
320 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
322 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
326 name: xtesting-patchset-created
329 server-name: 'gerrit.opnfv.org'
331 - patchset-created-event
332 - comment-added-contains-event:
333 comment-contains-value: 'recheck'
334 - comment-added-contains-event:
335 comment-contains-value: 'reverify'
337 - project-compare-type: 'ANT'
338 project-pattern: 'functest-xtesting'
340 - branch-compare-type: 'ANT'
341 branch-pattern: '**/{branch}'
349 name: 'xtesting-{tag}-gate'
350 project-type: multijob
352 - xtesting-patchset-created:
358 use-build-blocker: true
359 blocking-level: 'NODE'
361 - '^xtesting-[a-z]+-(daily|check|gate)$'
364 name: remove former images
366 - name: 'xtesting-opnfv-xtesting-{tag}-rmi'
369 name: remove dependencies
371 - name: 'xtesting-_-alpine-3.9-rmi'
374 name: pull dependencies
376 - name: 'xtesting-_-alpine-3.9-pull'
379 name: opnfv/functest-xtesting
381 - name: 'xtesting-opnfv-xtesting-{tag}-gate'
384 name: opnfv/xtesting:{tag}
386 - name: 'xtesting-opnfv-xtesting-{tag}-first-run'
388 - name: 'xtesting-opnfv-xtesting-{tag}-second-run'
390 - name: 'xtesting-opnfv-xtesting-{tag}-third-run'
392 - name: 'xtesting-opnfv-xtesting-{tag}-fourth-run'
394 - name: 'xtesting-opnfv-xtesting-{tag}-fifth-run'
401 - 'xtesting-{tag}-daily'
402 - 'xtesting-{tag}-check'
403 - 'xtesting-{tag}-gate'
415 regex: ^xtesting-[a-z]+-(daily|check|gate)$