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
30 buildargs: --build-arg K8S_TAG=1.18
31 from: s/:kali$/:v1.18/g
33 - functest-kubernetes-ng-jobs: &functest-kubernetes-ng-jobs
34 name: 'functest-kubernetes-ng-jobs'
35 current-parameters: true
38 name: functest-kubernetes-ng-slave
44 - functest-kubernetes-ng-build-containers: &functest-kubernetes-ng-build-containers
45 name: 'functest-kubernetes-ng-build-containers'
46 <<: *functest-kubernetes-ng-containers
49 buildargs: '{buildargs}'
53 name: functest-kubernetes-ng-build-containers
57 if [ "{repo}" = "_" ]; then
58 image={container}:{tag}
59 elif [ "{port}" = "None" ]; then
60 image={repo}/{container}:{tag}
62 image={repo}:{port}/{container}:{tag}
65 if [ "{buildargs}" != "None" ]; then
66 build_args="{buildargs}"
68 if [ "{ref_arg}" != "None" ]; then
69 build_args="$build_args --build-arg {ref_arg}={ref}"
72 if [ "{from}" != "None" ]; then
73 sed -i {from} Dockerfile
75 sudo docker build $build_args \
76 --pull=false --no-cache --force-rm=true \
80 name: functest-kubernetes-ng-scm
83 url: 'https://gerrit.opnfv.org/gerrit/functest-kubernetes'
84 refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
88 - functest-kubernetes-ng-dep: &functest-kubernetes-ng-dep
89 name: 'functest-kubernetes-ng-containers'
93 dependency: '{dependency}'
96 name: functest-kubernetes-ng-pull-dep-images
100 if [ "_" = "_" ]; then
101 image=alpine:{dependency}
102 elif [ "None" = "None" ]; then
103 image=_/alpine:{dependency}
105 image=_:/alpine:{dependency}
107 sudo docker pull $image || true
110 name: functest-kubernetes-ng-remove-dep-images
114 if [ "_" = "_" ]; then
115 image=alpine:{dependency}
116 elif [ "" = "None" ]; then
117 image=_/alpine:{dependency}
119 image=_:/alpine:{dependency}
121 sudo docker rmi $image || true
124 name: 'functest-kubernetes-ng-{repo}-{tag}-dep-pull'
126 - functest-kubernetes-ng-slave:
129 - functest-kubernetes-ng-pull-dep-images:
130 <<: *functest-kubernetes-ng-dep
133 name: 'functest-kubernetes-ng-{repo}-{tag}-dep-pull'
134 <<: *functest-kubernetes-ng-params
136 - 'functest-kubernetes-ng-{repo}-{tag}-dep-pull'
139 name: 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi'
141 - functest-kubernetes-ng-slave:
144 - functest-kubernetes-ng-remove-dep-images:
145 <<: *functest-kubernetes-ng-dep
148 name: 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi'
149 <<: *functest-kubernetes-ng-params
151 - 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi'
154 name: functest-kubernetes-ng-push-containers
158 if [ "{repo}" = "_" ]; then
159 image={container}:{tag}
160 elif [ "{port}" = "None" ]; then
161 image={repo}/{container}:{tag}
163 image={repo}:{port}/{container}:{tag}
165 sudo docker push $image
168 name: functest-kubernetes-ng-commit
174 name: 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
176 - functest-kubernetes-ng-slave:
179 - functest-kubernetes-ng-scm:
182 - functest-kubernetes-ng-build-containers:
183 <<: *functest-kubernetes-ng-build-containers
185 buildargs: '{buildargs}'
186 - functest-kubernetes-ng-push-containers:
187 <<: *functest-kubernetes-ng-build-containers
191 name: functest-kubernetes-ng-opnfv-functest-kubernetes-core-{tag}-build
192 <<: *functest-kubernetes-ng-params
193 container: functest-kubernetes-core
197 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
200 name: functest-kubernetes-ng-opnfv-functest-kubernetes-healthcheck-{tag}-build
201 <<: *functest-kubernetes-ng-params
202 container: functest-kubernetes-healthcheck
204 path: docker/healthcheck
206 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
209 name: functest-kubernetes-ng-opnfv-functest-kubernetes-cnf-{tag}-build
210 <<: *functest-kubernetes-ng-params
211 container: functest-kubernetes-cnf
215 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
218 name: functest-kubernetes-ng-opnfv-functest-kubernetes-security-{tag}-build
219 <<: *functest-kubernetes-ng-params
220 container: functest-kubernetes-security
222 path: docker/security
224 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
227 name: functest-kubernetes-ng-opnfv-functest-kubernetes-smoke-{tag}-build
228 <<: *functest-kubernetes-ng-params
229 container: functest-kubernetes-smoke
233 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
236 name: functest-kubernetes-ng-opnfv-functest-kubernetes-benchmarking-{tag}-build
237 <<: *functest-kubernetes-ng-params
238 container: functest-kubernetes-benchmarking
240 path: docker/benchmarking
242 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build'
245 name: 'functest-kubernetes-ng-{tag}-docker'
246 project-type: multijob
248 - functest-kubernetes-ng-commit
250 - functest-kubernetes-ng-scm:
253 - functest-kubernetes-ng-slave:
255 # PyYAML and yamllint differ here
256 # see https://github.com/yaml/pyyaml/issues/234
257 # yamllint disable rule:indentation
261 - ^functest-kubernetes-ng-{tag}-(daily|docker|review)$
262 # yamllint enable rule:indentation
265 name: remove dependency
267 - name: 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi'
268 <<: *functest-kubernetes-ng-jobs
270 name: pull dependency
272 - name: 'functest-kubernetes-ng-{repo}-{tag}-dep-pull'
273 <<: *functest-kubernetes-ng-jobs
275 name: build opnfv/functest-kubernetes-core
277 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-core-{tag}-build'
278 <<: *functest-kubernetes-ng-jobs
280 name: build containers
282 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-healthcheck-{tag}-build'
283 <<: *functest-kubernetes-ng-jobs
284 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-cnf-{tag}-build'
285 <<: *functest-kubernetes-ng-jobs
286 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-security-{tag}-build'
287 <<: *functest-kubernetes-ng-jobs
289 name: build opnfv/functest-kubernetes-smoke
291 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-smoke-{tag}-build'
292 <<: *functest-kubernetes-ng-jobs
294 name: build opnfv/functest-kubernetes-benchmarking
296 - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-benchmarking-{tag}-build'
297 <<: *functest-kubernetes-ng-jobs
300 name: functest-kubernetes-ng-trivy
303 sudo apt-get update && sudo DEBIAN_FRONTEND=noninteractive \
304 apt-get install curl -y
306 curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sudo sh -s -- -b .
307 if [ "{repo}" = "_" ]; then
308 image={container}:{tag}
309 elif [ "{port}" = "None" ]; then
310 image={repo}/{container}:{tag}
312 image={repo}:{port}/{container}:{tag}
314 ./trivy --exit-code 1 $image
317 name: 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
321 - functest-kubernetes-ng-slave:
324 - functest-kubernetes-ng-trivy:
325 <<: *functest-kubernetes-ng-containers
328 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-core-trivy'
329 <<: *functest-kubernetes-ng-params
330 container: 'functest-kubernetes-core'
332 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
335 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-healthcheck-trivy'
336 <<: *functest-kubernetes-ng-params
337 container: 'functest-kubernetes-healthcheck'
339 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
342 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-cnf-trivy'
343 <<: *functest-kubernetes-ng-params
344 container: 'functest-kubernetes-cnf'
346 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
349 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-security-trivy'
350 <<: *functest-kubernetes-ng-params
351 container: 'functest-kubernetes-security'
353 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
356 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-smoke-trivy'
357 <<: *functest-kubernetes-ng-params
358 container: 'functest-kubernetes-smoke'
360 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
363 name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-benchmarking-trivy'
364 <<: *functest-kubernetes-ng-params
365 container: 'functest-kubernetes-benchmarking'
367 - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy'
370 name: 'functest-kubernetes-ng'
371 <<: *functest-kubernetes-ng-params
373 - 'functest-kubernetes-ng-{tag}-docker'
376 name: functest-kubernetes-ng-docker
385 regex: ^functest-kubernetes-ng-[a-z0-9.]+-docker$
388 name: functest-kubernetes-ng-trivy
397 regex: ^functest-kubernetes-ng-[a-z0-9-.]+-trivy$