branch: stable/hunter
slave: lf-virtual6
dashboard_url: http://172.30.13.91
+ - arm64-latest:
+ branch: master
+ slave: lf-virtual9
+ dashboard_url: http://172.30.13.94
+ - arm64-kali:
+ branch: stable/kali
+ slave: lf-pod4-3
+ dashboard_url: http://172.30.12.88
+ - arm64-jerma:
+ branch: stable/jerma
+ slave: lf-pod4
+ dashboard_url: http://172.30.12.83
+ - arm64-iruya:
+ branch: stable/iruya
+ slave: lf-virtual4
+ dashboard_url: http://172.30.13.89
+ - arm64-hunter:
+ branch: stable/hunter
+ slave: lf-virtual6
+ dashboard_url: http://172.30.13.91
- parameter:
name: functest-slave
name: EXTERNAL_NETWORK
default: public
+- parameter:
+ name: functest-VOLUME_DEVICE_NAME
+ parameters:
+ - string:
+ name: VOLUME_DEVICE_NAME
+ default: sdb
+
+- parameter:
+ name: functest-IMAGE_PROPERTIES
+ parameters:
+ - string:
+ name: IMAGE_PROPERTIES
+ default: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
+
- functest-containers: &functest-containers
name: 'functest-containers'
repo: '{repo}'
<<: *functest-containers
test: '{test}'
dashboard_url: '{dashboard_url}'
-
-- functest-build-containers: &functest-build-containers
- name: 'functest-build-containers'
- <<: *functest-containers
- ref_arg: '{ref_arg}'
- path: '{path}'
+ privileged: '{privileged}'
+ network: '{network}'
- builder:
name: functest-pull-containers
fi
sudo docker pull $image
-- 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 .
-
- builder:
name: functest-run-containers
builders:
else
image={repo}:{port}/{container}:{tag}
fi
+ volumes=""
+ case "{tag}" in
+ arm-hunter)
+ volumes="-v /usr/bin/qemu-arm-static:/usr/bin/qemu-arm-static" ;;
+ arm64-hunter)
+ volumes="-v /usr/bin/qemu-aarch64-static:/usr/bin/qemu-aarch64-static" ;;
+ esac
sudo docker run --rm \
+ --privileged={privileged} \
+ --network={network} \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e HTTP_DST_URL=http://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
-e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
+ -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
-e NODE_NAME=$slave \
-e BUILD_TAG=$BUILD_TAG \
-v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
-e DEBUG=$DEBUG \
-e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
-e DASHBOARD_URL={dashboard_url} \
- -e VOLUME_DEVICE_NAME=sdb \
- -e IMAGE_PROPERTIES=hw_scsi_model:virtio-scsi,hw_disk_bus:scsi \
+ -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
+ -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
+ -v /home/opnfv/functest/.boto:/root/.boto \
-v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
-v /home/opnfv/functest/images:/home/opnfv/functest/images \
- -v /home/opnfv/functest/.boto:/root/.boto \
- $image run_tests -t {test} -r -p
+ $volumes $image run_tests -t {test} -r -p
- builder:
name: functest-remove-images
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:
DEBUG: 'true'
- functest-EXTERNAL_NETWORK:
EXTERNAL_NETWORK: public
+ - functest-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
builders:
- functest-run-containers:
<<: *functest-run-containers
- odl
- tempest_smoke
- tempest_horizon
+ privileged: 'false'
+ network: bridge
jobs:
- 'functest-{repo}-{container}-{tag}-{test}-run'
- patrole_admin
- patrole_member
- patrole_reader
- - neutron_trunk
- networking-bgpvpn
- networking-sfc
- tempest_barbican
- tempest_octavia
+ - tempest_cyborg
exclude:
- tag: latest
test: refstack_defcore
- - tag: latest
- test: neutron_trunk
- tag: latest
test: networking-bgpvpn
- tag: latest
test: patrole
- tag: kali
test: refstack_defcore
- - tag: kali
- test: neutron_trunk
- tag: kali
test: networking-bgpvpn
- tag: kali
test: patrole_reader
- tag: jerma
test: refstack_defcore
- - tag: jerma
- test: neutron_trunk
- tag: jerma
test: networking-bgpvpn
- tag: jerma
test: patrole_member
- tag: jerma
test: patrole_reader
+ - tag: jerma
+ test: tempest_cyborg
- tag: iruya
test: refstack_defcore
- - tag: iruya
- test: neutron_trunk
- tag: iruya
test: patrole_admin
- tag: iruya
test: patrole_member
- tag: iruya
test: patrole_reader
+ - tag: iruya
+ test: tempest_cyborg
- tag: hunter
test: refstack_compute
- tag: hunter
test: refstack_platform
- tag: hunter
test: tempest_octavia
- - tag: hunter
- test: neutron_trunk
- tag: hunter
test: tempest_telemetry
- tag: hunter
test: patrole_member
- tag: hunter
test: patrole_reader
+ - tag: hunter
+ test: tempest_cyborg
+ - tag: arm64-latest
+ test: refstack_defcore
+ - tag: arm64-latest
+ test: networking-bgpvpn
+ - tag: arm64-latest
+ test: networking-sfc
+ - tag: arm64-latest
+ test: patrole
+ - tag: arm64-kali
+ test: refstack_defcore
+ - tag: arm64-kali
+ test: networking-bgpvpn
+ - tag: arm64-kali
+ test: networking-sfc
+ - tag: arm64-kali
+ test: patrole_admin
+ - tag: arm64-kali
+ test: patrole_member
+ - tag: arm64-kali
+ test: patrole_reader
+ - tag: arm64-jerma
+ test: refstack_defcore
+ - tag: arm64-jerma
+ test: networking-bgpvpn
+ - tag: arm64-jerma
+ test: networking-sfc
+ - tag: arm64-jerma
+ test: patrole_admin
+ - tag: arm64-jerma
+ test: patrole_member
+ - tag: arm64-jerma
+ test: patrole_reader
+ - tag: arm64-jerma
+ test: tempest_cyborg
+ - tag: arm64-iruya
+ test: refstack_defcore
+ - tag: arm64-iruya
+ test: patrole_admin
+ - tag: arm64-iruya
+ test: patrole_member
+ - tag: arm64-iruya
+ test: patrole_reader
+ - tag: arm64-iruya
+ test: tempest_cyborg
+ - tag: arm64-hunter
+ test: refstack_compute
+ - tag: arm64-hunter
+ test: refstack_object
+ - tag: arm64-hunter
+ test: refstack_platform
+ - tag: arm64-hunter
+ test: tempest_octavia
+ - tag: arm64-hunter
+ test: tempest_telemetry
+ - tag: arm64-hunter
+ test: patrole_admin
+ - tag: arm64-hunter
+ test: patrole_member
+ - tag: arm64-hunter
+ test: patrole_reader
+ - tag: arm64-hunter
+ test: tempest_cyborg
+ privileged: 'false'
+ network: bridge
jobs:
- 'functest-{repo}-{container}-{tag}-{test}-run'
- tempest_full_cntt
- tempest_scenario_cntt
- tempest_slow_cntt
+ privileged: 'false'
+ network: bridge
jobs:
- 'functest-{repo}-{container}-{tag}-{test}-run'
- rally_jobs
- vmtp
- shaker
+ privileged: 'false'
+ network: bridge
jobs:
- 'functest-{repo}-{container}-{tag}-{test}-run'
test:
- rally_full_cntt
- rally_jobs_cntt
+ privileged: 'false'
+ network: bridge
jobs:
- 'functest-{repo}-{container}-{tag}-{test}-run'
- heat_ims
- vyos_vrouter
- juju_epc
+ privileged: 'false'
+ network: bridge
jobs:
- 'functest-{repo}-{container}-{tag}-{test}-run'
+
- builder:
name: functest-zip
builders:
else
image={repo}:{port}/{container}:{tag}
fi
+ volumes=""
+ case "{tag}" in
+ arm-hunter)
+ volumes="-v /usr/bin/qemu-arm-static:/usr/bin/qemu-arm-static" ;;
+ arm64-hunter)
+ volumes="-v /usr/bin/qemu-aarch64-static:/usr/bin/qemu-aarch64-static" ;;
+ esac
sudo docker run --rm \
-e S3_ENDPOINT_URL=https://storage.googleapis.com \
-e S3_DST_URL=s3://artifacts.opnfv.org/functest \
-e HTTP_DST_URL=http://artifacts.opnfv.org/functest \
-e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
+ -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
-e BUILD_TAG=$BUILD_TAG \
-v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
+ -e DEBUG=$DEBUG \
+ -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
+ -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
+ -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
-v /home/opnfv/functest/.boto:/root/.boto \
- $image zip_campaign
+ -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
+ -v /home/opnfv/functest/images:/home/opnfv/functest/images \
+ $volumes $image zip_campaign
- job-template:
name: 'functest-{tag}-zip'
parameters:
+ - functest-slave:
+ slave: '{slave}'
- functest-build_tag:
build_tag: ''
+ - functest-DEBUG:
+ DEBUG: 'true'
+ - functest-EXTERNAL_NETWORK:
+ EXTERNAL_NETWORK: public
+ - functest-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
builders:
- functest-zip:
<<: *functest-containers
name: 'functest-{tag}-daily'
project-type: multijob
triggers:
- - timed: '@daily'
+ - timed: '@weekly'
parameters:
- functest-slave:
slave: '{slave}'
DEBUG: 'true'
- functest-EXTERNAL_NETWORK:
EXTERNAL_NETWORK: public
+ - functest-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
properties:
- build-blocker:
use-build-blocker: true
blocking-level: 'NODE'
blocking-jobs:
- - '^functest-{tag}-(daily|check|gate)$'
+ - '^functest(-pi)?(-ovn)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
builders:
- multijob:
name: remove former images
<<: *functest-jobs
- name: 'functest-opnfv-functest-smoke-{tag}-patrole-run'
<<: *functest-jobs
- - name: 'functest-opnfv-functest-smoke-{tag}-neutron_trunk-run'
+ - name: 'functest-opnfv-functest-smoke-{tag}-patrole_admin-run'
+ <<: *functest-jobs
+ - name: 'functest-opnfv-functest-smoke-{tag}-patrole_member-run'
+ <<: *functest-jobs
+ - name: 'functest-opnfv-functest-smoke-{tag}-patrole_reader-run'
<<: *functest-jobs
- name: 'functest-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
<<: *functest-jobs
<<: *functest-jobs
- name: 'functest-opnfv-functest-smoke-{tag}-tempest_octavia-run'
<<: *functest-jobs
+ - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cyborg-run'
+ <<: *functest-jobs
- multijob:
name: opnfv/functest-smoke-cntt:{tag}
projects:
container: alpine
tag: '3.12'
slave: master
+ exclude:
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
jobs:
- 'functest-{repo}-{container}-{tag}-rmi'
container: alpine
tag: '3.12'
slave: master
+ exclude:
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
jobs:
- 'functest-{repo}-{container}-{tag}-pull'
container: functest-core
ref_arg: BRANCH
path: docker/core
+ exclude:
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
jobs:
- 'functest-{repo}-{container}-{tag}-gate'
- 'functest-{repo}-{container}-{tag}-check'
- tag: latest
- tag: kali
- tag: jerma
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
- project:
name: functest-opnfv-functest-healthcheck-{tag}-build
container: functest-healthcheck
ref_arg: BRANCH
path: docker/healthcheck
+ exclude:
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
jobs:
- 'functest-{repo}-{container}-{tag}-gate'
- 'functest-{repo}-{container}-{tag}-check'
container: functest-smoke
ref_arg: BRANCH
path: docker/smoke
+ exclude:
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
jobs:
- 'functest-{repo}-{container}-{tag}-gate'
- 'functest-{repo}-{container}-{tag}-check'
container: functest-benchmarking
ref_arg: BRANCH
path: docker/benchmarking
+ exclude:
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
jobs:
- 'functest-{repo}-{container}-{tag}-gate'
- 'functest-{repo}-{container}-{tag}-check'
container: functest-benchmarking-cntt
ref_arg: BRANCH
path: docker/benchmarking-cntt
+ exclude:
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
jobs:
- 'functest-{repo}-{container}-{tag}-gate'
- 'functest-{repo}-{container}-{tag}-check'
container: functest-vnf
ref_arg:
path: docker/vnf
+ exclude:
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
jobs:
- 'functest-{repo}-{container}-{tag}-gate'
- 'functest-{repo}-{container}-{tag}-check'
container: functest-smoke-cntt
ref_arg: BRANCH
path: docker/smoke-cntt
+ exclude:
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
jobs:
- 'functest-{repo}-{container}-{tag}-gate'
- 'functest-{repo}-{container}-{tag}-check'
DEBUG: 'true'
- functest-EXTERNAL_NETWORK:
EXTERNAL_NETWORK: public
+ - functest-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
properties:
- build-blocker:
use-build-blocker: true
blocking-level: 'NODE'
blocking-jobs:
- - '^functest-{tag}-(daily|check|gate)$'
+ - '^functest(-pi)?(-ovn)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
builders:
- multijob:
name: remove former images
<<: *functest-jobs
- name: 'functest-opnfv-functest-smoke-{tag}-patrole-run'
<<: *functest-jobs
- - name: 'functest-opnfv-functest-smoke-{tag}-neutron_trunk-run'
+ - name: 'functest-opnfv-functest-smoke-{tag}-patrole_admin-run'
+ <<: *functest-jobs
+ - name: 'functest-opnfv-functest-smoke-{tag}-patrole_member-run'
+ <<: *functest-jobs
+ - name: 'functest-opnfv-functest-smoke-{tag}-patrole_reader-run'
<<: *functest-jobs
- name: 'functest-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
<<: *functest-jobs
<<: *functest-jobs
- name: 'functest-opnfv-functest-smoke-{tag}-tempest_octavia-run'
<<: *functest-jobs
+ - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cyborg-run'
+ <<: *functest-jobs
- multijob:
name: opnfv/functest-smoke-cntt:{tag}
projects:
DEBUG: 'true'
- functest-EXTERNAL_NETWORK:
EXTERNAL_NETWORK: public
+ - functest-VOLUME_DEVICE_NAME:
+ VOLUME_DEVICE_NAME: sdb
+ - functest-IMAGE_PROPERTIES:
+ IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
properties:
- build-blocker:
use-build-blocker: true
blocking-level: 'NODE'
blocking-jobs:
- - '^functest-{tag}-(daily|check|gate)$'
+ - '^functest(-pi)?(-ovn)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
builders:
- multijob:
name: remove former images
<<: *functest-jobs
- name: 'functest-opnfv-functest-smoke-{tag}-patrole-run'
<<: *functest-jobs
- - name: 'functest-opnfv-functest-smoke-{tag}-neutron_trunk-run'
+ - name: 'functest-opnfv-functest-smoke-{tag}-patrole_admin-run'
+ <<: *functest-jobs
+ - name: 'functest-opnfv-functest-smoke-{tag}-patrole_member-run'
+ <<: *functest-jobs
+ - name: 'functest-opnfv-functest-smoke-{tag}-patrole_reader-run'
<<: *functest-jobs
- name: 'functest-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
<<: *functest-jobs
<<: *functest-jobs
- name: 'functest-opnfv-functest-smoke-{tag}-tempest_octavia-run'
<<: *functest-jobs
+ - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cyborg-run'
+ <<: *functest-jobs
- multijob:
name: opnfv/functest-smoke-cntt:{tag}
projects:
<<: *functest-params
jobs:
- 'functest-{tag}-daily'
+
+- project:
+ name: 'functest-gate'
+ <<: *functest-params
+ exclude:
+ - tag: arm64-latest
+ - tag: arm64-kali
+ - tag: arm64-jerma
+ - tag: arm64-iruya
+ - tag: arm64-hunter
+ jobs:
- 'functest-{tag}-check'
- 'functest-{tag}-gate'
- last-success
- last-failure
- last-duration
- regex: ^functest(-ovn)?-[a-z]+-daily$
+ regex: ^functest(-ovn)?-(arm.*-|amd64-)*[a-z]+-daily$
- view:
name: functest-gate
- last-success
- last-failure
- last-duration
- regex: ^functest(-ovn)?-[a-z]+-gate$
+ regex: ^functest(-ovn)?-(arm.*-|amd64-)*[a-z]+-gate$