From 2ad3aefc27a60b40acfbcbd248a208bcc58422fe Mon Sep 17 00:00:00 2001 From: =?utf8?q?C=C3=A9dric=20Ollivier?= Date: Sun, 14 Feb 2021 15:15:11 +0100 Subject: [PATCH] Publish new Functest K8s builds MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Change-Id: Ifca7bbc9eb74c51aaf217580aaa3e904e6af6c39 Signed-off-by: Cédric Ollivier --- jjb/functest/functest-kubernetes-ng.yaml | 381 +++++++++++++++++++++++++++++++ jjb/functest/functest-kubernetes-pi.yaml | 2 +- jjb/functest/functest-kubernetes.yaml | 10 +- jjb/functest/functest-pi.yaml | 2 +- jjb/functest/functest.yaml | 10 +- jjb/functest/xtesting-pi.yaml | 2 +- jjb/functest/xtesting.yaml | 10 +- 7 files changed, 399 insertions(+), 18 deletions(-) create mode 100644 jjb/functest/functest-kubernetes-ng.yaml diff --git a/jjb/functest/functest-kubernetes-ng.yaml b/jjb/functest/functest-kubernetes-ng.yaml new file mode 100644 index 000000000..7946f4300 --- /dev/null +++ b/jjb/functest/functest-kubernetes-ng.yaml @@ -0,0 +1,381 @@ +--- +- functest-kubernetes-ng-containers: &functest-kubernetes-ng-containers + name: 'functest-kubernetes-ng-containers' + repo: '{repo}' + port: '{port}' + container: '{container}' + tag: '{tag}' + +- functest-kubernetes-ng-params: &functest-kubernetes-ng-params + name: 'functest-kubernetes-ng-params' + repo: 'opnfv' + port: + tag: + - v1.20: + branch: stable/leguer + slave: lf-virtual1 + dependency: 3.12 + docker_args: [{'K8S_TAG': '1.20'}] + - v1.19: + branch: stable/kali + slave: lf-virtual1 + dependency: 3.11 + docker_args: [] + - v1.18: + branch: stable/kali + slave: lf-virtual1 + dependency: 3.11 + docker_args: [{'K8S_TAG': '1.18'}] + - v1.17: + branch: stable/jerma + slave: lf-virtual1 + dependency: 3.10 + docker_args: [] + - v1.16: + branch: stable/jerma + slave: lf-virtual1 + dependency: 3.10 + docker_args: [{'K8S_TAG': '1.16'}] + - v1.15: + branch: stable/iruya + slave: lf-virtual1 + dependency: 3.10 + docker_args: [] + - v1.14: + branch: stable/iruya + slave: lf-virtual1 + dependency: 3.10 + docker_args: [{'K8S_TAG': '1.14'}] + - v1.13: + branch: stable/hunter + slave: lf-virtual1 + dependency: 3.9 + docker_args: [] + +- functest-kubernetes-ng-jobs: &functest-kubernetes-ng-jobs + name: 'functest-kubernetes-ng-jobs' + current-parameters: true + +- parameter: + name: functest-kubernetes-ng-slave + parameters: + - label: + name: slave + default: '{slave}' + + +- functest-kubernetes-ng-build-containers: &functest-kubernetes-ng-build-containers + name: 'functest-kubernetes-ng-build-containers' + <<: *functest-kubernetes-ng-containers + ref_arg: '{ref_arg}' + path: '{path}' + +- builder: + name: functest-kubernetes-ng-build-containers + builders: + - shell: | + set +x + if [ "{repo}" = "_" ]; then + image={container}:{tag} + elif [ "{port}" = "None" ]; then + image={repo}/{container}:{tag} + else + image={repo}:{port}/{container}:{tag} + fi + if [ "{ref_arg}" = "None" ]; then + build_arg="" + else + build_arg="--build-arg {ref_arg}={ref}" + fi + cd {path} + sudo docker build $build_arg \ + --pull=false --no-cache --force-rm=true \ + -t $image . + +- scm: + name: functest-kubernetes-ng-scm + scm: + - git: + url: 'https://gerrit.opnfv.org/gerrit/functest-kubernetes' + refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*' + branches: + - '{ref}' + +- functest-kubernetes-ng-dep: &functest-kubernetes-ng-dep + name: 'functest-kubernetes-ng-containers' + repo: '{repo}' + port: '{port}' + tag: '{tag}' + dependency: '{dependency}' + +- builder: + name: functest-kubernetes-ng-pull-dep-images + builders: + - shell: | + set +x + if [ "_" = "_" ]; then + image=alpine:{dependency} + elif [ "_" = "None" ]; then + image=_/alpine:{dependency} + else + image=_:/alpine{dependency} + fi + sudo docker pull $image || true + +- builder: + name: functest-kubernetes-ng-remove-dep-images + builders: + - shell: | + set +x + if [ "_" = "_" ]; then + image=alpine:{dependency} + elif [ "_" = "None" ]; then + image=_/alpine:{dependency} + else + image=_:/alpine{dependency} + fi + sudo docker rmi $image || true + +- job-template: + name: 'functest-kubernetes-ng-{repo}-{tag}-dep-pull' + parameters: + - functest-kubernetes-ng-slave: + slave: '{slave}' + builders: + - functest-kubernetes-ng-pull-dep-images: + <<: *functest-kubernetes-ng-dep + +- project: + name: 'functest-kubernetes-ng-{repo}-{tag}-dep-pull' + <<: *functest-kubernetes-ng-params + jobs: + - 'functest-kubernetes-ng-{repo}-{tag}-dep-pull' + +- job-template: + name: 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi' + parameters: + - functest-kubernetes-ng-slave: + slave: '{slave}' + builders: + - functest-kubernetes-ng-remove-dep-images: + <<: *functest-kubernetes-ng-dep + +- project: + name: 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi' + <<: *functest-kubernetes-ng-params + jobs: + - 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi' + + +- builder: + name: functest-kubernetes-ng-push-containers + builders: + - shell: | + set +x + if [ "{repo}" = "_" ]; then + image={container}:{tag} + elif [ "{port}" = "None" ]; then + image={repo}/{container}:{tag} + else + image={repo}:{port}/{container}:{tag} + fi + sudo docker push $image + +- trigger: + name: functest-kubernetes-ng-commit + triggers: + - pollscm: + cron: "*/30 * * * *" + +- job-template: + name: 'functest-kubernetes-ng-{repo}-{container}-{tag}-build' + parameters: + - functest-kubernetes-ng-slave: + slave: '{slave}' + scm: + - functest-kubernetes-ng-scm: + ref: '{branch}' + builders: + - functest-kubernetes-ng-build-containers: + <<: *functest-kubernetes-ng-build-containers + ref: '{branch}' + - functest-kubernetes-ng-push-containers: + <<: *functest-kubernetes-ng-build-containers + ref: '{branch}' + +- project: + name: functest-kubernetes-ng-opnfv-functest-kubernetes-core-{tag}-build + <<: *functest-kubernetes-ng-params + container: functest-kubernetes-core + ref_arg: BRANCH + path: docker/core + jobs: + - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build' + +- project: + name: functest-kubernetes-ng-opnfv-functest-kubernetes-healthcheck-{tag}-build + <<: *functest-kubernetes-ng-params + container: functest-kubernetes-healthcheck + ref_arg: + path: docker/healthcheck + jobs: + - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build' + +- project: + name: functest-kubernetes-ng-opnfv-functest-kubernetes-cnf-{tag}-build + <<: *functest-kubernetes-ng-params + container: functest-kubernetes-cnf + ref_arg: BRANCH + path: docker/cnf + jobs: + - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build' + +- project: + name: functest-kubernetes-ng-opnfv-functest-kubernetes-security-{tag}-build + <<: *functest-kubernetes-ng-params + container: functest-kubernetes-security + ref_arg: BRANCH + path: docker/security + jobs: + - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build' + +- project: + name: functest-kubernetes-ng-opnfv-functest-kubernetes-smoke-{tag}-build + <<: *functest-kubernetes-ng-params + container: functest-kubernetes-smoke + ref_arg: + path: docker/smoke + jobs: + - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build' + +- project: + name: functest-kubernetes-ng-opnfv-functest-kubernetes-benchmarking-{tag}-build + <<: *functest-kubernetes-ng-params + container: functest-kubernetes-benchmarking + ref_arg: + path: docker/benchmarking + jobs: + - 'functest-kubernetes-ng-{repo}-{container}-{tag}-build' + + +- job-template: + name: 'functest-kubernetes-ng-{tag}-docker' + project-type: multijob + triggers: + - functest-kubernetes-ng-commit + scm: + - functest-kubernetes-ng-scm: + ref: '{branch}' + parameters: + - functest-kubernetes-ng-slave: + slave: '{slave}' + properties: + - build-blocker: + use-build-blocker: true + blocking-level: 'NODE' + blocking-jobs: + - '^functest-kubernetes-ng-{tag}-(daily|docker|review)$' + builders: + - multijob: + name: remove dependency + projects: + - name: 'functest-kubernetes-ng-{repo}-{tag}-dep-rmi' + <<: *functest-kubernetes-ng-jobs + - multijob: + name: pull dependency + projects: + - name: 'functest-kubernetes-ng-{repo}-{tag}-dep-pull' + <<: *functest-kubernetes-ng-jobs + - multijob: + name: build opnfv/functest-kubernetes-core + projects: + - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-core-{tag}-build' + <<: *functest-kubernetes-ng-jobs + - multijob: + name: build containers + projects: + - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-healthcheck-{tag}-build' + <<: *functest-kubernetes-ng-jobs + - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-cnf-{tag}-build' + <<: *functest-kubernetes-ng-jobs + - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-security-{tag}-build' + <<: *functest-kubernetes-ng-jobs + - multijob: + name: build opnfv/functest-kubernetes-smoke + projects: + - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-smoke-{tag}-build' + <<: *functest-kubernetes-ng-jobs + - multijob: + name: build opnfv/functest-kubernetes-benchmarking + projects: + - name: 'functest-kubernetes-ng-opnfv-functest-kubernetes-benchmarking-{tag}-build' + <<: *functest-kubernetes-ng-jobs + +- builder: + name: functest-kubernetes-ng-trivy + builders: + - shell: | + sudo apt-get update && sudo apt-get install curl -y + curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sudo sh -s -- -b . + if [ "{repo}" = "_" ]; then + image={container}:{tag} + elif [ "{port}" = "None" ]; then + image={repo}/{container}:{tag} + else + image={repo}:{port}/{container}:{tag} + fi + ./trivy --exit-code 1 $image + +- job-template: + name: 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy' + triggers: + - timed: '@daily' + parameters: + - functest-kubernetes-ng-slave: + slave: '{slave}' + builders: + - functest-kubernetes-ng-trivy: + <<: *functest-kubernetes-ng-containers + +- project: + name: 'functest-kubernetes-ng-opnfv-xtesting-trivy' + <<: *functest-kubernetes-ng-params + container: 'xtesting' + jobs: + - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy' +- project: + name: 'functest-kubernetes-ng-opnfv-xtesting-mts-trivy' + <<: *functest-kubernetes-ng-params + container: 'xtesting-mts' + jobs: + - 'functest-kubernetes-ng-{repo}-{container}-{tag}-trivy' + +- project: + name: 'functest-kubernetes-ng' + <<: *functest-kubernetes-ng-params + jobs: + - 'functest-kubernetes-ng-{tag}-docker' + +- view: + name: functest-kubernetes-ng-docker + view-type: list + columns: + - status + - weather + - job + - last-success + - last-failure + - last-duration + regex: ^functest-kubernetes-ng-[a-z0-9.]+-docker$ + +- view: + name: functest-kubernetes-ng-trivy + view-type: list + columns: + - status + - weather + - job + - last-success + - last-failure + - last-duration + regex: ^functest-kubernetes-ng-[a-z0-9-.]+-trivy$ diff --git a/jjb/functest/functest-kubernetes-pi.yaml b/jjb/functest/functest-kubernetes-pi.yaml index b4100a26d..803e74eff 100644 --- a/jjb/functest/functest-kubernetes-pi.yaml +++ b/jjb/functest/functest-kubernetes-pi.yaml @@ -504,4 +504,4 @@ - last-success - last-failure - last-duration - regex: ^functest-kubernetes-pi-[a-z-0-9]+-daily$ + regex: ^functest-kubernetes-pi-[a-z-0-9.]+-daily$ diff --git a/jjb/functest/functest-kubernetes.yaml b/jjb/functest/functest-kubernetes.yaml index faa3a6dff..6514397df 100644 --- a/jjb/functest/functest-kubernetes.yaml +++ b/jjb/functest/functest-kubernetes.yaml @@ -462,7 +462,7 @@ - last-success - last-failure - last-duration - regex: ^functest-kubernetes-[a-z0-9]+-daily$ + regex: ^functest-kubernetes-[a-z0-9.]+-daily$ - functest-kubernetes-build-containers: &functest-kubernetes-build-containers name: 'functest-kubernetes-build-containers' @@ -812,7 +812,7 @@ - last-success - last-failure - last-duration - regex: ^functest-kubernetes-[a-z0-9]+-review$ + regex: ^functest-kubernetes-[a-z0-9.]+-review$ - view: name: functest-kubernetes-tox @@ -824,7 +824,7 @@ - last-success - last-failure - last-duration - regex: ^functest-kubernetes-[a-z0-9]+-tox$ + regex: ^functest-kubernetes-[a-z0-9.]+-tox$ - builder: name: functest-kubernetes-push-containers @@ -1043,7 +1043,7 @@ - last-success - last-failure - last-duration - regex: ^functest-kubernetes-[a-z0-9]+-docker$ + regex: ^functest-kubernetes-[a-z0-9.]+-docker$ - view: name: functest-kubernetes-trivy @@ -1055,4 +1055,4 @@ - last-success - last-failure - last-duration - regex: (?!functest-kubernetes-pi)^functest-kubernetes-[a-z-0-9]+-trivy$ + regex: (?!functest-kubernetes-pi)^functest-kubernetes-[a-z-0-9.]+-trivy$ diff --git a/jjb/functest/functest-pi.yaml b/jjb/functest/functest-pi.yaml index cd47047f9..78635d7c8 100644 --- a/jjb/functest/functest-pi.yaml +++ b/jjb/functest/functest-pi.yaml @@ -765,4 +765,4 @@ - last-success - last-failure - last-duration - regex: ^functest-pi-[a-z-0-9]+-daily$ + regex: ^functest-pi-[a-z-0-9.]+-daily$ diff --git a/jjb/functest/functest.yaml b/jjb/functest/functest.yaml index 8fa1b00f6..fa416c9e7 100644 --- a/jjb/functest/functest.yaml +++ b/jjb/functest/functest.yaml @@ -671,7 +671,7 @@ - last-success - last-failure - last-duration - regex: ^functest-[a-z0-9]+-daily$ + regex: ^functest-[a-z0-9.]+-daily$ - functest-build-containers: &functest-build-containers name: 'functest-build-containers' @@ -1137,7 +1137,7 @@ - last-success - last-failure - last-duration - regex: ^functest-[a-z0-9]+-review$ + regex: ^functest-[a-z0-9.]+-review$ - view: name: functest-tox @@ -1149,7 +1149,7 @@ - last-success - last-failure - last-duration - regex: ^functest-[a-z0-9]+-tox$ + regex: ^functest-[a-z0-9.]+-tox$ - builder: name: functest-push-containers @@ -1401,7 +1401,7 @@ - last-success - last-failure - last-duration - regex: ^functest-[a-z0-9]+-docker$ + regex: ^functest-[a-z0-9.]+-docker$ - view: name: functest-trivy @@ -1413,4 +1413,4 @@ - last-success - last-failure - last-duration - regex: (?!functest-kubernetes)(?!functest-pi)^functest-[a-z-0-9]+-trivy$ + regex: (?!functest-kubernetes)(?!functest-pi)^functest-[a-z-0-9.]+-trivy$ diff --git a/jjb/functest/xtesting-pi.yaml b/jjb/functest/xtesting-pi.yaml index 2ed3d00be..f07a10581 100644 --- a/jjb/functest/xtesting-pi.yaml +++ b/jjb/functest/xtesting-pi.yaml @@ -328,4 +328,4 @@ - last-success - last-failure - last-duration - regex: ^xtesting-pi-[a-z-0-9]+-daily$ + regex: ^xtesting-pi-[a-z-0-9.]+-daily$ diff --git a/jjb/functest/xtesting.yaml b/jjb/functest/xtesting.yaml index d581bb9d4..6678b7443 100644 --- a/jjb/functest/xtesting.yaml +++ b/jjb/functest/xtesting.yaml @@ -316,7 +316,7 @@ - last-success - last-failure - last-duration - regex: ^xtesting-[a-z0-9]+-daily$ + regex: ^xtesting-[a-z0-9.]+-daily$ - xtesting-build-containers: &xtesting-build-containers name: 'xtesting-build-containers' @@ -585,7 +585,7 @@ - last-success - last-failure - last-duration - regex: ^xtesting-[a-z0-9]+-review$ + regex: ^xtesting-[a-z0-9.]+-review$ - view: name: xtesting-tox @@ -597,7 +597,7 @@ - last-success - last-failure - last-duration - regex: ^xtesting-[a-z0-9]+-tox$ + regex: ^xtesting-[a-z0-9.]+-tox$ - builder: name: xtesting-push-containers @@ -748,7 +748,7 @@ - last-success - last-failure - last-duration - regex: ^xtesting-[a-z0-9]+-docker$ + regex: ^xtesting-[a-z0-9.]+-docker$ - view: name: xtesting-trivy @@ -760,4 +760,4 @@ - last-success - last-failure - last-duration - regex: (?!xtesting-pi)^xtesting-[a-z-0-9]+-trivy$ + regex: (?!xtesting-pi)^xtesting-[a-z-0-9.]+-trivy$ -- 2.16.6