---
-- functest-jobs: &functest-jobs
- name: 'functest-jobs'
- current-parameters: true
+- functest-containers: &functest-containers
+ name: 'functest-containers'
+ repo: '{repo}'
+ port: '{port}'
+ container: '{container}'
+ tag: '{tag}'
- functest-params: &functest-params
name: 'functest-params'
- latest:
branch: master
slave: lf-virtual9
- dashboard_url: http://172.30.13.94
+ DASHBOARD_URL: http://172.30.13.94
dependency: 3.13
- leguer:
branch: stable/leguer
slave: lf-virtual9
- dashboard_url: http://172.30.13.94
+ DASHBOARD_URL: http://172.30.13.94
dependency: 3.12
- kali:
branch: stable/kali
slave: lf-pod4-3
- dashboard_url: http://172.30.12.88
+ DASHBOARD_URL: http://172.30.12.88
dependency: 3.11
- jerma:
branch: stable/jerma
slave: lf-pod4
- dashboard_url: http://172.30.12.83
+ DASHBOARD_URL: http://172.30.12.83
dependency: 3.10
- iruya:
branch: stable/iruya
slave: lf-virtual4
- dashboard_url: http://172.30.13.89
+ DASHBOARD_URL: http://172.30.13.89
dependency: 3.9
- hunter:
branch: stable/hunter
slave: lf-virtual6
- dashboard_url: http://172.30.13.91
+ DASHBOARD_URL: http://172.30.13.91
dependency: 3.9
+- functest-jobs: &functest-jobs
+ name: 'functest-jobs'
+ current-parameters: true
+
- parameter:
name: functest-slave
parameters:
name: IMAGE_PROPERTIES
default: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
-- functest-containers: &functest-containers
- name: 'functest-containers'
- repo: '{repo}'
- port: '{port}'
- container: '{container}'
- tag: '{tag}'
-
- functest-run-containers: &functest-run-containers
name: 'functest-run-containers'
<<: *functest-containers
test: '{test}'
privileged: '{privileged}'
network: '{network}'
+ DASHBOARD_URL: '{DASHBOARD_URL}'
- builder:
name: functest-pull-containers
-e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
-e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
-e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
+ -e DASHBOARD_URL={DASHBOARD_URL} \
-v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
-v /home/opnfv/functest/images:/home/opnfv/functest/images \
$image run_tests -t {test} -p -r
fi
sudo docker rmi $image || true
-- functest-build-containers: &functest-build-containers
- name: 'functest-build-containers'
- <<: *functest-containers
- ref_arg: '{ref_arg}'
- path: '{path}'
-
-- builder:
- name: functest-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-scm
- scm:
- - git:
- url: 'https://gerrit.opnfv.org/gerrit/functest'
- refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
- branches:
- - '{ref}'
-
- job-template:
name: 'functest-{repo}-{container}-{tag}-pull'
parameters:
builders:
- shell: |
set +x
+ [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
if [ "{repo}" = "_" ]; then
image={container}:{tag}
elif [ "{port}" = "None" ]; then
- name: 'functest-{tag}-zip'
<<: *functest-jobs
+- project:
+ name: 'functest-daily'
+ <<: *functest-params
+ jobs:
+ - 'functest-{tag}-daily'
+
+- view:
+ name: functest
+ view-type: list
+ columns:
+ - status
+ - weather
+ - job
+ - last-success
+ - last-failure
+ - last-duration
+ regex: ^functest-[a-z0-9]+-daily$
+
+- functest-build-containers: &functest-build-containers
+ name: 'functest-build-containers'
+ <<: *functest-containers
+ ref_arg: '{ref_arg}'
+ path: '{path}'
+
+- builder:
+ name: functest-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-scm
+ scm:
+ - git:
+ url: 'https://gerrit.opnfv.org/gerrit/functest'
+ refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
+ branches:
+ - '{ref}'
+
- functest-dep: &functest-dep
name: 'functest-containers'
repo: '{repo}'
jobs:
- 'functest-{repo}-{container}-{tag}-gate'
+- project:
+ name: functest-opnfv-functest-tempest-{tag}-gate
+ <<: *functest-params
+ container: functest-tempest
+ ref_arg: BRANCH
+ path: docker/tempest
+ exclude:
+ - {'tag': 'latest'}
+ - {'tag': 'leguer'}
+ - {'tag': 'kali'}
+ - {'tag': 'jerma'}
+ jobs:
+ - 'functest-{repo}-{container}-{tag}-gate'
+
- project:
name: functest-opnfv-functest-healthcheck-{tag}-gate
<<: *functest-params
projects:
- name: 'functest-opnfv-functest-core-{tag}-gate'
<<: *functest-jobs
+ - multijob:
+ name: build opnfv/functest-tempest
+ projects:
+ - name: 'functest-opnfv-functest-tempest-{tag}-gate'
+ <<: *functest-jobs
- multijob:
name: build containers
projects:
- name: 'functest-opnfv-functest-vnf-{tag}-juju_epc-run'
<<: *functest-jobs
+- project:
+ name: 'functest-review'
+ <<: *functest-params
+ jobs:
+ - 'functest-{tag}-review'
+
+- view:
+ name: functest-review
+ view-type: list
+ columns:
+ - status
+ - weather
+ - job
+ - last-success
+ - last-failure
+ - last-duration
+ regex: ^functest-[a-z0-9]+-review$
+
+- view:
+ name: functest-tox
+ view-type: list
+ columns:
+ - status
+ - weather
+ - job
+ - last-success
+ - last-failure
+ - last-duration
+ regex: ^functest-[a-z0-9]+-tox$
+
- builder:
name: functest-push-containers
builders:
jobs:
- 'functest-{repo}-{container}-{tag}-build'
+- project:
+ name: functest-opnfv-functest-tempest-{tag}-build
+ <<: *functest-params
+ container: functest-tempest
+ ref_arg: BRANCH
+ path: docker/tempest
+ exclude:
+ - {'tag': 'latest'}
+ - {'tag': 'leguer'}
+ - {'tag': 'kali'}
+ - {'tag': 'jerma'}
+ jobs:
+ - 'functest-{repo}-{container}-{tag}-build'
+
- project:
name: functest-opnfv-functest-healthcheck-{tag}-build
<<: *functest-params
projects:
- name: 'functest-opnfv-functest-core-{tag}-build'
<<: *functest-jobs
+ - multijob:
+ name: build opnfv/functest-tempest
+ projects:
+ - name: 'functest-opnfv-functest-tempest-{tag}-build'
+ <<: *functest-jobs
- multijob:
name: build containers
projects:
name: 'functest'
<<: *functest-params
jobs:
- - 'functest-{tag}-daily'
- - 'functest-{tag}-review'
- 'functest-{tag}-docker'
-
-- view:
- name: functest
- view-type: list
- columns:
- - status
- - weather
- - job
- - last-success
- - last-failure
- - last-duration
- regex: ^functest-[a-z]+-daily$
-
-- view:
- name: functest-review
- view-type: list
- columns:
- - status
- - weather
- - job
- - last-success
- - last-failure
- - last-duration
- regex: ^functest-[a-z]+-review$
-
-- view:
- name: functest-tox
- view-type: list
- columns:
- - status
- - weather
- - job
- - last-success
- - last-failure
- - last-duration
- regex: ^functest-[a-z]+-tox$
-
- view:
name: functest-docker
view-type: list
- last-success
- last-failure
- last-duration
- regex: ^functest-[a-z]+-docker$
+ regex: ^functest-[a-z0-9]+-docker$
- view:
name: functest-trivy
- last-success
- last-failure
- last-duration
- regex: ^functest-[a-z-]+-trivy$
+ regex: (?!functest-kubernetes)(?!functest-pi)^functest-[a-z-0-9]+-trivy$