2 - functest-kubernetes-ng-containers: &functest-kubernetes-ng-containers
3 name: 'functest-kubernetes-ng-containers'
6 container: '{container}'
9 - functest-kubernetes-ng-params: &functest-kubernetes-ng-params
10 name: 'functest-kubernetes-ng-params'
19 from: s/:leguer$/:v1.20/g
25 from: s/:kali$/:v1.19/g
32 from: s/:kali$/:v1.18/g
34 - functest-kubernetes-ng-jobs: &functest-kubernetes-ng-jobs
35 name: 'functest-kubernetes-ng-jobs'
36 current-parameters: true
39 name: functest-kubernetes-ng-slave
45 - functest-kubernetes-ng-build-containers: &functest-kubernetes-ng-build-containers
46 name: 'functest-kubernetes-ng-build-containers'
47 <<: *functest-kubernetes-ng-containers
50 build_args: '{build_args}'
54 name: functest-kubernetes-ng-build-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}
66 if [ "{build_args}" != "None" ]; then
67 for i in $(echo {build_args} | tr -d '[]' |sed "s/, / /g" ); \
68 do build_args="--build-arg $i $build_args"; done
70 if [ "{ref_arg}" != "None" ]; then
71 build_args="$build_args --build-arg {ref_arg}={ref}"
74 if [ "{from}" != "None" ]; then
75 sed -i {from} Dockerfile
77 sudo docker build $build_args \
78 --pull=false --no-cache --force-rm=true \
82 name: functest-kubernetes-ng-scm
85 url: 'https://gerrit.opnfv.org/gerrit/functest-kubernetes'
86 refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
90 - functest-kubernetes-ng-dep: &functest-kubernetes-ng-dep
91 name: 'functest-kubernetes-ng-containers'
95 dependency: '{dependency}'
98 name: functest-kubernetes-ng-pull-dep-images
102 if [ "_" = "_" ]; then
103 image=alpine:{dependency}
104 elif [ "None" = "None" ]; then
105 image=_/alpine:{dependency}
107 image=_:/alpine:{dependency}
109 sudo docker pull $image || true
112 name: functest-kubernetes-ng-remove-dep-images
116 if [ "_" = "_" ]; then
117 image=alpine:{dependency}
118 elif [ "" = "None" ]; then
119 image=_/alpine:{dependency}
121 image=_:/alpine:{dependency}
123 sudo docker rmi $image || true
126 name: 'functest-kubernetes-ng-{repo}-{tag}-dep-pull'
128 - functest-kubernetes-ng-slave:
131 - functest-kubernetes-ng-pull-dep-images:
132 <<: *functest-kubernetes-ng-dep
135 name: 'functest-kubernetes-ng-{repo}-{tag}-dep-pull'
136 <<: *functest-kubernetes-ng-params
138 - 'functest-kubernetes-ng-{repo}-{tag}-dep-pull'
141 name: 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi'
143 - functest-kubernetes-ng-slave:
146 - functest-kubernetes-ng-remove-dep-images:
147 <<: *functest-kubernetes-ng-dep
150 name: 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi'
151 <<: *functest-kubernetes-ng-params
153 - 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi'
156 name: functest-kubernetes-ng-push-containers
160 if [ "{repo}" = "_" ]; then
161 image={container}:{tag}
162 elif [ "{port}" = "None" ]; then
163 image={repo}/{container}:{tag}
165 image={repo}:{port}/{container}:{tag}
167 sudo docker push $image
170 name: functest-kubernetes-ng-commit
176 name: 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
178 - functest-kubernetes-ng-slave:
181 - functest-kubernetes-ng-scm:
184 - functest-kubernetes-ng-build-containers:
185 <<: *functest-kubernetes-ng-build-containers
187 build_args: '{build_args}'
188 - functest-kubernetes-ng-push-containers:
189 <<: *functest-kubernetes-ng-build-containers
193 name: functest-kubernetes-ng-opnfv-functest-kubernetes-core-{tag}-build
194 <<: *functest-kubernetes-ng-params
195 container: functest-kubernetes-core
199 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
202 name: functest-kubernetes-ng-opnfv-functest-kubernetes-healthcheck-{tag}-build
203 <<: *functest-kubernetes-ng-params
204 container: functest-kubernetes-healthcheck
206 path: docker/healthcheck
208 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
211 name: functest-kubernetes-ng-opnfv-functest-kubernetes-cnf-{tag}-build
212 <<: *functest-kubernetes-ng-params
213 container: functest-kubernetes-cnf
217 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
220 name: functest-kubernetes-ng-opnfv-functest-kubernetes-security-{tag}-build
221 <<: *functest-kubernetes-ng-params
222 container: functest-kubernetes-security
224 path: docker/security
226 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
229 name: functest-kubernetes-ng-opnfv-functest-kubernetes-smoke-{tag}-build
230 <<: *functest-kubernetes-ng-params
231 container: functest-kubernetes-smoke
235 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
238 name: functest-kubernetes-ng-opnfv-functest-kubernetes-benchmarking-{tag}-build
239 <<: *functest-kubernetes-ng-params
240 container: functest-kubernetes-benchmarking
242 path: docker/benchmarking
244 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
247 name: 'functest-kubernetes-ng-{tag}-docker'
248 project-type: multijob
250 - functest-kubernetes-ng-commit
252 - functest-kubernetes-ng-scm:
255 - functest-kubernetes-ng-slave:
257 # PyYAML and yamllint differ here
258 # see https://github.com/yaml/pyyaml/issues/234
259 # yamllint disable rule:indentation
263 - ^functest-kubernetes-ng-{tag}-(daily|docker|review)$
264 # yamllint enable rule:indentation
267 name: remove dependency
269 - name: 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi'
270 <<: *functest-kubernetes-ng-jobs
272 name: pull dependency
274 - name: 'functest-kubernetes-ng-{repo}-{tag}-dep-pull'
275 <<: *functest-kubernetes-ng-jobs
277 name: build opnfv/functest-kubernetes-core
279 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-core-{tag}-build'
280 <<: *functest-kubernetes-ng-jobs
282 name: build containers
284 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-healthcheck-{tag}-build'
285 <<: *functest-kubernetes-ng-jobs
286 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-cnf-{tag}-build'
287 <<: *functest-kubernetes-ng-jobs
288 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-security-{tag}-build'
289 <<: *functest-kubernetes-ng-jobs
291 name: build opnfv/functest-kubernetes-smoke
293 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-smoke-{tag}-build'
294 <<: *functest-kubernetes-ng-jobs
296 name: build opnfv/functest-kubernetes-benchmarking
298 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-benchmarking-{tag}-build'
299 <<: *functest-kubernetes-ng-jobs
302 recipients: cedric.ollivier@orange.com
305 name: functest-kubernetes-ng-trivy
308 sudo apt-get update && sudo DEBIAN_FRONTEND=noninteractive \
309 apt-get install curl -y
311 curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sudo sh -s -- -b .
312 if [ "{repo}" = "_" ]; then
313 image={container}:{tag}
314 elif [ "{port}" = "None" ]; then
315 image={repo}/{container}:{tag}
317 image={repo}:{port}/{container}:{tag}
319 ./trivy --exit-code 1 $image
322 name: 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
326 - functest-kubernetes-ng-slave:
329 - functest-kubernetes-ng-trivy:
330 <<: *functest-kubernetes-ng-containers
333 recipients: cedric.ollivier@orange.com
336 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-core-trivy'
337 <<: *functest-kubernetes-ng-params
338 container: 'functest-kubernetes-core'
340 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
343 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-healthcheck-trivy'
344 <<: *functest-kubernetes-ng-params
345 container: 'functest-kubernetes-healthcheck'
347 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
350 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-cnf-trivy'
351 <<: *functest-kubernetes-ng-params
352 container: 'functest-kubernetes-cnf'
354 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
357 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-security-trivy'
358 <<: *functest-kubernetes-ng-params
359 container: 'functest-kubernetes-security'
361 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
364 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-smoke-trivy'
365 <<: *functest-kubernetes-ng-params
366 container: 'functest-kubernetes-smoke'
368 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
371 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-benchmarking-trivy'
372 <<: *functest-kubernetes-ng-params
373 container: 'functest-kubernetes-benchmarking'
375 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
378 name: 'functest-kubernetes-ng'
379 <<: *functest-kubernetes-ng-params
381 - 'functest-kubernetes-ng-{tag}-docker'
384 name: functest-kubernetes-ng-docker
393 regex: ^functest-kubernetes-ng-[a-z0-9.]+-docker$
396 name: functest-kubernetes-ng-trivy
405 regex: ^functest-kubernetes-ng-[a-z0-9-.]+-trivy$