Started by upstream project "pipeline-templates" build number 989
originally caused by:
Triggered by Gerrit: https://gerrit.opensdn.io/c/opensdn-io/tf-dev-test/+/2765
Running as SYSTEM
[EnvInject] - Loading node environment variables.
Building remotely on slave-openstack-gz1_1 (openstack) in workspace /home/jenkins/workspace/test-tempest
[WS-CLEANUP] Deleting project workspace...
[WS-CLEANUP] Deferred wipeout is disabled by the job configuration...
[WS-CLEANUP] Done
The recommended git tool is: git
No credentials specified
Wiping out workspace first.
Cloning the remote Git repository
Cloning repository https://github.com/opensdn-io/tf-jenkins.git
> git init /home/jenkins/workspace/test-tempest/src/opensdn-io/tf-jenkins # timeout=10
Fetching upstream changes from https://github.com/opensdn-io/tf-jenkins.git
> git --version # timeout=10
> git --version # 'git version 2.25.1'
> git fetch --tags --force --progress -- https://github.com/opensdn-io/tf-jenkins.git +refs/heads/*:refs/remotes/origin/* # timeout=10
> git config remote.origin.url https://github.com/opensdn-io/tf-jenkins.git # timeout=10
> git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
Avoid second fetch
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10
Checking out Revision 910b53d881252eb245fbcf983740c79f7dc251ae (refs/remotes/origin/master)
> git config core.sparsecheckout # timeout=10
> git checkout -f 910b53d881252eb245fbcf983740c79f7dc251ae # timeout=10
Commit message: "fix error in code-coverage job"
> git rev-list --no-walk 910b53d881252eb245fbcf983740c79f7dc251ae # timeout=10
The recommended git tool is: NONE
No credentials specified
Wiping out workspace first.
Cloning the remote Git repository
Cloning repository https://github.com/opensdn-io/tf-dev-test.git
> git init /home/jenkins/workspace/test-tempest/src/opensdn-io/tf-dev-test # timeout=10
Fetching upstream changes from https://github.com/opensdn-io/tf-dev-test.git
> git --version # timeout=10
> git --version # 'git version 2.25.1'
> git fetch --tags --force --progress -- https://github.com/opensdn-io/tf-dev-test.git +refs/heads/*:refs/remotes/origin/* # timeout=10
> git config remote.origin.url https://github.com/opensdn-io/tf-dev-test.git # timeout=10
> git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
Avoid second fetch
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10
Checking out Revision 5ed3c9e6453f45b20e50e0b62b26f6a5b31c2753 (refs/remotes/origin/master)
> git config core.sparsecheckout # timeout=10
> git checkout -f 5ed3c9e6453f45b20e50e0b62b26f6a5b31c2753 # timeout=10
Commit message: "pin docker version"
> git rev-list --no-walk 5ed3c9e6453f45b20e50e0b62b26f6a5b31c2753 # timeout=10
Copied 4 artifacts from "pipeline-templates" build number 989
[test-tempest] $ /bin/bash -xe /tmp/jenkins13335232474440467755.sh
+ source /home/jenkins/workspace/test-tempest/global.env
++ export PIPELINE_BUILD_TAG=jenkins-pipeline-templates-989
++ PIPELINE_BUILD_TAG=jenkins-pipeline-templates-989
++ export SLAVE=openstack
++ SLAVE=openstack
++ export SLAVE_REGION=gz1
++ SLAVE_REGION=gz1
++ export LOGS_HOST=nexus.gz1.opensdn.io
++ LOGS_HOST=nexus.gz1.opensdn.io
++ export LOGS_PATH=/var/www/logs/jenkins_logs/gerrit/65/2765/4/templates_989
++ LOGS_PATH=/var/www/logs/jenkins_logs/gerrit/65/2765/4/templates_989
++ export LOGS_URL=http://nexus.gz1.opensdn.io:8082/jenkins_logs/gerrit/65/2765/4/templates_989
++ LOGS_URL=http://nexus.gz1.opensdn.io:8082/jenkins_logs/gerrit/65/2765/4/templates_989
++ export SITE_MIRROR=http://nexus.gz1.opensdn.io/repository
++ SITE_MIRROR=http://nexus.gz1.opensdn.io/repository
++ export CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ export DEPLOYER_CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ DEPLOYER_CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ export CONTRAIL_CONTAINER_TAG=master-2_7_6_5-4
++ CONTRAIL_CONTAINER_TAG=master-2_7_6_5-4
++ export CONTRAIL_DEPLOYER_CONTAINER_TAG=master-2_7_6_5-4
++ CONTRAIL_DEPLOYER_CONTAINER_TAG=master-2_7_6_5-4
++ export CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ export DEPLOYER_CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ DEPLOYER_CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ export CONTRAIL_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ CONTRAIL_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ export CONTRAIL_DEPLOYER_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ CONTRAIL_DEPLOYER_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ export GERRIT_PIPELINE=templates
++ GERRIT_PIPELINE=templates
++ export GERRIT_URL=https://gerrit.opensdn.io/
++ GERRIT_URL=https://gerrit.opensdn.io/
++ export GERRIT_CHANGE_ID=I7003cbb53090d762979f4596f2922cccdfdc4c55
++ GERRIT_CHANGE_ID=I7003cbb53090d762979f4596f2922cccdfdc4c55
++ export GERRIT_BRANCH=master
++ GERRIT_BRANCH=master
++ export GERRIT_PROJECT=opensdn-io/tf-dev-test
++ GERRIT_PROJECT=opensdn-io/tf-dev-test
++ export REPOS_CHANNEL=latest
++ REPOS_CHANNEL=latest
+ source /home/jenkins/workspace/test-tempest/deps.test-tempest.50723.env
++ export PROVIDER=openstack
++ PROVIDER=openstack
++ export ENVIRONMENT_OS=ubuntu22
++ ENVIRONMENT_OS=ubuntu22
++ export DATA_NETWORK=10.20.0.0/24
++ DATA_NETWORK=10.20.0.0/24
++ head -1
++ export VROUTER_GATEWAY=10.20.0.1
++ VROUTER_GATEWAY=10.20.0.1
++ export IMAGE=4744ca8a-852c-4f31-8cf0-48b97ea797c5
++ IMAGE=4744ca8a-852c-4f31-8cf0-48b97ea797c5
++ export IMAGE_SSH_USER=ubuntu
++ IMAGE_SSH_USER=ubuntu
++ export INSTANCE_IDS=e07e27c1-fedc-4a27-a81b-a693fbf42f04,
++ INSTANCE_IDS=e07e27c1-fedc-4a27-a81b-a693fbf42f04,
++ export instance_ip=10.0.0.19
++ instance_ip=10.0.0.19
++ export CONTROLLER_NODES=10.0.0.19,
++ CONTROLLER_NODES=10.0.0.19,
++ export CONTROL_NODES=10.20.0.25,
++ CONTROL_NODES=10.20.0.25,
++ export ORCHESTRATOR=openstack
++ ORCHESTRATOR=openstack
++ export DEPLOYER=ansible
++ DEPLOYER=ansible
++ export JOB_LOGS_PATH=ansible-os-tempest
++ JOB_LOGS_PATH=ansible-os-tempest
+ desc='Pipeline: pipeline-templates-989 Random: 50723 Stream: ansible-os-tempest'
+ desc+='
Job logs: http://nexus.gz1.opensdn.io:8082/jenkins_logs/gerrit/65/2765/4/templates_989/ansible-os-tempest'
+ echo 'DESCRIPTION Pipeline: pipeline-templates-989 Random: 50723 Stream: ansible-os-tempest
Job logs: http://nexus.gz1.opensdn.io:8082/jenkins_logs/gerrit/65/2765/4/templates_989/ansible-os-tempest'
DESCRIPTION Pipeline: pipeline-templates-989 Random: 50723 Stream: ansible-os-tempest
Job logs: http://nexus.gz1.opensdn.io:8082/jenkins_logs/gerrit/65/2765/4/templates_989/ansible-os-tempest
[description-setter] Description set: Pipeline: pipeline-templates-989 Random: 50723 Stream: ansible-os-tempest
Job logs: http://nexus.gz1.opensdn.io:8082/jenkins_logs/gerrit/65/2765/4/templates_989/ansible-os-tempest'
[test-tempest] $ /bin/bash -xe /tmp/jenkins17092536100461288612.sh
+ set -eo pipefail
+ source /home/jenkins/workspace/test-tempest/global.env
++ export PIPELINE_BUILD_TAG=jenkins-pipeline-templates-989
++ PIPELINE_BUILD_TAG=jenkins-pipeline-templates-989
++ export SLAVE=openstack
++ SLAVE=openstack
++ export SLAVE_REGION=gz1
++ SLAVE_REGION=gz1
++ export LOGS_HOST=nexus.gz1.opensdn.io
++ LOGS_HOST=nexus.gz1.opensdn.io
++ export LOGS_PATH=/var/www/logs/jenkins_logs/gerrit/65/2765/4/templates_989
++ LOGS_PATH=/var/www/logs/jenkins_logs/gerrit/65/2765/4/templates_989
++ export LOGS_URL=http://nexus.gz1.opensdn.io:8082/jenkins_logs/gerrit/65/2765/4/templates_989
++ LOGS_URL=http://nexus.gz1.opensdn.io:8082/jenkins_logs/gerrit/65/2765/4/templates_989
++ export SITE_MIRROR=http://nexus.gz1.opensdn.io/repository
++ SITE_MIRROR=http://nexus.gz1.opensdn.io/repository
++ export CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ export DEPLOYER_CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ DEPLOYER_CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ export CONTRAIL_CONTAINER_TAG=master-2_7_6_5-4
++ CONTRAIL_CONTAINER_TAG=master-2_7_6_5-4
++ export CONTRAIL_DEPLOYER_CONTAINER_TAG=master-2_7_6_5-4
++ CONTRAIL_DEPLOYER_CONTAINER_TAG=master-2_7_6_5-4
++ export CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ export DEPLOYER_CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ DEPLOYER_CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ export CONTRAIL_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ CONTRAIL_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ export CONTRAIL_DEPLOYER_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ CONTRAIL_DEPLOYER_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ export GERRIT_PIPELINE=templates
++ GERRIT_PIPELINE=templates
++ export GERRIT_URL=https://gerrit.opensdn.io/
++ GERRIT_URL=https://gerrit.opensdn.io/
++ export GERRIT_CHANGE_ID=I7003cbb53090d762979f4596f2922cccdfdc4c55
++ GERRIT_CHANGE_ID=I7003cbb53090d762979f4596f2922cccdfdc4c55
++ export GERRIT_BRANCH=master
++ GERRIT_BRANCH=master
++ export GERRIT_PROJECT=opensdn-io/tf-dev-test
++ GERRIT_PROJECT=opensdn-io/tf-dev-test
++ export REPOS_CHANNEL=latest
++ REPOS_CHANNEL=latest
+ ./src/opensdn-io/tf-jenkins/infra/gerrit/apply_patchsets.sh ./src opensdn-io/tf-jenkins ./patchsets-info.json
+ ./src/opensdn-io/tf-jenkins/infra/gerrit/apply_patchsets.sh ./src opensdn-io/tf-dev-test ./patchsets-info.json
INFO: run 'git fetch https://gerrit.opensdn.io//opensdn-io/tf-dev-test refs/changes/65/2765/4'
From https://gerrit.opensdn.io//opensdn-io/tf-dev-test
* branch refs/changes/65/2765/4 -> FETCH_HEAD
INFO: FETCH_HEAD - 5ed3c9e pin docker version
[detached HEAD f5afcb9] DNM: testing tempest w/o blacklist
Author: tikitavi
Date: Mon Mar 23 17:20:20 2026 +0300
1 file changed, 27 insertions(+), 55 deletions(-)
rewrite tempest/blacklist (92%)
[test-tempest] $ /bin/bash -xe /tmp/jenkins17587584180174543566.sh
+ set -eo pipefail
+ source /home/jenkins/workspace/test-tempest/global.env
++ export PIPELINE_BUILD_TAG=jenkins-pipeline-templates-989
++ PIPELINE_BUILD_TAG=jenkins-pipeline-templates-989
++ export SLAVE=openstack
++ SLAVE=openstack
++ export SLAVE_REGION=gz1
++ SLAVE_REGION=gz1
++ export LOGS_HOST=nexus.gz1.opensdn.io
++ LOGS_HOST=nexus.gz1.opensdn.io
++ export LOGS_PATH=/var/www/logs/jenkins_logs/gerrit/65/2765/4/templates_989
++ LOGS_PATH=/var/www/logs/jenkins_logs/gerrit/65/2765/4/templates_989
++ export LOGS_URL=http://nexus.gz1.opensdn.io:8082/jenkins_logs/gerrit/65/2765/4/templates_989
++ LOGS_URL=http://nexus.gz1.opensdn.io:8082/jenkins_logs/gerrit/65/2765/4/templates_989
++ export SITE_MIRROR=http://nexus.gz1.opensdn.io/repository
++ SITE_MIRROR=http://nexus.gz1.opensdn.io/repository
++ export CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ export DEPLOYER_CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ DEPLOYER_CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
++ export CONTRAIL_CONTAINER_TAG=master-2_7_6_5-4
++ CONTRAIL_CONTAINER_TAG=master-2_7_6_5-4
++ export CONTRAIL_DEPLOYER_CONTAINER_TAG=master-2_7_6_5-4
++ CONTRAIL_DEPLOYER_CONTAINER_TAG=master-2_7_6_5-4
++ export CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ export DEPLOYER_CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ DEPLOYER_CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
++ export CONTRAIL_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ CONTRAIL_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ export CONTRAIL_DEPLOYER_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ CONTRAIL_DEPLOYER_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
++ export GERRIT_PIPELINE=templates
++ GERRIT_PIPELINE=templates
++ export GERRIT_URL=https://gerrit.opensdn.io/
++ GERRIT_URL=https://gerrit.opensdn.io/
++ export GERRIT_CHANGE_ID=I7003cbb53090d762979f4596f2922cccdfdc4c55
++ GERRIT_CHANGE_ID=I7003cbb53090d762979f4596f2922cccdfdc4c55
++ export GERRIT_BRANCH=master
++ GERRIT_BRANCH=master
++ export GERRIT_PROJECT=opensdn-io/tf-dev-test
++ GERRIT_PROJECT=opensdn-io/tf-dev-test
++ export REPOS_CHANNEL=latest
++ REPOS_CHANNEL=latest
+ source ./src/opensdn-io/tf-jenkins/infra/openstack/definitions
++ export PROVIDER=openstack
++ PROVIDER=openstack
++ export OS_NETWORK=management
++ OS_NETWORK=management
++ export OS_DATA_NETWORK=data
++ OS_DATA_NETWORK=data
++ export OS_SG=default
++ OS_SG=default
++ export RESERVED_INSTANCES_COUNT=3
++ RESERVED_INSTANCES_COUNT=3
++ export RESERVED_CORES_COUNT=16
++ RESERVED_CORES_COUNT=16
++ export VM_BOOT_RETRIES=120
++ VM_BOOT_RETRIES=120
++ export VM_BOOT_DELAY=60
++ VM_BOOT_DELAY=60
++ export VOLUME_TYPE=ceph-ssd
++ VOLUME_TYPE=ceph-ssd
++ ENVIRONMENT_OS=rocky9
++ VM_TYPES=(['xsmall']='STD3-1-4' ['small']='STD3-2-8' ['medium']='STD3-4-16' ['large']='STD3-8-32')
++ declare -A VM_TYPES
++ VOLUME_SIZE=(['xsmall']='50' ['small']='50' ['medium']='80' ['large']='80')
++ declare -A VOLUME_SIZE
++ OS_IMAGES=(['CENTOS7']='prepared-centos7' ['CENTOS8']='prepared-centos8' ['UBUNTU20']='prepared-ubuntu20' ['UBUNTU22']='prepared-ubuntu22' ['UBUNTU24']='prepared-ubuntu24' ['ROCKY9']='prepared-rocky95')
++ declare -A OS_IMAGES
++ OS_IMAGE_USERS=(['CENTOS7']='centos' ['CENTOS8']='centos' ['UBUNTU20']='ubuntu' ['UBUNTU22']='ubuntu' ['UBUNTU24']='ubuntu' ['ROCKY9']='rocky' ['ROCKY92']='rocky' ['ROCKY93']='rocky' ['ROCKY94']='rocky' ['ROCKY95']='rocky' ['ROCKY96']='rocky')
++ declare -A OS_IMAGE_USERS
++ OS_IMAGES_UP=(['CENTOS7']='centos' ['CENTOS8']='centos' ['UBUNTU20']='ubuntu' ['UBUNTU22']='ubuntu' ['UBUNTU24']='ubuntu' ['ROCKY9']='rocky' ['ROCKY92']='rocky' ['ROCKY93']='rocky' ['ROCKY94']='rocky' ['ROCKY95']='rocky' ['ROCKY96']='rocky')
++ declare -A OS_IMAGES_UP
++ OS_IMAGES_DOWN=(['CENTOS7']='' ['CENTOS8']='' ['UBUNTU20']='' ['UBUNTU22']='' ['UBUNTU24']='' ['ROCKY9']='' ['ROCKY92']='' ['ROCKY93']='' ['ROCKY94']='' ['ROCKY95']='' ['ROCKY96']='')
++ declare -A OS_IMAGES_DOWN
++ SSH_OPTIONS='-T -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o PasswordAuthentication=no'
+ source /home/jenkins/workspace/test-tempest/deps.test-tempest.50723.env
++ export PROVIDER=openstack
++ PROVIDER=openstack
++ export ENVIRONMENT_OS=ubuntu22
++ ENVIRONMENT_OS=ubuntu22
++ export DATA_NETWORK=10.20.0.0/24
++ DATA_NETWORK=10.20.0.0/24
++ head -1
++ export VROUTER_GATEWAY=10.20.0.1
++ VROUTER_GATEWAY=10.20.0.1
++ export IMAGE=4744ca8a-852c-4f31-8cf0-48b97ea797c5
++ IMAGE=4744ca8a-852c-4f31-8cf0-48b97ea797c5
++ export IMAGE_SSH_USER=ubuntu
++ IMAGE_SSH_USER=ubuntu
++ export INSTANCE_IDS=e07e27c1-fedc-4a27-a81b-a693fbf42f04,
++ INSTANCE_IDS=e07e27c1-fedc-4a27-a81b-a693fbf42f04,
++ export instance_ip=10.0.0.19
++ instance_ip=10.0.0.19
++ export CONTROLLER_NODES=10.0.0.19,
++ CONTROLLER_NODES=10.0.0.19,
++ export CONTROL_NODES=10.20.0.25,
++ CONTROL_NODES=10.20.0.25,
++ export ORCHESTRATOR=openstack
++ ORCHESTRATOR=openstack
++ export DEPLOYER=ansible
++ DEPLOYER=ansible
++ export JOB_LOGS_PATH=ansible-os-tempest
++ JOB_LOGS_PATH=ansible-os-tempest
+ source /home/jenkins/workspace/test-tempest/vars.test-tempest.50723.env
++ export USE_DATAPLANE_NETWORK=true
++ USE_DATAPLANE_NETWORK=true
+ export FULL_LOGS_PATH=/var/www/logs/jenkins_logs/gerrit/65/2765/4/templates_989/ansible-os-tempest
+ FULL_LOGS_PATH=/var/www/logs/jenkins_logs/gerrit/65/2765/4/templates_989/ansible-os-tempest
+ export TARGET=tempest
+ TARGET=tempest
+ ./src/opensdn-io/tf-jenkins/jobs/test/functional/run.sh
INFO: Test tempest started Mon Mar 30 13:09:38 UTC 2026
Warning: Permanently added '10.0.0.19' (ECDSA) to the list of known hosts.
Warning: Permanently added '10.0.0.19' (ECDSA) to the list of known hosts.
DEPLOYER=ansible
CONTRAIL_CONTAINER_TAG=master-2_7_6_5-4
CONTRAIL_DEPLOYER_CONTAINER_TAG=master-2_7_6_5-4
CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
DEPLOYER_CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
ORCHESTRATOR=openstack
OPENSTACK_VERSION="yoga"
CONTROLLER_NODES="10.0.0.19 "
AGENT_NODES="10.0.0.19"
CONTROL_NODES="10.20.0.25 "
SSL_ENABLE="false"
LEGACY_ANALYTICS_ENABLE="true"
HUGE_PAGES_1G=
CONTAINER_RUNTIME=docker
K8S_CA=
DEPLOY_IPA_SERVER=
IPA_PASSWORD=
OPENSTACK_CONTROLLER_NODES='10.0.0.19'
OS_AUTH_URL='http://10.0.0.19:5000/v3'
AUTH_PASSWORD='contrail123'
AUTH_URL=''
~ ~
[smoke-test]
Hit:1 http://tf-mirrors.gz1.opensdn.io/repos/ubuntu/latest/mirror/archive.ubuntu.com/ubuntu jammy InRelease
Hit:2 http://tf-mirrors.gz1.opensdn.io/repos/ubuntu/latest/mirror/archive.ubuntu.com/ubuntu jammy-security InRelease
Hit:3 http://tf-mirrors.gz1.opensdn.io/repos/ubuntu/latest/mirror/archive.ubuntu.com/ubuntu jammy-updates InRelease
Hit:4 http://tf-mirrors.gz1.opensdn.io/repos/ubuntu/latest/mirror/archive.ubuntu.com/ubuntu jammy-proposed InRelease
Hit:5 http://tf-mirrors.gz1.opensdn.io/repos/ubuntu/latest/mirror/archive.ubuntu.com/ubuntu jammy-backports InRelease
Hit:6 https://download.docker.com/linux/ubuntu jammy InRelease
Reading package lists...
W: https://download.docker.com/linux/ubuntu/dists/jammy/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.
Reading package lists...
Building dependency tree...
Reading state information...
python3-virtualenv is already the newest version (20.13.0+ds-2).
0 upgraded, 0 newly installed, 0 to remove and 195 not upgraded.
find interpreter for spec PythonSpec(implementation=CPython, major=3)
proposed PythonInfo(spec=CPython3.10.12.final.0-64, exe=/usr/bin/python3, platform=linux, version='3.10.12 (main, Feb 4 2025, 14:57:36) [GCC 11.4.0]', encoding_fs_io=utf-8-utf-8)
create virtual environment via CPython3Posix(dest=/home/ubuntu/venvs/openstack, clear=True, no_vcs_ignore=False, global=False)
add seed packages via FromAppData(download=True, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/ubuntu/.local/share/virtualenv)
add activators for Bash, CShell, Fish, Nushell, PowerShell, Python
created virtual environment CPython3.10.12.final.0-64 in 2342ms
creator CPython3Posix(dest=/home/ubuntu/venvs/openstack, clear=True, no_vcs_ignore=False, global=False)
seeder FromAppData(download=True, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/ubuntu/.local/share/virtualenv)
added seed packages: pip==26.0.1, setuptools==82.0.1, wheel==0.46.3
activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator
Looking in indexes: http://tf-mirrors.gz1.opensdn.io/root/pypi/+simple/
Collecting openstackclient
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/310/b84fea56ea451/openstackclient-4.0.0-py2.py3-none-any.whl (7.0 kB)
Collecting pbr!=2.1.0,>=2.0.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/ff2/23894eb1cd271/pbr-7.0.3-py2.py3-none-any.whl (131 kB)
Collecting aodhclient>=0.9.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/dbc/9cd8d2e318ee0/aodhclient-3.10.1-py3-none-any.whl (56 kB)
Collecting gnocchiclient>=3.3.1 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/791/f3efad8c7ab58/gnocchiclient-7.2.0-py2.py3-none-any.whl (66 kB)
Collecting python-barbicanclient>=4.5.2 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/4db/00286a6f2249b/python_barbicanclient-7.3.0-py3-none-any.whl (88 kB)
Collecting python-congressclient<2000,>=1.3.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/d7c/4945d822851fd/python_congressclient-2.0.1-py3-none-any.whl (40 kB)
Collecting python-designateclient>=2.7.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/ee9/c87a6d5fd5ebe/python_designateclient-6.4.0-py3-none-any.whl (96 kB)
Collecting python-heatclient>=1.10.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/7c9/b29265cdc9256/python_heatclient-5.1.0-py3-none-any.whl (212 kB)
Collecting python-ironicclient>=2.3.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/4ae/61cab95453db1/python_ironicclient-6.0.0-py3-none-any.whl (248 kB)
Collecting python-ironic-inspector-client>=1.5.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/994/02251acd32b88/python_ironic_inspector_client-5.4.0-py3-none-any.whl (37 kB)
Collecting python-mistralclient!=3.2.0,>=3.1.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/833/e14ac22439aea/python_mistralclient-6.2.0-py3-none-any.whl (140 kB)
Collecting python-muranoclient>=0.8.2 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/711/cca673d1f56c9/python_muranoclient-2.8.0-py3-none-any.whl (260 kB)
Collecting python-neutronclient>=6.7.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/f0b/bb3f14f11a89c/python_neutronclient-11.8.0-py3-none-any.whl (296 kB)
Collecting python-octaviaclient>=1.3.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/ccf/545e124031250/python_octaviaclient-3.13.0-py3-none-any.whl (113 kB)
Collecting python-openstackclient>=4.0.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/a22/e27fcd8e375ac/python_openstackclient-9.0.0-py3-none-any.whl (1.1 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 44.2 MB/s 0:00:00
Collecting python-saharaclient>=1.4.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/09e/a9919d66e5698/python_saharaclient-4.2.0-py3-none-any.whl (156 kB)
Collecting python-searchlightclient>=1.0.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/552/a655324210bdb/python_searchlightclient-2.1.1-py3-none-any.whl (44 kB)
Collecting python-senlinclient>=1.1.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/d1f/f501366905dec/python_senlinclient-3.1.0-py3-none-any.whl (111 kB)
Collecting python-troveclient>=2.2.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/d49/e122de2e9272c/python_troveclient-8.10.0-py3-none-any.whl (237 kB)
Collecting python-vitrageclient>=1.3.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/2c8/a30da9d8992ae/python_vitrageclient-5.4.0-py3-none-any.whl (51 kB)
Collecting python-watcherclient>=1.1.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/8e9/60c291aa5ffe2/python_watcherclient-4.10.0-py3-none-any.whl (140 kB)
Collecting python-zaqarclient>=1.0.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/7c5/90b14d0581cb3/python_zaqarclient-4.4.0-py3-none-any.whl (73 kB)
Collecting python-zunclient>=3.4.0 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/65c/758f38e081c08/python_zunclient-5.4.0-py3-none-any.whl (155 kB)
Collecting networkx>=2.3 (from openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/df5/d4365b724cf81/networkx-3.4.2-py3-none-any.whl (1.7 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.7/1.7 MB 63.4 MB/s 0:00:00
Collecting Babel!=2.4.0,>=2.3.4 (from python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/e2b/422b277c2b9a9/babel-2.18.0-py3-none-any.whl (10.2 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.2/10.2 MB 116.0 MB/s 0:00:00
Collecting cliff!=2.9.0,>=2.8.0 (from python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/adb/12978c79260fd/cliff-4.13.2-py3-none-any.whl (86 kB)
Collecting keystoneauth1>=3.4.0 (from python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/6e6/d0296bc341e5f/keystoneauth1-5.13.1-py3-none-any.whl (343 kB)
Collecting oslo.i18n>=3.15.3 (from python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/550/5cfc03a917b44/oslo_i18n-6.7.2-py3-none-any.whl (47 kB)
Collecting oslo.log>=3.36.0 (from python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/e71/d62a735b53527/oslo_log-8.1.0-py3-none-any.whl (77 kB)
Collecting oslo.serialization!=2.19.1,>=2.18.0 (from python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/732/6426cff711fbf/oslo_serialization-5.9.1-py3-none-any.whl (27 kB)
Collecting six>=1.10.0 (from python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/472/1f391ed90541f/six-1.17.0-py2.py3-none-any.whl (11 kB)
Collecting osc-lib>=1.0.1 (from aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/f9a/15389d93ac8e9/osc_lib-4.4.0-py3-none-any.whl (96 kB)
Collecting oslo.utils>=2.0.0 (from aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/cda/6926cc4cf090a/oslo_utils-10.0.0-py3-none-any.whl (136 kB)
Collecting osprofiler>=1.4.0 (from aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/762/e6b127a8e198c/osprofiler-4.3.0-py3-none-any.whl (95 kB)
Collecting pyparsing>2.1.0 (from aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/850/ba148bd908d7e/pyparsing-3.3.2-py3-none-any.whl (122 kB)
Collecting autopage>=0.4.0 (from cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/875/66f08a7d4ba20/autopage-0.6.0-py3-none-any.whl (30 kB)
Collecting cmd2>=1.0.0 (from cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/9bf/15718bcc5a99c/cmd2-3.4.0-py3-none-any.whl (148 kB)
Collecting PrettyTable>=0.7.2 (from cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/aad/69b294ddbe3e1/prettytable-3.17.0-py3-none-any.whl (34 kB)
Collecting stevedore>=5.6.0 (from cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/fd2/5efbb32f1abb4/stevedore-5.7.0-py3-none-any.whl (54 kB)
Collecting PyYAML>=3.12 (from cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/9c7/708761fccb939/pyyaml-6.0.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (770 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 770.3/770.3 kB 38.8 MB/s 0:00:00
Collecting backports.strenum (from cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/cdc/fe36dc897e261/backports_strenum-1.3.1-py3-none-any.whl (8.3 kB)
Collecting pyperclip>=1.8.2 (from cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/299/403e9ff44581c/pyperclip-1.11.0-py3-none-any.whl (11 kB)
Collecting rich>=14.3.0 (from cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/793/431c1f8619afa/rich-14.3.3-py3-none-any.whl (310 kB)
Collecting rich-argparse>=1.7.1 (from cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/055/9b1f47a19bbeb/rich_argparse-1.7.2-py3-none-any.whl (25 kB)
Collecting typing-extensions (from cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/f0f/a19c6845758ab/typing_extensions-4.15.0-py3-none-any.whl (44 kB)
Collecting ujson (from gnocchiclient>=3.3.1->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/460/e76a4daff214a/ujson-5.12.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (57 kB)
Collecting futurist (from gnocchiclient>=3.3.1->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/3ba/50d57b6086e3b/futurist-3.3.0-py3-none-any.whl (43 kB)
Collecting iso8601 (from gnocchiclient>=3.3.1->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/aac/4145c4dcb66ad/iso8601-2.1.0-py3-none-any.whl (7.5 kB)
Collecting python-dateutil (from gnocchiclient>=3.3.1->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/a8b/2bc7bffae2822/python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)
Collecting debtcollector (from gnocchiclient>=3.3.1->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/c64/e49a66c0b7128/debtcollector-3.1.0-py3-none-any.whl (24 kB)
Collecting requests>=2.14.2 (from keystoneauth1>=3.4.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/246/2f94637a34fd5/requests-2.32.5-py3-none-any.whl (64 kB)
Collecting os-service-types>=1.2.0 (from keystoneauth1>=3.4.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/f78/890d71814deff/os_service_types-1.8.2-py3-none-any.whl (24 kB)
Collecting openstacksdk>=0.15.0 (from osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/c75/927fb29a9c82d/openstacksdk-4.10.0-py3-none-any.whl (1.9 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.9/1.9 MB 81.7 MB/s 0:00:00
Collecting cryptography>=2.7 (from openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/a3d/507bb6a513ca9/cryptography-46.0.5-cp38-abi3-manylinux_2_34_x86_64.whl (4.5 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.5/4.5 MB 123.9 MB/s 0:00:00
Collecting decorator>=4.4.1 (from openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/d31/6bb415a2d9e2d/decorator-5.2.1-py3-none-any.whl (9.2 kB)
Collecting dogpile.cache>=0.6.5 (from openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/dc7/b47d37844db15/dogpile_cache-1.5.0-py3-none-any.whl (64 kB)
Collecting jmespath>=0.9.0 (from openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/a56/63118de4908c9/jmespath-1.1.0-py3-none-any.whl (20 kB)
Collecting jsonpatch!=1.20,>=1.16 (from openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/0ae/28c0cd062bbd8/jsonpatch-1.33-py2.py3-none-any.whl (12 kB)
Collecting platformdirs>=3 (from openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/68a/9a4619a666ea6/platformdirs-4.9.4-py3-none-any.whl (21 kB)
Collecting psutil>=3.2.2 (from openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/076/a2d2f923fd482/psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl (155 kB)
Collecting requestsexceptions>=1.2.0 (from openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/308/3d872b6e07dc5/requestsexceptions-1.4.0-py2.py3-none-any.whl (3.8 kB)
Collecting cffi>=2.0.0 (from cryptography>=2.7->openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/fc7/de24befaeae77/cffi-2.0.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (216 kB)
Collecting pycparser (from cffi>=2.0.0->cryptography>=2.7->openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/b72/7414169a36b7d/pycparser-3.0-py3-none-any.whl (48 kB)
Collecting jsonpointer>=1.9 (from jsonpatch!=1.20,>=1.16->openstacksdk>=0.15.0->osc-lib>=1.0.1->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/8ff/8b95779d071ba/jsonpointer-3.1.1-py3-none-any.whl (7.7 kB)
Collecting oslo.config>=5.2.0 (from oslo.log>=3.36.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/b17/d983bd1845087/oslo_config-10.3.0-py3-none-any.whl (132 kB)
Collecting oslo.context>=2.21.0 (from oslo.log>=3.36.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/c3a/47bd597d497aa/oslo_context-6.3.0-py3-none-any.whl (20 kB)
Collecting wrapt>=2.1.0 (from debtcollector->gnocchiclient>=3.3.1->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/568/1123e60aed0e6/wrapt-2.1.2-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (113 kB)
Collecting netaddr>=0.7.18 (from oslo.config>=5.2.0->oslo.log>=3.36.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/c2c/6a8ebe5554ce3/netaddr-1.3.0-py3-none-any.whl (2.3 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.3/2.3 MB 66.5 MB/s 0:00:00
Collecting rfc3986>=1.2.0 (from oslo.config>=5.2.0->oslo.log>=3.36.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/50b/1502b60e289cb/rfc3986-2.0.0-py2.py3-none-any.whl (31 kB)
Collecting msgpack>=0.5.2 (from oslo.serialization!=2.19.1,>=2.18.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/365/c0bbe981a27d8/msgpack-1.1.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (406 kB)
Collecting packaging>=20.4 (from oslo.utils>=2.0.0->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/b36/f1fef9334a558/packaging-26.0-py3-none-any.whl (74 kB)
Collecting oslo.concurrency>=3.26.0 (from osprofiler>=1.4.0->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/7bd/3afe3dc32fa3c/oslo_concurrency-7.4.0-py3-none-any.whl (48 kB)
Collecting WebOb>=1.7.1 (from osprofiler>=1.4.0->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/45e/34c58ed0c7e2e/WebOb-1.8.9-py2.py3-none-any.whl (115 kB)
Collecting fasteners>=0.7.0 (from oslo.concurrency>=3.26.0->osprofiler>=1.4.0->aodhclient>=0.9.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/942/2c40d1e350e42/fasteners-0.20-py3-none-any.whl (18 kB)
Requirement already satisfied: setuptools in ./venvs/openstack/lib/python3.10/site-packages (from pbr!=2.1.0,>=2.0.0->openstackclient) (82.0.1)
Collecting wcwidth (from PrettyTable>=0.7.2->cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/1a3/a1e510b553315/wcwidth-0.6.0-py3-none-any.whl (94 kB)
Collecting jsonschema>=3.2.0 (from python-designateclient>=2.7.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/d48/9f15263b8d200/jsonschema-4.26.0-py3-none-any.whl (90 kB)
Collecting attrs>=22.2.0 (from jsonschema>=3.2.0->python-designateclient>=2.7.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/c64/7aa4a12dfbad9/attrs-26.1.0-py3-none-any.whl (67 kB)
Collecting jsonschema-specifications>=2023.03.6 (from jsonschema>=3.2.0->python-designateclient>=2.7.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/988/02fee3a11ee76/jsonschema_specifications-2025.9.1-py3-none-any.whl (18 kB)
Collecting referencing>=0.28.4 (from jsonschema>=3.2.0->python-designateclient>=2.7.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/381/329a9f99628c9/referencing-0.37.0-py3-none-any.whl (26 kB)
Collecting rpds-py>=0.25.0 (from jsonschema>=3.2.0->python-designateclient>=2.7.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/0c0/e95f6819a1996/rpds_py-0.30.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (390 kB)
Collecting python-swiftclient>=3.2.0 (from python-heatclient>=1.10.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/6fb/8187b736b63c1/python_swiftclient-4.10.0-py3-none-any.whl (88 kB)
Collecting murano-pkg-check>=0.3.0 (from python-muranoclient>=0.8.2->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/56d/2c45cdaf3a51e/murano-pkg-check-0.3.0.tar.gz (39 kB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Installing backend dependencies: started
Installing backend dependencies: finished with status 'done'
Preparing metadata (pyproject.toml): started
Preparing metadata (pyproject.toml): finished with status 'done'
Collecting pyOpenSSL>=17.1.0 (from python-muranoclient>=0.8.2->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/df9/4d28498848b98/pyopenssl-26.0.0-py3-none-any.whl (57 kB)
Collecting python-glanceclient>=2.8.0 (from python-muranoclient>=0.8.2->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/43b/49eb6f501fe1e/python_glanceclient-4.11.0-py3-none-any.whl (208 kB)
Collecting python-keystoneclient>=3.8.0 (from python-muranoclient>=0.8.2->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/0cc/96cc719bbd8b1/python_keystoneclient-5.8.0-py3-none-any.whl (397 kB)
Collecting yaql>=1.1.3 (from python-muranoclient>=0.8.2->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/2da/c3ed5085d3db7/yaql-3.2.0-py3-none-any.whl (157 kB)
Collecting semantic-version>=2.3.1 (from murano-pkg-check>=0.3.0->python-muranoclient>=0.8.2->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/de7/8a3b8e0feda74/semantic_version-2.10.0-py2.py3-none-any.whl (15 kB)
Collecting warlock>=1.2.0 (from python-glanceclient>=2.8.0->python-muranoclient>=0.8.2->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/55c/b5ad339908372/warlock-2.1.0-py3-none-any.whl (10 kB)
Collecting python-cinderclient>=3.3.0 (from python-openstackclient>=4.0.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/1c7/a5cb0d8202225/python_cinderclient-9.9.0-py3-none-any.whl (256 kB)
Collecting PrettyTable>=0.7.2 (from cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/853/c116513625c73/prettytable-0.7.2.tar.bz2 (21 kB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing metadata (pyproject.toml): started
Preparing metadata (pyproject.toml): finished with status 'done'
Collecting pydot>=1.4.1 (from python-vitrageclient>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/869/c0efadd2708c0/pydot-4.0.1-py3-none-any.whl (37 kB)
Collecting websocket-client>=0.44.0 (from python-zunclient>=3.4.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/af2/48a825037ef59/websocket_client-1.9.0-py3-none-any.whl (82 kB)
Collecting docker>=2.4.2 (from python-zunclient>=3.4.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/c96/b93b7f0a746f9/docker-7.1.0-py3-none-any.whl (147 kB)
Collecting urllib3>=1.26.0 (from docker>=2.4.2->python-zunclient>=3.4.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/bf2/72323e553dfb2/urllib3-2.6.3-py3-none-any.whl (131 kB)
Collecting charset_normalizer<4,>=2 (from requests>=2.14.2->keystoneauth1>=3.4.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/51f/b3c322c81d205/charset_normalizer-3.4.6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (207 kB)
Collecting idna<4,>=2.5 (from requests>=2.14.2->keystoneauth1>=3.4.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/771/a87f49d9defaf/idna-3.11-py3-none-any.whl (71 kB)
Collecting certifi>=2017.4.17 (from requests>=2.14.2->keystoneauth1>=3.4.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/027/692e4402ad994/certifi-2026.2.25-py3-none-any.whl (153 kB)
Collecting markdown-it-py>=2.2.0 (from rich>=14.3.0->cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/873/27c59b172c501/markdown_it_py-4.0.0-py3-none-any.whl (87 kB)
Collecting pygments<3.0.0,>=2.13.0 (from rich>=14.3.0->cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/81a/9e26dd42fd28a/pygments-2.20.0-py3-none-any.whl (1.2 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 45.7 MB/s 0:00:00
Collecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich>=14.3.0->cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->python-congressclient<2000,>=1.3.0->openstackclient)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/840/08a41e51615a4/mdurl-0.1.2-py3-none-any.whl (10.0 kB)
Building wheels for collected packages: murano-pkg-check, PrettyTable
Building wheel for murano-pkg-check (pyproject.toml): started
Building wheel for murano-pkg-check (pyproject.toml): finished with status 'done'
Created wheel for murano-pkg-check: filename=murano_pkg_check-0.3.0-py3-none-any.whl size=51808 sha256=cc7bfe0677c4933b3938a88f610964c1041d627327b59a3fe9c9594de1eecc94
Stored in directory: /home/ubuntu/.cache/pip/wheels/81/cb/c3/25b2a5cf6591fed1b07d6f3443fee593c3c293c26c8bd4edef
Building wheel for PrettyTable (pyproject.toml): started
Building wheel for PrettyTable (pyproject.toml): finished with status 'done'
Created wheel for PrettyTable: filename=prettytable-0.7.2-py3-none-any.whl size=13761 sha256=307727e3b610cc0a052b22b0c6e27f1e3f47b4d898f1263a03505402262067aa
Stored in directory: /home/ubuntu/.cache/pip/wheels/eb/f3/04/a19f7f83578436779fa0864fdb4d99d3035b901158843e788a
Successfully built murano-pkg-check PrettyTable
Installing collected packages: requestsexceptions, pyperclip, PrettyTable, wrapt, websocket-client, WebOb, urllib3, ujson, typing-extensions, stevedore, six, semantic-version, rpds-py, rfc3986, PyYAML, pyparsing, pygments, pycparser, psutil, platformdirs, pbr, packaging, networkx, netaddr, msgpack, mdurl, jsonpointer, jmespath, iso8601, idna, fasteners, decorator, charset_normalizer, certifi, backports.strenum, Babel, autopage, attrs, requests, referencing, python-dateutil, pydot, oslo.i18n, oslo.context, os-service-types, markdown-it-py, jsonpatch, dogpile.cache, debtcollector, cffi, yaql, rich, python-swiftclient, oslo.utils, oslo.config, keystoneauth1, jsonschema-specifications, futurist, docker, cryptography, rich-argparse, python-cinderclient, pyOpenSSL, oslo.serialization, oslo.concurrency, openstacksdk, murano-pkg-check, jsonschema, warlock, python-keystoneclient, osprofiler, oslo.log, cmd2, python-glanceclient, cliff, python-ironic-inspector-client, python-congressclient, python-barbicanclient, osc-lib, gnocchiclient, python-zaqarclient, python-watcherclient, python-vitrageclient, python-openstackclient, python-neutronclient, python-muranoclient, python-mistralclient, python-ironicclient, python-heatclient, python-designateclient, aodhclient, python-zunclient, python-troveclient, python-senlinclient, python-searchlightclient, python-saharaclient, python-octaviaclient, openstackclient
Successfully installed Babel-2.18.0 PrettyTable-0.7.2 PyYAML-6.0.3 WebOb-1.8.9 aodhclient-3.10.1 attrs-26.1.0 autopage-0.6.0 backports.strenum-1.3.1 certifi-2026.2.25 cffi-2.0.0 charset_normalizer-3.4.6 cliff-4.13.2 cmd2-3.4.0 cryptography-46.0.5 debtcollector-3.1.0 decorator-5.2.1 docker-7.1.0 dogpile.cache-1.5.0 fasteners-0.20 futurist-3.3.0 gnocchiclient-7.2.0 idna-3.11 iso8601-2.1.0 jmespath-1.1.0 jsonpatch-1.33 jsonpointer-3.1.1 jsonschema-4.26.0 jsonschema-specifications-2025.9.1 keystoneauth1-5.13.1 markdown-it-py-4.0.0 mdurl-0.1.2 msgpack-1.1.2 murano-pkg-check-0.3.0 netaddr-1.3.0 networkx-3.4.2 openstackclient-4.0.0 openstacksdk-4.10.0 os-service-types-1.8.2 osc-lib-4.4.0 oslo.concurrency-7.4.0 oslo.config-10.3.0 oslo.context-6.3.0 oslo.i18n-6.7.2 oslo.log-8.1.0 oslo.serialization-5.9.1 oslo.utils-10.0.0 osprofiler-4.3.0 packaging-26.0 pbr-7.0.3 platformdirs-4.9.4 psutil-7.2.2 pyOpenSSL-26.0.0 pycparser-3.0 pydot-4.0.1 pygments-2.20.0 pyparsing-3.3.2 pyperclip-1.11.0 python-barbicanclient-7.3.0 python-cinderclient-9.9.0 python-congressclient-2.0.1 python-dateutil-2.9.0.post0 python-designateclient-6.4.0 python-glanceclient-4.11.0 python-heatclient-5.1.0 python-ironic-inspector-client-5.4.0 python-ironicclient-6.0.0 python-keystoneclient-5.8.0 python-mistralclient-6.2.0 python-muranoclient-2.8.0 python-neutronclient-11.8.0 python-octaviaclient-3.13.0 python-openstackclient-9.0.0 python-saharaclient-4.2.0 python-searchlightclient-2.1.1 python-senlinclient-3.1.0 python-swiftclient-4.10.0 python-troveclient-8.10.0 python-vitrageclient-5.4.0 python-watcherclient-4.10.0 python-zaqarclient-4.4.0 python-zunclient-5.4.0 referencing-0.37.0 requests-2.32.5 requestsexceptions-1.4.0 rfc3986-2.0.0 rich-14.3.3 rich-argparse-1.7.2 rpds-py-0.30.0 semantic-version-2.10.0 six-1.17.0 stevedore-5.7.0 typing-extensions-4.15.0 ujson-5.12.0 urllib3-2.6.3 warlock-2.1.0 websocket-client-1.9.0 wrapt-2.1.2 yaql-3.2.0
Looking in indexes: http://tf-mirrors.gz1.opensdn.io/root/pypi/+simple/
Collecting Jinja2
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/85e/ce4451f492d0c/jinja2-3.1.6-py3-none-any.whl (134 kB)
Collecting MarkupSafe>=2.0 (from Jinja2)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/f42/d0984e947b8ad/markupsafe-3.0.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (20 kB)
Installing collected packages: MarkupSafe, Jinja2
Successfully installed Jinja2-3.1.6 MarkupSafe-3.0.3
+---------------------------+------------------------------------------------+
| Field | Value |
+---------------------------+------------------------------------------------+
| admin_state_up | UP |
| availability_zone_hints | |
| availability_zones | |
| created_at | None |
| description | |
| dns_domain | None |
| fq_name | ['default-domain', 'admin', 'tf-tempest-test'] |
| id | cf7fd1b8-85b2-4779-8da9-72bbf8142d73 |
| ipv4_address_scope | None |
| ipv6_address_scope | None |
| is_default | None |
| is_vlan_qinq | None |
| is_vlan_transparent | None |
| mtu | 0 |
| name | tf-tempest-test |
| port_security_enabled | True |
| project_id | 45e0105e413847fbaaa710115d17ebf9 |
| provider:network_type | None |
| provider:physical_network | None |
| provider:segmentation_id | None |
| qos_policy_id | None |
| revision_number | None |
| router:external | External |
| segments | None |
| shared | True |
| status | ACTIVE |
| subnets | |
| tags | |
| updated_at | None |
+---------------------------+------------------------------------------------+
+----------------------+--------------------------------------+
| Field | Value |
+----------------------+--------------------------------------+
| allocation_pools | 172.23.0.10-172.23.0.15 |
| cidr | 172.23.0.0/24 |
| created_at | None |
| description | None |
| dns_nameservers | |
| dns_publish_fixed_ip | None |
| dns_server_address | 172.23.0.2 |
| enable_dhcp | True |
| gateway_ip | 172.23.0.1 |
| host_routes | |
| id | ae3092c6-d392-40c7-8468-8c0dc24601b2 |
| ip_version | 4 |
| ipv6_address_mode | None |
| ipv6_ra_mode | None |
| name | tf-tempest-subnet-test |
| network_id | cf7fd1b8-85b2-4779-8da9-72bbf8142d73 |
| project_id | 45e0105e413847fbaaa710115d17ebf9 |
| revision_number | None |
| segment_id | None |
| service_types | |
| subnetpool_id | None |
| tags | |
| updated_at | None |
+----------------------+--------------------------------------+
INFO: prepare input parameters from template /home/ubuntu/src/opensdn-io/tf-dev-test/tempest/tempest.conf.j2
Cloning into 'tempest'...
Looking in indexes: http://tf-mirrors.gz1.opensdn.io/root/pypi/+simple/
Processing ./.
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Installing backend dependencies: started
Installing backend dependencies: finished with status 'done'
Preparing metadata (pyproject.toml): started
Preparing metadata (pyproject.toml): finished with status 'done'
Requirement already satisfied: pbr!=2.1.0,>=2.0.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (7.0.3)
Requirement already satisfied: cliff!=2.9.0,>=2.8.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (4.13.2)
Requirement already satisfied: jsonschema>=4.5.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (4.26.0)
Collecting testtools>=2.2.0 (from tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/c94/fb07f7999a237/testtools-2.8.7-py3-none-any.whl (109 kB)
Collecting paramiko>=2.7.0 (from tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/0e2/0e00ac666503b/paramiko-4.0.0-py3-none-any.whl (223 kB)
Requirement already satisfied: cryptography>=2.1 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (46.0.5)
Requirement already satisfied: netaddr>=0.7.18 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (1.3.0)
Requirement already satisfied: oslo.concurrency>=3.26.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (7.4.0)
Requirement already satisfied: oslo.config>=5.2.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (10.3.0)
Requirement already satisfied: oslo.log>=3.36.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (8.1.0)
Collecting stestr>=1.0.0 (from tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/237/a0b6e5273b274/stestr-4.2.1-py3-none-any.whl (118 kB)
Requirement already satisfied: oslo.serialization!=2.19.1,>=2.18.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (5.9.1)
Requirement already satisfied: oslo.utils>=7.0.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (10.0.0)
Collecting fixtures>=3.0.0 (from tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/c71/ad55a9139bd20/fixtures-4.3.2-py3-none-any.whl (41 kB)
Requirement already satisfied: PyYAML>=3.12 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (6.0.3)
Collecting python-subunit>=1.0.0 (from tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/254/f85a144d8c4e6/python_subunit-1.4.5-py3-none-any.whl (102 kB)
Requirement already satisfied: stevedore>=1.20.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (5.7.0)
Requirement already satisfied: PrettyTable>=0.7.1 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (0.7.2)
Requirement already satisfied: urllib3>=1.21.1 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (2.6.3)
Requirement already satisfied: debtcollector>=1.2.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (3.1.0)
Collecting defusedxml>=0.7.1 (from tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/a35/2e7e428770286/defusedxml-0.7.1-py2.py3-none-any.whl (25 kB)
Requirement already satisfied: fasteners>=0.16.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from tempest==46.2.1.dev5) (0.20)
Collecting testscenarios>=0.5.0 (from tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/480/263fa5d6e6181/testscenarios-0.5.0-py2.py3-none-any.whl (21 kB)
Requirement already satisfied: autopage>=0.4.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from cliff!=2.9.0,>=2.8.0->tempest==46.2.1.dev5) (0.6.0)
Requirement already satisfied: cmd2>=1.0.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from cliff!=2.9.0,>=2.8.0->tempest==46.2.1.dev5) (3.4.0)
Requirement already satisfied: backports.strenum in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->tempest==46.2.1.dev5) (1.3.1)
Requirement already satisfied: pyperclip>=1.8.2 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->tempest==46.2.1.dev5) (1.11.0)
Requirement already satisfied: rich>=14.3.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->tempest==46.2.1.dev5) (14.3.3)
Requirement already satisfied: rich-argparse>=1.7.1 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->tempest==46.2.1.dev5) (1.7.2)
Requirement already satisfied: typing-extensions in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->tempest==46.2.1.dev5) (4.15.0)
Requirement already satisfied: cffi>=2.0.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from cryptography>=2.1->tempest==46.2.1.dev5) (2.0.0)
Requirement already satisfied: pycparser in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from cffi>=2.0.0->cryptography>=2.1->tempest==46.2.1.dev5) (3.0)
Requirement already satisfied: wrapt>=2.1.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from debtcollector>=1.2.0->tempest==46.2.1.dev5) (2.1.2)
Requirement already satisfied: attrs>=22.2.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from jsonschema>=4.5.0->tempest==46.2.1.dev5) (26.1.0)
Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from jsonschema>=4.5.0->tempest==46.2.1.dev5) (2025.9.1)
Requirement already satisfied: referencing>=0.28.4 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from jsonschema>=4.5.0->tempest==46.2.1.dev5) (0.37.0)
Requirement already satisfied: rpds-py>=0.25.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from jsonschema>=4.5.0->tempest==46.2.1.dev5) (0.30.0)
Requirement already satisfied: oslo.i18n>=3.15.3 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from oslo.concurrency>=3.26.0->tempest==46.2.1.dev5) (6.7.2)
Requirement already satisfied: rfc3986>=1.2.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from oslo.config>=5.2.0->tempest==46.2.1.dev5) (2.0.0)
Requirement already satisfied: requests>=2.18.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from oslo.config>=5.2.0->tempest==46.2.1.dev5) (2.32.5)
Requirement already satisfied: oslo.context>=2.21.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from oslo.log>=3.36.0->tempest==46.2.1.dev5) (6.3.0)
Requirement already satisfied: python-dateutil>=2.7.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from oslo.log>=3.36.0->tempest==46.2.1.dev5) (2.9.0.post0)
Requirement already satisfied: msgpack>=0.5.2 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from oslo.serialization!=2.19.1,>=2.18.0->tempest==46.2.1.dev5) (1.1.2)
Requirement already satisfied: iso8601>=0.1.11 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from oslo.utils>=7.0.0->tempest==46.2.1.dev5) (2.1.0)
Requirement already satisfied: pyparsing>=2.1.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from oslo.utils>=7.0.0->tempest==46.2.1.dev5) (3.3.2)
Requirement already satisfied: packaging>=20.4 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from oslo.utils>=7.0.0->tempest==46.2.1.dev5) (26.0)
Requirement already satisfied: psutil>=3.2.2 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from oslo.utils>=7.0.0->tempest==46.2.1.dev5) (7.2.2)
Collecting bcrypt>=3.2 (from paramiko>=2.7.0->tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/611/f0a17aa4a25a6/bcrypt-5.0.0-cp39-abi3-manylinux_2_34_x86_64.whl (278 kB)
Collecting invoke>=2.0 (from paramiko>=2.7.0->tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/241/3bc441b376e5c/invoke-2.2.1-py3-none-any.whl (160 kB)
Collecting pynacl>=1.5 (from paramiko>=2.7.0->tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/c8a/231e36ec2cab0/pynacl-1.6.2-cp38-abi3-manylinux_2_34_x86_64.whl (1.4 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.4/1.4 MB 52.8 MB/s 0:00:00
Requirement already satisfied: setuptools in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from pbr!=2.1.0,>=2.0.0->tempest==46.2.1.dev5) (82.0.1)
Requirement already satisfied: six>=1.5 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from python-dateutil>=2.7.0->oslo.log>=3.36.0->tempest==46.2.1.dev5) (1.17.0)
Requirement already satisfied: charset_normalizer<4,>=2 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from requests>=2.18.0->oslo.config>=5.2.0->tempest==46.2.1.dev5) (3.4.6)
Requirement already satisfied: idna<4,>=2.5 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from requests>=2.18.0->oslo.config>=5.2.0->tempest==46.2.1.dev5) (3.11)
Requirement already satisfied: certifi>=2017.4.17 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from requests>=2.18.0->oslo.config>=5.2.0->tempest==46.2.1.dev5) (2026.2.25)
Requirement already satisfied: markdown-it-py>=2.2.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from rich>=14.3.0->cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->tempest==46.2.1.dev5) (4.0.0)
Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from rich>=14.3.0->cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->tempest==46.2.1.dev5) (2.20.0)
Requirement already satisfied: mdurl~=0.1 in /home/ubuntu/venvs/openstack/lib/python3.10/site-packages (from markdown-it-py>=2.2.0->rich>=14.3.0->cmd2>=1.0.0->cliff!=2.9.0,>=2.8.0->tempest==46.2.1.dev5) (0.1.2)
Collecting voluptuous>=0.8.9 (from stestr>=1.0.0->tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/ee3/42095263e1b5a/voluptuous-0.16.0-py3-none-any.whl (31 kB)
Collecting tomlkit>=0.11.6 (from stestr>=1.0.0->tempest==46.2.1.dev5)
Downloading http://tf-mirrors.gz1.opensdn.io/root/pypi/%2Bf/592/064ed85b40fa2/tomlkit-0.14.0-py3-none-any.whl (39 kB)
Building wheels for collected packages: tempest
Building wheel for tempest (pyproject.toml): started
Building wheel for tempest (pyproject.toml): finished with status 'done'
Created wheel for tempest: filename=tempest-46.2.1.dev5-py3-none-any.whl size=1612513 sha256=ce7fcf5e2a5e74fc64f6a55f62425c05eedf644cb108e1be436d7fa5ab5952fc
Stored in directory: /tmp/pip-ephem-wheel-cache-93n68j9t/wheels/a8/bd/52/96bb108ea4194f8a6cbf6eefbeae7c490356de7db1448e0a58
Successfully built tempest
Installing collected packages: voluptuous, tomlkit, testtools, invoke, fixtures, defusedxml, bcrypt, testscenarios, python-subunit, pynacl, paramiko, stestr, tempest
Successfully installed bcrypt-5.0.0 defusedxml-0.7.1 fixtures-4.3.2 invoke-2.2.1 paramiko-4.0.0 pynacl-1.6.2 python-subunit-1.4.5 stestr-4.2.1 tempest-46.2.1.dev5 testscenarios-0.5.0 testtools-2.8.7 tomlkit-0.14.0 voluptuous-0.16.0
SHELL=/bin/bash
CONTRAIL_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
OPENSTACK_CONTROLLER_NODES=10.0.0.19
OS_REGION_NAME=RegionOne
OS_PROJECT_DOMAIN_ID=default
DISTRO=ubuntu
DEPLOY_IPA_SERVER=
OS_INSECURE=1
CONTRAIL_CONTAINER_TAG=master-2_7_6_5-4
CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
TF_TEST_TARGET=
CONTROL_NODES=10.20.0.25
DEPLOYER_CONTAINER_REGISTRY=nexus.gz1.opensdn.io:5101
HUGE_PAGES_1G=
DEPLOYER_CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
PWD=/home/ubuntu
LOGNAME=ubuntu
PUBLIC_NETWORK_ID=cf7fd1b8-85b2-4779-8da9-72bbf8142d73
XDG_SESSION_TYPE=tty
DEPLOYMENT_TEST_TAGS=
COMPOSE_HTTP_TIMEOUT=120
IPA_PASSWORD=
OS_AUTH_URL=http://10.0.0.19:5000/v3
MOTD_SHOWN=pam
HOME=/home/ubuntu
LANG=C.UTF-8
VIRTUAL_ENV=/home/ubuntu/venvs/openstack
TF_TEST_IMAGE=
AUTH_PASSWORD=contrail123
OS_TENANT_NAME=admin
SSH_CONNECTION=10.0.0.25 58542 10.0.0.19 22
WORKSPACE=/home/ubuntu
SSL_ENABLE=false
OS_USER_DOMAIN_ID=default
XDG_SESSION_CLASS=user
USER=ubuntu
OS_USERNAME=admin
TF_DEPLOYMENT_TEST_IMAGE=
SHLVL=3
K8S_CA=
DEPLOYER=ansible
APT_MIRROR=http://tf-mirrors.gz1.opensdn.io/repos/ubuntu/latest/mirror/archive.ubuntu.com/ubuntu/
CONTRAIL_DEPLOYER_CONTAINER_TAG=master-2_7_6_5-4
XDG_SESSION_ID=34
CONTROLLER_NODES=10.0.0.19
LEGACY_ANALYTICS_ENABLE=true
ORCHESTRATOR=openstack
XDG_RUNTIME_DIR=/run/user/1000
PS1=(openstack)
SSH_CLIENT=10.0.0.25 58542 22
TF_TEST_NAME=smoke-test
OS_PROJECT_NAME=admin
OPENSTACK_VERSION=yoga
OS_PASSWORD=contrail123
CONTAINER_RUNTIME=docker
PATH=/home/ubuntu/venvs/openstack/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/sbin
VERSION_ID=22.04
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
CONTRAIL_DEPLOYER_CONTAINER_TAG_ORIGINAL=master-2_7_6_5-4
AUTH_URL=
AGENT_NODES=10.0.0.19
CONTAINER_REGISTRY_ORIGINAL=nexus.gz1.opensdn.io:5101
DOCKER_CLIENT_TIMEOUT=120
DEBUG=
OS_IDENTITY_API_VERSION=3
OLDPWD=/home/ubuntu/tempest
_=/usr/bin/env
{0} tempest.api.network.admin.test_external_network_extension.ExternalNetworksTestJSON.test_create_external_network [0.679567s] ... ok
{0} tempest.api.network.admin.test_external_network_extension.ExternalNetworksTestJSON.test_delete_external_networks_with_floating_ip [0.753896s] ... ok
{0} tempest.api.network.admin.test_external_network_extension.ExternalNetworksTestJSON.test_list_external_networks [0.242929s] ... ok
{0} tempest.api.network.admin.test_external_network_extension.ExternalNetworksTestJSON.test_show_external_networks_attribute [0.259668s] ... ok
{0} tempest.api.network.admin.test_external_network_extension.ExternalNetworksTestJSON.test_update_external_network [0.319220s] ... ok
{0} tempest.api.network.admin.test_external_networks_negative.ExternalNetworksAdminNegativeTestJSON.test_create_port_with_precreated_floatingip_as_fixed_ip [0.882079s] ... ok
{0} tempest.api.network.admin.test_floating_ips_admin_actions.FloatingIPAdminTestJSON.test_create_list_show_floating_ip_with_tenant_id_by_admin [0.324084s] ... ok
{0} tempest.api.network.admin.test_floating_ips_admin_actions.FloatingIPAdminTestJSON.test_list_floating_ips_from_admin_and_nonadmin [1.301637s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_floating_ips_admin_actions.py", line 96, in test_list_floating_ips_from_admin_and_nonadmin
self.assertNotIn(floating_ip_admin['floatingip']['id'],
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 490, in assertNotIn
self.assertThat(haystack, matcher, message)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: ['2bb714cc-fe4a-4574-930b-e2c280cb49ec', '3771c2a2-3921-4ce4-9393-5a335bdf52b9', '6835ef66-1297-4b5a-b6d7-cb6c0d1b6c55'] matches Contains('3771c2a2-3921-4ce4-9393-5a335bdf52b9')
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:44,375 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:test_list_floating_ips_from_admin_and_nonadmin): 201 POST http://10.0.0.19:9696/v2.0/floatingips 0.564s
2026-03-30 13:10:44,376 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"floatingip": {"floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '361', 'x-openstack-request-id': 'req-b7965788-10f7-46ef-aa79-9781b2e74f1f', 'date': 'Mon, 30 Mar 2026 13:10:44 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingip": {"id": "3771c2a2-3921-4ce4-9393-5a335bdf52b9", "tenant_id": "34bfc6682e2f451b9b8e791664113f92", "floating_ip_address": "172.23.0.12", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "34bfc6682e2f451b9b8e791664113f92"}}'
2026-03-30 13:10:44,900 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:test_list_floating_ips_from_admin_and_nonadmin): 201 POST http://10.0.0.19:9696/v2.0/floatingips 0.524s
2026-03-30 13:10:44,901 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"floatingip": {"floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '361', 'x-openstack-request-id': 'req-3483f1a6-1f53-470f-bbbb-c5efbc91d13f', 'date': 'Mon, 30 Mar 2026 13:10:44 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingip": {"id": "2bb714cc-fe4a-4574-930b-e2c280cb49ec", "tenant_id": "024489d46d0c41a39c6540d28bb7c37a", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "024489d46d0c41a39c6540d28bb7c37a"}}'
2026-03-30 13:10:44,930 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:test_list_floating_ips_from_admin_and_nonadmin): 200 GET http://10.0.0.19:9696/v2.0/floatingips 0.029s
2026-03-30 13:10:44,930 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '1058', 'x-openstack-request-id': 'req-ec344b52-f0a6-4e59-a09d-7b9141e41e07', 'date': 'Mon, 30 Mar 2026 13:10:44 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingips": [{"id": "2bb714cc-fe4a-4574-930b-e2c280cb49ec", "tenant_id": "024489d46d0c41a39c6540d28bb7c37a", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "024489d46d0c41a39c6540d28bb7c37a"}, {"id": "3771c2a2-3921-4ce4-9393-5a335bdf52b9", "tenant_id": "34bfc6682e2f451b9b8e791664113f92", "floating_ip_address": "172.23.0.12", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "34bfc6682e2f451b9b8e791664113f92"}, {"id": "6835ef66-1297-4b5a-b6d7-cb6c0d1b6c55", "tenant_id": "0df58d14954f4c26ba459db2912a9aa1", "floating_ip_address": "172.23.0.10", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "0df58d14
954f4c26ba459db2912a9aa1"}]}'
2026-03-30 13:10:44,997 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:test_list_floating_ips_from_admin_and_nonadmin): 200 GET http://10.0.0.19:9696/v2.0/floatingips 0.067s
2026-03-30 13:10:44,998 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '1058', 'x-openstack-request-id': 'req-093fd985-69a2-451f-9810-730b549c107f', 'date': 'Mon, 30 Mar 2026 13:10:44 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingips": [{"id": "2bb714cc-fe4a-4574-930b-e2c280cb49ec", "tenant_id": "024489d46d0c41a39c6540d28bb7c37a", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "024489d46d0c41a39c6540d28bb7c37a"}, {"id": "3771c2a2-3921-4ce4-9393-5a335bdf52b9", "tenant_id": "34bfc6682e2f451b9b8e791664113f92", "floating_ip_address": "172.23.0.12", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "34bfc6682e2f451b9b8e791664113f92"}, {"id": "6835ef66-1297-4b5a-b6d7-cb6c0d1b6c55", "tenant_id": "0df58d14954f4c26ba459db2912a9aa1", "floating_ip_address": "172.23.0.10", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "0df58d14954f4c26ba459db2912a9aa1"}]}'
2026-03-30 13:10:45,067 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/floatingips/2bb714cc-fe4a-4574-930b-e2c280cb49ec 0.069s
2026-03-30 13:10:45,068 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-c3db273f-becd-470e-a582-9c5d2c669368', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:45 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips/2bb714cc-fe4a-4574-930b-e2c280cb49ec'}
Body: b''
2026-03-30 13:10:45,113 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/floatingips/3771c2a2-3921-4ce4-9393-5a335bdf52b9 0.045s
2026-03-30 13:10:45,113 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-494a05f5-db34-48d0-bfe2-676add69917a', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:45 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips/3771c2a2-3921-4ce4-9393-5a335bdf52b9'}
Body: b''
{0} setUpClass (tempest.api.network.admin.test_metering_extensions.MeteringIpV6TestJSON) ... SKIPPED: IPv6 Tests are disabled.
{0} setUpClass (tempest.api.network.admin.test_ports.PortsAdminExtendedAttrsIpV6TestJSON) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.admin.test_ports.PortsAdminExtendedAttrsTestJSON.test_create_port_binding_ext_attr [0.699336s] ... ok
{0} tempest.api.network.admin.test_ports.PortsAdminExtendedAttrsTestJSON.test_list_ports_binding_ext_attr [0.270973s] ... ok
{0} tempest.api.network.admin.test_ports.PortsAdminExtendedAttrsTestJSON.test_show_port_binding_ext_attr [0.224371s] ... ok
{0} tempest.api.network.admin.test_ports.PortsAdminExtendedAttrsTestJSON.test_update_port_binding_ext_attr [0.281385s] ... ok
{0} tempest.api.network.admin.test_routers.RoutersAdminTest.test_create_router_set_gateway_with_fixed_ip [1.623506s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 260, in test_create_router_set_gateway_with_fixed_ip
self.assertEqual(router['external_gateway_info'][
KeyError: 'external_fixed_ips'
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:55,870 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 201 POST http://10.0.0.19:9696/v2.0/networks 0.638s
2026-03-30 13:10:55,870 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-RoutersAdminTest-303475532", "router:external": true}}
Response - Headers: {'content-type': 'application/json', 'content-length': '445', 'x-openstack-request-id': 'req-51b44b2a-7139-451d-bff5-09cb0a3fb718', 'date': 'Mon, 30 Mar 2026 13:10:55 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"64a50642-5504-43a1-b492-3cacdd7d48b2","name":"tempest-RoutersAdminTest-303475532","tenant_id":"abc98c103b8048c8a45d916a1e42e878","project_id":"abc98c103b8048c8a45d916a1e42e878","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":true,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-RoutersAdminTest-1268715403","tempest-RoutersAdminTest-303475532"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:10:56,016 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.145s
2026-03-30 13:10:56,016 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "64a50642-5504-43a1-b492-3cacdd7d48b2", "cidr": "10.100.0.0/28", "ip_version": 4, "gateway_ip": "10.100.0.1", "enable_dhcp": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '488', 'x-openstack-request-id': 'req-ce96bc71-e8be-4ddd-b24b-757fbc7c5dc2', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"74ab6404-26af-45fe-8481-914de84fb3c0","name":"","tenant_id":"abc98c103b8048c8a45d916a1e42e878","network_id":"64a50642-5504-43a1-b492-3cacdd7d48b2","ip_version":4,"cidr":"10.100.0.0/28","allocation_pools":[{"start":"10.100.0.2","end":"10.100.0.14"}],"gateway_ip":"10.100.0.1","enable_dhcp":false,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.100.0.2","tags":[],"project_id":"abc98c103b8048c8a45d916a1e42e878"}}'
2026-03-30 13:10:56,231 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 201 POST http://10.0.0.19:9696/v2.0/ports 0.215s
2026-03-30 13:10:56,231 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"port": {"name": "tempest-RoutersAdminTest-470498819", "network_id": "64a50642-5504-43a1-b492-3cacdd7d48b2"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '699', 'x-openstack-request-id': 'req-fcbbc84e-841d-4f14-ab45-d2df3c3cf87a', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/ports'}
Body: b'{"port":{"name":"tempest-RoutersAdminTest-470498819","id":"3e0736f8-4d18-4950-bf13-8ceb6e5daebb","tenant_id":"abc98c103b8048c8a45d916a1e42e878","network_id":"64a50642-5504-43a1-b492-3cacdd7d48b2","mac_address":"02:3e:07:36:f8:4d","binding:vnic_type":"normal","binding:vif_details":{"port_filter":true},"binding:vif_type":"unbound","binding:host_id":null,"allowed_address_pairs":[],"fixed_ips":[{"ip_address":"10.100.0.3","subnet_id":"74ab6404-26af-45fe-8481-914de84fb3c0"}],"security_groups":["1c498678-ce4a-4d2c-a16c-d41cc8598d05"],"admin_state_up":true,"device_id":"","device_owner":"","status":"DOWN","port_security_enabled":true,"description":"","project_id":"abc98c103b8048c8a4
5d916a1e42e878"}}'
2026-03-30 13:10:56,316 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 204 DELETE http://10.0.0.19:9696/v2.0/ports/3e0736f8-4d18-4950-bf13-8ceb6e5daebb 0.084s
2026-03-30 13:10:56,317 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-e0a73b2c-da88-4bad-a0c6-f272b23bafce', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/3e0736f8-4d18-4950-bf13-8ceb6e5daebb'}
Body: b''
2026-03-30 13:10:56,406 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 201 POST http://10.0.0.19:9696/v2.0/routers 0.089s
2026-03-30 13:10:56,406 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"external_gateway_info": {"network_id": "64a50642-5504-43a1-b492-3cacdd7d48b2", "external_fixed_ips": [{"subnet_id": "74ab6404-26af-45fe-8481-914de84fb3c0", "ip_address": "10.100.0.3"}]}}}
Response - Headers: {'content-type': 'application/json', 'content-length': '452', 'x-openstack-request-id': 'req-e8c36891-b217-4e08-8488-d98e621cf655', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "b8e33c07-fa3e-4e92-9c58-525cef9cb9a6", "name": "default-logical-router", "tenant_id": "abc98c103b8048c8a45d916a1e42e878", "admin_state_up": true, "status": "ACTIVE", "external_gateway_info": {"network_id": "64a50642-5504-43a1-b492-3cacdd7d48b2", "enable_snat": true}, "fq_name": ["default-domain", "tempest-RoutersAdminTest-1268715403", "default-logical-router"], "description": "", "project_id": "abc98c103b8048c8a45d916a1e42e878"}}'
2026-03-30 13:10:56,466 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 204 DELETE http://10.0.0.19:9696/v2.0/routers/b8e33c07-fa3e-4e92-9c58-525cef9cb9a6 0.060s
2026-03-30 13:10:56,466 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-a53ec799-8a94-4b2b-b438-51fc8c620efa', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/b8e33c07-fa3e-4e92-9c58-525cef9cb9a6'}
Body: b''
2026-03-30 13:10:56,713 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/74ab6404-26af-45fe-8481-914de84fb3c0 0.246s
2026-03-30 13:10:56,713 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-cb7decb7-21cb-4780-88c3-fa2ebf0c5460', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/74ab6404-26af-45fe-8481-914de84fb3c0'}
Body: b''
2026-03-30 13:10:56,854 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/64a50642-5504-43a1-b492-3cacdd7d48b2 0.140s
2026-03-30 13:10:56,854 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-
d05e1811-88fc-4690-a6e9-d22c68a5a6e2', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/64a50642-5504-43a1-b492-3cacdd7d48b2'}
Body: b''
{0} tempest.api.network.admin.test_routers.RoutersAdminTest.test_create_router_setting_project_id [0.705929s] ... ok
{0} tempest.api.network.admin.test_routers.RoutersAdminTest.test_create_router_with_default_snat_value [0.710268s] ... ok
{0} tempest.api.network.admin.test_routers.RoutersAdminTest.test_create_router_with_snat_explicit [0.009463s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 101, in test_create_router_with_snat_explicit
create_body = self.admin_routers_client.create_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 27, in create_router
return self.create_resource(uri, post_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 62, in create_resource
resp, body = self.post(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 314, in post
resp_header, resp_body = self.request(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': 'Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:58,283 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_with_snat_explicit): 400 POST http://10.0.0.19:9696/v2.0/routers 0.008s
2026-03-30 13:10:58,283 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-snat-router-1449790720", "external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": false}}}
Response - Headers: {'content-length': '160', 'content-type': 'application/json', 'x-openstack-request-id': 'req-ef457fc3-c5a0-47f8-988d-f138b105b73a', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.", "detail": ""}}'
{0} tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_reset_gateway_without_snat [0.205261s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 214, in test_update_router_reset_gateway_without_snat
self.admin_routers_client.update_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 38, in update_router
return self.update_resource(uri, update_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': 'Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:58,356 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_reset_gateway_without_snat): 201 POST http://10.0.0.19:9696/v2.0/routers 0.071s
2026-03-30 13:10:58,356 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersAdminTest-router-900152647", "external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73"}, "admin_state_up": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '490', 'x-openstack-request-id': 'req-f004d9b1-6941-47e6-a919-8e304f45c6db', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "6a06f2d6-0bd7-4a42-95a5-9814bcc43d03", "name": "tempest-RoutersAdminTest-router-900152647", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": true}, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-900152647"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,362 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_reset_gateway_without_snat): 400 PUT http://10.0.0.19:9696/v2.0/routers/6a06f2d6-0bd7-4a42-95a5-9814bcc43d03 0.005s
2026-03-30 13:10:58,362 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": false}}}
Response - Headers: {'content-length': '160', 'content-type': 'application/json', 'x-openstack-request-id': 'req-6ba5154e-06c7-4fd3-97fa-d0e9e8b530bb', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/6a06f2d6-0bd7-4a42-95a5-9814bcc43d03'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.", "detail": ""}}'
2026-03-30 13:10:58,409 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=6a06f2d6-0bd7-4a42-95a5-9814bcc43d03 0.046s
2026-03-30 13:10:58,409 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-3c168db2-1e4d-4d70-9079-6192835d1762', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=6a06f2d6-0bd7-4a42-95a5-9814bcc43d03'}
Body: b'{"ports":[]}'
2026-03-30 13:10:58,489 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/6a06f2d6-0bd7-4a42-95a5-9814bcc43d03 0.080s
2026-03-30 13:10:58,490 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-6cd1d4e7-2042-445b-a358-79a19791c63a', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/6a06f2d6-0bd7-4a42-95a5-9814bcc43d03'}
Body: b''
{0} tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_set_gateway [0.256197s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 152, in test_update_router_set_gateway
self._verify_gateway_port(router['id'])
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 125, in _verify_gateway_port
self.assertEqual(len(list_body['ports']), 1)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 446, in assertEqual
self.assertThat(observed, matcher, message)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: 0 != 1
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:58,605 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway): 201 POST http://10.0.0.19:9696/v2.0/routers 0.114s
2026-03-30 13:10:58,605 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersAdminTest-router-388134573", "external_gateway_info": {}, "admin_state_up": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '419', 'x-openstack-request-id': 'req-08a48398-a5ee-412a-848b-c097c07010bf', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "9ecdec17-6e27-4b81-be3a-b00848b8f988", "name": "tempest-RoutersAdminTest-router-388134573", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-388134573"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,642 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway): 200 PUT http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988 0.037s
2026-03-30 13:10:58,642 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73"}}}
Response - Headers: {'content-type': 'application/json', 'content-length': '490', 'x-openstack-request-id': 'req-d0d02045-6224-4046-a352-bc790b996239', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988'}
Body: b'{"router": {"id": "9ecdec17-6e27-4b81-be3a-b00848b8f988", "name": "tempest-RoutersAdminTest-router-388134573", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": true}, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-388134573"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,655 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway): 200 GET http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988 0.012s
2026-03-30 13:10:58,655 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '490', 'x-openstack-request-id': 'req-ff14e307-f03a-49ab-a3a2-c2018beb75f1', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988'}
Body: b'{"router": {"id": "9ecdec17-6e27-4b81-be3a-b00848b8f988", "name": "tempest-RoutersAdminTest-router-388134573", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": true}, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-388134573"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,675 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway): 200 GET http://10.0.0.19:9696/v2.0/ports?network_id=cf7fd1b8-85b2-4779-8da9-72bbf8142d73&device_id=9ecdec17-6e27-
4b81-be3a-b00848b8f988&device_owner=network%3Arouter_gateway 0.020s
2026-03-30 13:10:58,675 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-07e23124-0b63-4353-928a-a9785f9c4555', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?network_id=cf7fd1b8-85b2-4779-8da9-72bbf8142d73&device_id=9ecdec17-6e27-4b81-be3a-b00848b8f988&device_owner=network%3Arouter_gateway'}
Body: b'{"ports":[]}'
2026-03-30 13:10:58,690 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=9ecdec17-6e27-4b81-be3a-b00848b8f988 0.014s
2026-03-30 13:10:58,690 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-c09b9898-5a43-46d1-8a74-46a5435c47a5', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=9ecdec17-6e27-4b81-be3a-b00848b8f988'}
Body: b'{"ports":[]}'
2026-03-30 13:10:58,746 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988 0.056s
2026-03-30 13:10:58,747 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-f660a2d5-b76c-496d-b0b0-d6be48c22ea7', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988'}
Body: b''
{0} tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_set_gateway_with_snat_explicit [0.165558s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 161, in test_update_router_set_gateway_with_snat_explicit
self.admin_routers_client.update_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 38, in update_router
return self.update_resource(uri, update_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': 'Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:58,815 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway_with_snat_explicit): 201 POST http://10.0.0.19:9696/v2.0/routers 0.067s
2026-03-30 13:10:58,816 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersAdminTest-router-2048965622", "external_gateway_info": {}, "admin_state_up": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '421', 'x-openstack-request-id': 'req-94a5a5a5-2f10-4300-ac8d-1d058a21f7f8', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "17dbee6e-59dc-4c42-9441-af4539b23ec3", "name": "tempest-RoutersAdminTest-router-2048965622", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-2048965622"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,821 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway_with_snat_explicit): 400 PUT http://10.0.0.19:9696/v2.0/routers/17dbee6e-59dc-4c42-9441-af4539b23ec3 0.005s
2026-03-30 13:10:58,821 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": true}}}
Response - Headers: {'content-length': '160', 'content-type': 'application/json', 'x-openstack-request-id': 'req-8bce6f68-b645-475d-bad7-f9a9463fbb46', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/17dbee6e-59dc-4c42-9441-af4539b23ec3'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.", "detail": ""}}'
2026-03-30 13:10:58,842 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=17dbee6e-59dc-4c42-9441-af4539b23ec3 0.020s
2026-03-30 13:10:58,842 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-accf88e3-6263-45d2-99ea-10dc0508d16a', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=17dbee6e-59dc-4c42-9441-af4539b23ec3'}
Body: b'{"ports":[]}'
2026-03-30 13:10:58,913 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/17dbee6e-59dc-4c42-9441-af4539b23ec3 0.070s
2026-03-30 13:10:58,913 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-e06ccb37-35ad-452c-87ef-c65024bec37f', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/17dbee6e-59dc-4c42-9441-af4539b23ec3'}
Body: b''
{0} tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_set_gateway_without_snat [0.149985s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 179, in test_update_router_set_gateway_without_snat
self.admin_routers_client.update_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 38, in update_router
return self.update_resource(uri, update_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': 'Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:58,969 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway_without_snat): 201 POST http://10.0.0.19:9696/v2.0/routers 0.052s
2026-03-30 13:10:58,969 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersAdminTest-router-51326971", "external_gateway_info": {}, "admin_state_up": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '417', 'x-openstack-request-id': 'req-3a18013b-a8af-47ed-8711-6f72b7ed4cdc', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "c78ef1f7-e11f-4ce7-b9fb-26a2140692bf", "name": "tempest-RoutersAdminTest-router-51326971", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-51326971"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,974 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway_without_snat): 400 PUT http://10.0.0.19:9696/v2.0/routers/c78ef1f7-e11f-4ce7-b9fb-26a2140692bf 0.005s
2026-03-30 13:10:58,975 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": false}}}
Response - Headers: {'content-length': '160', 'content-type': 'application/json', 'x-openstack-request-id': 'req-84eee7a6-7e1b-4aaa-85f2-92250149458c', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/c78ef1f7-e11f-4ce7-b9fb-26a2140692bf'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.", "detail": ""}}'
2026-03-30 13:10:58,992 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=c78ef1f7-e11f-4ce7-b9fb-26a2140692bf 0.017s
2026-03-30 13:10:58,993 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-149397ee-fc1c-4e72-86d3-d6b34ee95134', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=c78ef1f7-e11f-4ce7-b9fb-26a2140692bf'}
Body: b'{"ports":[]}'
2026-03-30 13:10:59,064 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/c78ef1f7-e11f-4ce7-b9fb-26a2140692bf 0.071s
2026-03-30 13:10:59,064 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-902ea6ee-f150-43aa-b1ae-e25ea9d7fd0b', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:59 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/c78ef1f7-e11f-4ce7-b9fb-26a2140692bf'}
Body: b''
{0} tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_unset_gateway [0.289987s] ... ok
{0} setUpClass (tempest.api.network.admin.test_routers.RoutersIpV6AdminTest) ... SKIPPED: IPv6 Tests are disabled.
{0} setUpClass (tempest.api.network.admin.test_routers_dvr.RoutersTestDVR) ... SKIPPED: 'distributed' flag not found. DVR Possibly not enabled
{0} setUpClass (tempest.api.network.admin.test_routers_negative.RoutersAdminNegativeIpV6Test) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.admin.test_routers_negative.RoutersAdminNegativeTest.test_router_set_gateway_used_ip_returns_409 [0.848762s] ... ok
{0} tempest.api.network.test_agent_management_negative.AgentManagementNegativeTest.test_list_agents_non_admin [0.090398s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_agent_management_negative.py", line 40, in test_list_agents_non_admin
body = self.reader_client.list_agents()
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/agents_client.py", line 58, in list_agents
return self.list_resources(uri, **filters)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 35, in list_resources
resp, body = self.get(req_uri)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 342, in get
return self.request('GET', url, extra_headers, headers,
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 872, in _error_checker
raise exceptions.NotFound(resp_body, resp=resp)
tempest.lib.exceptions.NotFound: Object not found
Details: {'type': 'HTTPNotFound', 'message': 'The resource could not be found.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:11,811 95384 INFO [tempest.lib.common.rest_client] Request (AgentManagementNegativeTest:test_list_agents_non_admin): 404 GET http://10.0.0.19:9696/v2.0/agents 0.089s
2026-03-30 13:11:11,812 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '103', 'content-type': 'application/json', 'x-openstack-request-id': 'req-8a5dbb2d-bb92-43a2-8588-a11e26776e22', 'date': 'Mon, 30 Mar 2026 13:11:11 GMT', 'connection': 'close', 'status': '404', 'content-location': 'http://10.0.0.19:9696/v2.0/agents'}
Body: b'{"NeutronError": {"type": "HTTPNotFound", "message": "The resource could not be found.", "detail": ""}}'
{0} setUpClass (tempest.api.network.test_allowed_address_pair.AllowedAddressPairIpV6TestJSON) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.test_allowed_address_pair.AllowedAddressPairTestJSON.test_create_list_port_with_address_pair [0.314569s] ... ok
{0} tempest.api.network.test_allowed_address_pair.AllowedAddressPairTestJSON.test_update_port_with_address_pair [0.303007s] ... ok
{0} tempest.api.network.test_allowed_address_pair.AllowedAddressPairTestJSON.test_update_port_with_cidr_address_pair [0.283019s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_allowed_address_pair.py", line 141, in test_update_port_with_cidr_address_pair
self._update_port_with_address(str(self.cidr.next()))
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_allowed_address_pair.py", line 111, in _update_port_with_address
body = self.ports_client.update_port(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/ports_client.py", line 39, in update_port
return self.update_resource(uri, post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'BadRequest', 'message': "Bad port request: Bad property in http_put: Error validating property virtual_machine_interface_allowed_address_pairs value {'allowed_address_pair': [{'ip': {'ip_prefix': '10.101.0.0', 'ip_prefix_len': 16}, 'mac': '02:69:7a:9b:c9:7f', 'address_mode': 'active-standby'}]} IPv4 Prefix length lesser than 24:it is 16 - is not acceptable.", 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:17,061 95384 INFO [tempest.lib.common.rest_client] Request (AllowedAddressPairTestJSON:test_update_port_with_cidr_address_pair): 201 POST http://10.0.0.19:9696/v2.0/ports 0.152s
2026-03-30 13:11:17,061 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"port": {"network_id": "69e0c3e8-928d-4cb7-8090-04b09d21a795", "name": "tempest-AllowedAddressPairTestJSON-2124656373"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '710', 'x-openstack-request-id': 'req-2a3efd81-df66-4c0a-951a-4e103865ddf5', 'date': 'Mon, 30 Mar 2026 13:11:17 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/ports'}
Body: b'{"port":{"name":"tempest-AllowedAddressPairTestJSON-2124656373","id":"52081f93-2595-4f5e-a73b-1aa8acd86ab1","tenant_id":"ba0208d611bd42019c9d48bbea621cba","network_id":"69e0c3e8-928d-4cb7-8090-04b09d21a795","mac_address":"02:52:08:1f:93:25","binding:vnic_type":"normal","binding:vif_details":{"port_filter":true},"binding:vif_type":"unbound","binding:host_id":null,"allowed_address_pairs":[],"fixed_ips":[{"ip_address":"10.100.0.4","subnet_id":"c1f79ad2-3265-4b28-8dc5-5a9a878301f8"}],"security_groups":["9a817e9b-8ee6-483d-8861-4d8f7fb480ae"],"admin_state_up":true,"device_id":"","device_owner":"","status":"DOWN","port_security_enabled":true,"description":"","project_id":"ba0208d611bd42019c9d48bbea621cba"}}'
2026-03-30 13:11:17,098 95384 INFO [tempest.lib.common.rest_client] Request (AllowedAddressPairTestJSON:test_update_port_with_cidr_address_pair): 400 PUT http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1 0.036s
2026-03-30 13:11:17,098 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"port": {"allowed_address_pairs": [{"ip_address": "10.101.0.0/16", "mac_address": "02:69:7a:9b:c9:7f"}]}}
Response - Headers: {'content-type': 'application/json', 'content-length': '403', 'x-openstack-request-id': 'req-0e025037-f5ac-4560-8138-3b232304b9c5', 'date': 'Mon, 30 Mar 2026 13:11:17 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1'}
Body: b'{"NeutronError": {"type": "BadRequest", "message": "Bad port request: Bad property in http_put: Error validating property virtual_machine_interface_allowed_address_pairs value {\'allowed_address_pair\': [{\'ip\': {\'ip_prefix\': \'10.101.0.0\', \'ip_prefix_len\': 16}, \'mac\': \'02:69:7a:9b:c9:7f\', \'address_mode\': \'active-standby\'}]} IPv4 Prefix length lesser than 24:it is 16 - is not acceptable.", "detail": ""}}'
2026-03-30 13:11:17,178 95384 INFO [tempest.lib.common.rest_client] Request (AllowedAddressPairTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1 0.079s
2026-03-30 13:11:17,178 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-1a8bd933-ea62-4109-ac25-d3f63e84b9e7', 'date': 'Mon, 30 Mar 2026 13:11:17 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1'}
Body: b''
2026-03-30 13:11:17,191 95384 INFO [tempest.lib.common.rest_client] Request (AllowedAddressPairTestJSON:_run_cleanups): 404 GET http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1 0.012s
2026-03-30 13:11:17,191 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '132', 'x-openstack
-request-id': 'req-0abef7bf-73c9-4394-88aa-8d6e3bd874d1', 'date': 'Mon, 30 Mar 2026 13:11:17 GMT', 'connection': 'close', 'status': '404', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1'}
Body: b'{"NeutronError": {"type": "PortNotFound", "message": "Port 52081f93-2595-4f5e-a73b-1aa8acd86ab1 could not be found.", "detail": ""}}'
{0} tempest.api.network.test_allowed_address_pair.AllowedAddressPairTestJSON.test_update_port_with_multiple_ip_mac_address_pair [0.553182s] ... ok
{0} setUpClass (tempest.api.network.test_dhcp_ipv6.NetworksTestDHCPv6) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.test_extensions.ExtensionsTestJSON.test_list_show_extensions [0.192938s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_extensions.py", line 83, in test_list_show_extensions
self.assertIn(e, actual_alias)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 450, in assertIn
self.assertThat(haystack, Contains(needle), message)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: 'l3_agent_scheduler' not in ['allowed-address-pairs', 'external-net', 'extra_dhcp_opt', 'router', 'net-mtu', 'net-mtu-writable', 'pagination', 'port-mac-address-regenerate', 'binding', 'port-security', 'project-id', 'provider', 'quotas', 'security-group', 'sorting', 'standard-attr-description', 'standard-attr-tag', 'trunk', 'contrail', 'ipam', 'policy', 'quota_details', 'service-interface', 'vf-binding', 'route-table']
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:21,048 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions 0.081s
2026-03-30 13:11:21,048 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '4644', 'x-openstack-request-id': 'req-9ad5851c-631f-4bd1-a19c-7cd4ea53bdb9', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions'}
Body: b'{"extensions": [{"name": "Allowed Address Pairs", "alias": "allowed-address-pairs", "description": "Provides allowed address pairs", "updated": "2013-07-23T10:00:00-00:00", "links": []}, {"name": "Neutron external network", "alias": "external-net", "description": "Adds external network attribute to network resource.", "updated": "2013-01-14T10:00:00-00:00", "links": []}, {"name": "Neutron Extra DHCP options", "alias": "extra_dhcp_opt", "description": "Extra options configuration for DHCP. For example PXE boot options to DHCP clients can be specified (e.g. tftp-server, server-ip-address, bootfile-name)", "updated": "2013-03-17T12:00:00-00:00", "links": []}, {"name": "Neutron L3 Router", "alias": "router", "description": "Router abstraction for basic L3 forwarding between L2 Neutron networks and access to external networks via a NAT gateway.", "updated": "2012-07-20T10:00:00-00:00", "links": []}, {"name": "Network MTU", "alias": "net-mtu", "description": "Provides MTU attribute for a network resource.", "updated": "2015-03-25T10:00:00-00:00", "links": []}, {"name": "Network MTU (writable)", "alias": "net-mtu-writable", "description": "Provides a writable MTU attribute for a network resource.", "updated": "2017-07-12T00:00:00-00:00", "links": []}, {"name": "Pagination support", "alias": "pagination", "description": "Extension that indicates that pagination is enabled.", "updated": "2016-06-12T00:00:00-00:00", "links": []}, {"name": "Neutron Port MAC address regenerate", "alias": "port-mac-address-regenerate", "description": "Network port MAC address regenerate", "updated": "2018-05-03T10:00:00-00:00", "links": []}, {"name": "Port Binding", "alias": "binding", "description": "Expose port bindings of a virtual port to external application", "updated": "2014-02-03T10:00:00-00:00", "links": []}, {"name": "Port Security", "alias": "port-security", "description": "Provides port security", "updated": "2012-07-23T10:00:00-00:00", "links": []}, {"name": "project_id field enabled", "alias": "project-id", "description": "Extension that indicates that project_id field is enabled.", "updated": "2016-09-09T09:09:09-09:09", "links": []}, {"name": "Provider Network", "alias": "provider", "description": "Expose mapping of virtual networks to physical networks", "updated": "2012-09-07T10:00:00-00:00", "links": []}, {"name": "Quota management support", "alias": "quotas", "description": "Expose functions for quotas management per project", "updated": "2012-07-29T10:00:00-00:00", "links": []}, {"name": "security-group", "alias": "security-group", "description": "The security groups extension.", "updated": "2012-10-05T10:00:00-00:00", "links": []}, {"name": "Sorting support", "alias": "sorting", "description": "Extension that indicates that sorting is enabled.", "updated": "2016-06-12T00:00:00-00:00", "links": []}, {"name": "standard-attr-description", "alias": "standard-attr-description", "description": "Extension to add descriptions to standard attributes", "updated": "2016-02-10T10:00:00-00:00", "links": []}, {"name": "Tag support for resources with standard attribute: port, subnet, subnetpool, network, router, floatingip, security_group, policy", "alias": "standard-attr-tag", "description": "Enables to set tag on resources with standard attribute.", "updated": "2017-01-01T00:00:00-00:00", "links": []}, {"name": "Trunk Extension", "alias": "trunk", "desc
ription": "Provides support for trunk ports", "updated": "2016-01-01T10:00:00-00:00", "links": []}, {"name": "Contrail Extension", "alias": "contrail", "description": "Contrail Extension", "updated": "2014-08-12T10:00:00-00:00", "links": []}, {"name": "Network IP Address Management", "alias": "ipam", "description": "Configuration object for holding common to a set of IP address blocks", "updated": "2012-07-20T10:00:00-00:00", "links": []}, {"name": "Network Policy", "alias": "policy", "description": "Configuration object for Network Policies", "updated": "2012-07-20T10:00:00-00:00", "links": []}, {"name": "Quota details management support", "alias": "quota_details", "description": "Expose fu
2026-03-30 13:11:21,053 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/allowed-address-pairs 0.004s
2026-03-30 13:11:21,053 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '184', 'x-openstack-request-id': 'req-5a2263e1-f03b-452d-a766-9b1e12518f4a', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/allowed-address-pairs'}
Body: b'{"extension": {"name": "Allowed Address Pairs", "alias": "allowed-address-pairs", "description": "Provides allowed address pairs", "updated": "2013-07-23T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,057 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/external-net 0.004s
2026-03-30 13:11:21,057 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '200', 'x-openstack-request-id': 'req-377b96e7-8061-4eee-894c-10e94b199347', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/external-net'}
Body: b'{"extension": {"name": "Neutron external network", "alias": "external-net", "description": "Adds external network attribute to network resource.", "updated": "2013-01-14T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,061 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/extra_dhcp_opt 0.004s
2026-03-30 13:11:21,061 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '304', 'x-openstack-request-id': 'req-72894410-be7c-4083-b430-928c9047c750', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/extra_dhcp_opt'}
Body: b'{"extension": {"name": "Neutron Extra DHCP options", "alias": "extra_dhcp_opt", "description": "Extra options configuration for DHCP. For example PXE boot options to DHCP clients can be specified (e.g. tftp-server, server-ip-address, bootfile-name)", "updated": "2013-03-17T12:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,065 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/router 0.004s
2026-03-30 13:11:21,065 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '256', 'x-openstack-reque
st-id': 'req-ed1d48ca-d165-4757-b9fe-9cb0a76fc5e2', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/router'}
Body: b'{"extension": {"name": "Neutron L3 Router", "alias": "router", "description": "Router abstraction for basic L3 forwarding between L2 Neutron networks and access to external networks via a NAT gateway.", "updated": "2012-07-20T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,069 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/net-mtu 0.004s
2026-03-30 13:11:21,069 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '176', 'x-openstack-request-id': 'req-4ad2690f-b394-4453-bf18-b8814a496939', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/net-mtu'}
Body: b'{"extension": {"name": "Network MTU", "alias": "net-mtu", "description": "Provides MTU attribute for a network resource.", "updated": "2015-03-25T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,073 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/net-mtu-writable 0.004s
2026-03-30 13:11:21,073 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '207', 'x-openstack-request-id': 'req-c67be0fd-f859-4675-81b3-fdb5488f0311', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/net-mtu-writable'}
Body: b'{"extension": {"name": "Network MTU (writable)", "alias": "net-mtu-writable", "description": "Provides a writable MTU attribute for a network resource.", "updated": "2017-07-12T00:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,077 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/pagination 0.003s
2026-03-30 13:11:21,077 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '192', 'x-openstack-request-id': 'req-ea683070-0602-4779-a1b2-a19ab20bd3e6', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/pagination'}
Body: b'{"extension": {"name": "Pagination support", "alias": "pagination", "description": "Extension that indicates that pagination is enabled.", "updated": "2016-06-12T00:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,081 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/port-mac-address-regenerate 0.004s
2026-03-30 13:11:21,081 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '209', 'x-openstack-request-id': 'req-1a79499b-fd6d-4be5-a16f-7853161e2fe4', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/port-mac-address-regenerate'}
Body: b'{"extension": {"name": "Neutron Port MAC address regenerate", "alias": "port-mac-address-regenerate", "descr
iption": "Network port MAC address regenerate", "updated": "2018-05-03T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,085 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/binding 0.003s
2026-03-30 13:11:21,085 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '193', 'x-openstack-request-id': 'req-18c4ac71-853a-4da7-8d66-60cc08c6b4f4', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/binding'}
Body: b'{"extension": {"name": "Port Binding", "alias": "binding", "description": "Expose port bindings of a virtual port to external application", "updated": "2014-02-03T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,090 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/port-security 0.004s
2026-03-30 13:11:21,090 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '160', 'x-openstack-request-id': 'req-035b213f-5783-417f-8050-a83f640bb5fe', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/port-security'}
Body: b'{"extension": {"name": "Port Security", "alias": "port-security", "description": "Provides port security", "updated": "2012-07-23T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,095 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/project-id 0.005s
2026-03-30 13:11:21,095 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '204', 'x-openstack-request-id': 'req-d0c726f8-6859-476b-968e-76e712cffa27', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/project-id'}
Body: b'{"extension": {"name": "project_id field enabled", "alias": "project-id", "description": "Extension that indicates that project_id field is enabled.", "updated": "2016-09-09T09:09:09-09:09", "links": []}}'
2026-03-30 13:11:21,099 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/provider 0.005s
2026-03-30 13:11:21,100 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '191', 'x-openstack-request-id': 'req-d68f807a-0d8e-4653-9864-19404d2696a6', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/provider'}
Body: b'{"extension": {"name": "Provider Network", "alias": "provider", "description": "Expose mapping of virtual networks to physical networks", "updated": "2012-09-07T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,105 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/quotas 0.005s
2026-03-30 13:11:21,105 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-
Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '192', 'x-openstack-request-id': 'req-acad0eb0-f150-4f58-9b74-cdeb81836151', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/quotas'}
Body: b'{"extension": {"name": "Quota management support", "alias": "quotas", "description": "Expose functions for quotas management per project", "updated": "2012-07-29T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,110 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/security-group 0.005s
2026-03-30 13:11:21,110 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '170', 'x-openstack-request-id': 'req-e7b619a1-d115-408a-93e8-752cf857a826', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/security-group'}
Body: b'{"extension": {"name": "security-group", "alias": "security-group", "description": "The security groups extension.", "updated": "2012-10-05T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,115 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/sorting 0.005s
2026-03-30 13:11:21,115 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '183', 'x-openstack-request-id': 'req-f6ff5bca-711b-4701-9168-2e5c5006bb8e', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/sorting'}
Body: b'{"extension": {"name": "Sorting support", "alias": "sorting", "description": "Extension that indicates that sorting is enabled.", "updated": "2016-06-12T00:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,120 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/standard-attr-description 0.005s
2026-03-30 13:11:21,120 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '214', 'x-openstack-request-id': 'req-2c5b0aeb-7706-40b9-bcb9-642dfbaed930', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/standard-attr-description'}
Body: b'{"extension": {"name": "standard-attr-description", "alias": "standard-attr-description", "description": "Extension to add descriptions to standard attributes", "updated": "2016-02-10T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,125 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/standard-attr-tag 0.004s
2026-03-30 13:11:21,125 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '313', 'x-openstack-request-id': 'req-1bb47255-20f9-41ae-8e52-232e76f890f7', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/standard-attr-tag'}
Body: b'{"extension": {"name": "T
ag support for resources with standard attribute: port, subnet, subnetpool, network, router, floatingip, security_group, policy", "alias": "standard-attr-tag", "description": "Enables to set tag on resources with standard attribute.", "updated": "2017-01-01T00:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,129 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/trunk 0.004s
2026-03-30 13:11:21,129 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '164', 'x-openstack-request-id': 'req-d30a632e-2eb1-4b50-98fd-f43ca6c58150', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/trunk'}
Body: b'{"extension": {"name": "Trunk Extension", "alias": "trunk", "description": "Provides support for trunk ports", "updated": "2016-01-01T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,133 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/contrail 0.004s
2026-03-30 13:11:21,133 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '156', 'x-openstack-request-id': 'req-686f5730-d3fc-459b-b405-7fcf74c04d55', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/contrail'}
Body: b'{"extension": {"name": "Contrail Extension", "alias": "contrail", "description": "Contrail Extension", "updated": "2014-08-12T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,138 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/ipam 0.004s
2026-03-30 13:11:21,138 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '214', 'x-openstack-request-id': 'req-be433f2e-187c-4862-b16a-39158fa45e32', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/ipam'}
Body: b'{"extension": {"name": "Network IP Address Management", "alias": "ipam", "description": "Configuration object for holding common to a set of IP address blocks", "updated": "2012-07-20T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,142 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/policy 0.004s
2026-03-30 13:11:21,142 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '173', 'x-openstack-request-id': 'req-209419e1-770a-4335-b674-dd3841bd46f4', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/policy'}
Body: b'{"extension": {"name": "Network Policy", "alias": "policy", "description": "Configuration object for Network Policies", "updated": "2012-07-20T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,146 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/quota_details 0.004s
2026-03-30 13:11:21,146 95384 DEBUG
[tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '213', 'x-openstack-request-id': 'req-3925b6cf-8289-4838-a720-d56d9bb33a51', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/quota_details'}
Body: b'{"extension": {"name": "Quota details management support", "alias": "quota_details", "description": "Expose functions for quotas usage statistics per project", "updated": "2017-02-10T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,150 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/service-interface 0.004s
2026-03-30 13:11:21,150 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '163', 'x-openstack-request-id': 'req-b74d26f2-8ed4-46e8-b2f2-aec7adeb4c4d', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/service-interface'}
Body: b'{"extension": {"name": "service-interface", "alias": "service-interface", "description": "Service Interface", "updated": "2014-08-12T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,155 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/vf-binding 0.004s
2026-03-30 13:11:21,155 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '161', 'x-openstack-request-id': 'req-a7c79452-7d15-4c03-a50d-a5436354febf', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/vf-binding'}
Body: b'{"extension": {"name": "vf-binding", "alias": "vf-binding", "description": "Bindings for Virtual Function", "updated": "2014-08-12T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,158 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/route-table 0.003s
2026-03-30 13:11:21,159 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '161', 'x-openstack-request-id': 'req-c820682d-431a-4c27-ab25-d2ff1b85502f', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/route-table'}
Body: b'{"extension": {"name": "route-table", "alias": "route-table", "description": "VPC route tables extension.", "updated": "2013-07-24T10:00:00-00:00", "links": []}}'
{0} setUpClass (tempest.api.network.test_extra_dhcp_options.ExtraDHCPOptionsIpV6TestJSON) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.test_extra_dhcp_options.ExtraDHCPOptionsTestJSON.test_create_list_port_with_extra_dhcp_options [0.294503s] ... ok
{0} tempest.api.network.test_extra_dhcp_options.ExtraDHCPOptionsTestJSON.test_update_show_port_with_extra_dhcp_options [0.080327s] ... ok
{0} tempest.api.network.test_floating_ips.FloatingIPTestJSON.test_create_floating_ip_specifying_a_fixed_ip_address [0.272819s] ... ok
{0} tempest.api.network.test_floating_ips.FloatingIPTestJSON.test_create_list_show_update_delete_floating_ip [0.283071s] ... ok
{0} tempest.api.network.test_floating_ips.FloatingIPTestJSON.test_create_update_floatingip_with_port_multiple_ip_address [0.643987s] ... ok
{0} tempest.api.network.test_floating_ips.FloatingIPTestJSON.test_floating_ip_delete_port [0.550877s] ... ok
{0} tempest.api.network.test_floating_ips.FloatingIPTestJSON.test_floating_ip_update_different_router [1.987664s] ... ok
{0} tempest.api.network.test_floating_ips_negative.FloatingIPNegativeTestJSON.test_associate_floatingip_port_ext_net_unreachable [0.156811s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_floating_ips_negative.py", line 91, in test_associate_floatingip_port_ext_net_unreachable
self.assertRaises(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 593, in assertRaises
self.assertThat(our_callable, matcher)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: > returned {'floatingip': {'id': '891a023b-46c9-4054-8303-130eae757cd6', 'tenant_id': '0722e7e3070c458ca95fc3bc08ab49a2', 'floating_ip_address': '172.23.0.13', 'floating_network_id': 'cf7fd1b8-85b2-4779-8da9-72bbf8142d73', 'router_id': 'eecf28a7-9191-4620-8cc4-1967cde34427', 'port_id': 'dcd022d9-473f-4d41-8ff3-f126a1f26496', 'fixed_ip_address': '10.100.0.3', 'status': 'ACTIVE', 'description': '', 'project_id': '0722e7e3070c458ca95fc3bc08ab49a2'}}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:40,177 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPNegativeTestJSON:test_associate_floatingip_port_ext_net_unreachable): 201 POST http://10.0.0.19:9696/v2.0/floatingips 0.057s
2026-03-30 13:11:40,177 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"floatingip": {"floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '361', 'x-openstack-request-id': 'req-93b47c0b-3804-4d19-918b-9917936abea1', 'date': 'Mon, 30 Mar 2026 13:11:40 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingip": {"id": "891a023b-46c9-4054-8303-130eae757cd6", "tenant_id": "0722e7e3070c458ca95fc3bc08ab49a2", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "0722e7e3070c458ca95fc3bc08ab49a2"}}'
2026-03-30 13:11:40,221 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPNegativeTestJSON:test_associate_floatingip_port_ext_net_unreachable): 200 PUT http://10.0.0.19:9696/v2.0/floatingips/891a023b-46c9-4054-8303-130eae757cd6 0.043s
2026-03-30 13:11:40,221 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"floatingip": {"port_id": "dcd022d9-473f-4d41-8ff3-f126a1f26496", "fixed_ip_address": "10.100.0.3"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '439', 'x-openstack-request-id': 'req-858644bb-988e-42f7-bbc0-6bfbd7ad34ef', 'date': 'Mon, 30 Mar 2026 13:11:40 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips/891a023b-46c9-4054-8303-130eae757cd6'}
Body: b'{"floatingip": {"id": "891a023b-46c9-4054-8303-130eae757cd6", "tenant_id": "0722e7e3070c458ca95fc3bc08ab49a2", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": "eecf28a7-9191-4620-8cc4-1967cde34427", "port_id": "dcd022d9-473f-4d41-8ff3-f126a1f26496", "fixed_ip_address": "10.100.0.3", "status": "ACTIVE", "description": "", "project_id": "0722e7e3070c458ca95fc3bc08ab49a2"}}'
2026-03-30 13:11:40,276 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPNegativeTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/floatingips/891a023b-46c9-4054-8303-130eae757cd6 0.055s
2026-03-30 13:11:40,276 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-268170b8-a32c-4028-9e32-d2d1702c41b7', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:11:40 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips/891a023b-46c9-4054-8303-130eae757cd6'}
Body: b''
{0} tempest.api.network.test_floating_ips_negative.FloatingIPNegativeTestJSON.test_create_floatingip_in_private_network [0.011557s] ... ok
{0} tempest.api.network.test_floating_ips_negative.FloatingIPNegativeTestJSON.test_create_floatingip_with_port_ext_net_unreachable [0.136636s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_floating_ips_negative.py", line 62, in test_create_floatingip_with_port_ext_net_unreachable
self.assertRaises(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 593, in assertRaises
self.assertThat(our_callable, matcher)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: > returned {'floatingip': {'id': '10b0e735-db62-42fb-a7f7-589c484f8ceb', 'tenant_id': '0722e7e3070c458ca95fc3bc08ab49a2', 'floating_ip_address': '172.23.0.13', 'floating_network_id': 'cf7fd1b8-85b2-4779-8da9-72bbf8142d73', 'router_id': 'eecf28a7-9191-4620-8cc4-1967cde34427', 'port_id': 'dcd022d9-473f-4d41-8ff3-f126a1f26496', 'fixed_ip_address': '10.100.0.3', 'status': 'ACTIVE', 'description': '', 'project_id': '0722e7e3070c458ca95fc3bc08ab49a2'}}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:40,426 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPNegativeTestJSON:test_create_floatingip_with_port_ext_net_unreachable): 201 POST http://10.0.0.19:9696/v2.0/floatingips 0.135s
2026-03-30 13:11:40,426 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"floatingip": {"floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "port_id": "dcd022d9-473f-4d41-8ff3-f126a1f26496", "fixed_ip_address": "10.100.0.3"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '439', 'x-openstack-request-id': 'req-7fae6c02-b9b7-4ea1-bc07-0378e271a369', 'date': 'Mon, 30 Mar 2026 13:11:40 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingip": {"id": "10b0e735-db62-42fb-a7f7-589c484f8ceb", "tenant_id": "0722e7e3070c458ca95fc3bc08ab49a2", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": "eecf28a7-9191-4620-8cc4-1967cde34427", "port_id": "dcd022d9-473f-4d41-8ff3-f126a1f26496", "fixed_ip_address": "10.100.0.3", "status": "ACTIVE", "description": "", "project_id": "0722e7e3070c458ca95fc3bc08ab49a2"}}'
{0} setUpClass (tempest.api.network.test_networks.BulkNetworkOpsIpV6Test) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.test_networks.BulkNetworkOpsTest.test_bulk_create_delete_network [0.916080s] ... ok
{0} tempest.api.network.test_networks.BulkNetworkOpsTest.test_bulk_create_delete_port [0.630086s] ... ok
{0} tempest.api.network.test_networks.BulkNetworkOpsTest.test_bulk_create_delete_subnet [0.980052s] ... ok
{0} setUpClass (tempest.api.network.test_networks.NetworksIpV6Test) ... SKIPPED: IPv6 Tests are disabled.
{0} setUpClass (tempest.api.network.test_networks.NetworksIpV6TestAttrs) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.test_networks.NetworksTest.test_create_delete_subnet_all_attributes [0.371823s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_create_delete_subnet_with_allocation_pools [0.371505s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_create_delete_subnet_with_dhcp_enabled [0.363066s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_create_delete_subnet_with_gw [0.379207s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_create_delete_subnet_with_gw_and_allocation_pools [0.380643s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_create_delete_subnet_with_host_routes_and_dns_nameservers [0.431602s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_create_delete_subnet_without_gateway [0.398742s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_create_update_delete_network_subnet [0.606103s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_create_update_network_description [0.193730s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_delete_network_with_subnet [0.387251s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_external_network_visibility [0.053585s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_list_networks [0.021753s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_list_networks_fields [0.020617s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_list_subnets [0.027438s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_list_subnets_fields [0.028771s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_show_network [0.015342s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_show_network_fields [0.013626s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_show_subnet [0.014534s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_show_subnet_fields [0.015113s] ... ok
{0} tempest.api.network.test_networks.NetworksTest.test_update_subnet_gw_dns_host_routes_dhcp [0.413105s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_networks.py", line 368, in test_update_subnet_gw_dns_host_routes_dhcp
body = self.subnets_client.update_subnet(subnet_id, name=new_name,
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/subnets_client.py", line 38, in update_subnet
return self.update_resource(uri, post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'BadRequest', 'message': 'Bad subnet request: update of gateway is not supported.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:54,667 95384 INFO [tempest.lib.common.rest_client] Request (NetworksTest:test_update_subnet_gw_dns_host_routes_dhcp): 201 POST http://10.0.0.19:9696/v2.0/networks 0.063s
2026-03-30 13:11:54,667 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-NetworksTest-test-network-973168029"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '459', 'x-openstack-request-id': 'req-1036e915-9428-4b2b-a833-2e07cad91fa4', 'date': 'Mon, 30 Mar 2026 13:11:54 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"585c95d3-1402-4bf8-9e37-315c0208b382","name":"tempest-NetworksTest-test-network-973168029","tenant_id":"77b6e4f4bfbb4186ac18d2b671369c2a","project_id":"77b6e4f4bfbb4186ac18d2b671369c2a","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-NetworksTest-287781406","tempest-NetworksTest-test-network-973168029"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:11:54,825 95384 INFO [tempest.lib.common.rest_client] Request (NetworksTest:test_update_subnet_gw_dns_host_routes_dhcp): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.158s
2026-03-30 13:11:54,826 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "585c95d3-1402-4bf8-9e37-315c0208b382", "cidr": "10.100.0.0/28", "ip_version": 4, "gateway_ip": "10.100.0.1", "host_routes": [{"destination": "10.20.0.0/32", "nexthop": "10.100.1.1"}], "dns_nameservers": ["8.8.4.4", "8.8.8.8"], "allocation_pools": [{"start": "10.100.0.3", "end": "10.100.0.7"}]}}
Response - Headers: {'content-type': 'application/json', 'content-length': '524', 'x-openstack-request-id': 'req-3e791460-c752-47d5-b45c-faa3b898e64e', 'date': 'Mon, 30 Mar 2026 13:11:54 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"5d264d8d-07bd-4dcc-9c94-0ae816d4c251","name":"","tenant_id":"77b6e4f4bfbb4186ac18d2b671369c2a","network_id":"585c95d3-1402-4bf8-9e37-315c0208b382","ip_version":4,"cidr":"10.100.0.0/28","allocation_pools":[{"start":"10.100.0.3","end":"10.100.0.7"}],"gateway_ip":"10.100.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":["8.8.4.4","8.8.8.8"],"host_routes":[{"destination":"10.20.0.0/32","nexthop":"10.100.1.1"}],"tags":[],"project_id":"77b6e4f4bfbb4186ac18d2b671369c2a"}}'
2026-03-30 13:11:54,934 95384 INFO [tempest.lib.common.rest_client] Request (NetworksTest:test_update_subnet_gw_dns_host_routes_dhcp): 400 PUT http://10.0.0.19:9696/v2.0/subnets/5d264d8d-07bd-4dcc-9c94-0ae816d4c251 0.108s
2026-03-30 13:11:54,934 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"name": "New_subnet", "host_routes": [{"destination": "10.20.0.0/32", "nexthop": "10.100.1.2"}], "dns_nameservers": ["7.8.8.8", "7.8.4.4"], "gateway_ip": "10.100.0.2", "enable_dhcp": true}}
Response - Headers: {'content-type': 'application/json', 'content-length': '124', 'x-openstack-request-id': 'req-3d5c6ef3-f6e2-41fd-96f3-fa76cb77dd94', 'date': 'Mon, 30 Mar 2026 13:11:54 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/5d264d8d-07bd-4dcc-9c94-0ae816d4c251'}
Body: b'{"NeutronError": {"type": "BadRequest", "message": "Bad subnet request: update of gateway is not supported.", "detail": ""}}'
2026-03-30 13:11:55,016 95384 INFO [tempest.lib.common.rest_client] Request (NetworksTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/585c95d3-1402-4bf8-9e37-315c0208b382 0.081s
2026-03
-30 13:11:55,016 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-6436eba6-01a0-4be3-a4ed-bc215b371871', 'date': 'Mon, 30 Mar 2026 13:11:55 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/585c95d3-1402-4bf8-9e37-315c0208b382'}
Body: b''
{0} tempest.api.network.test_networks_negative.NetworksNegativeTestJSON.test_create_port_on_non_existent_network [0.149158s] ... ok
{0} tempest.api.network.test_networks_negative.NetworksNegativeTestJSON.test_delete_non_existent_network [0.011926s] ... ok
{0} tempest.api.network.test_networks_negative.NetworksNegativeTestJSON.test_delete_non_existent_port [0.011837s] ... ok
{0} tempest.api.network.test_networks_negative.NetworksNegativeTestJSON.test_delete_non_existent_subnet [0.012137s] ... ok
{0} tempest.api.network.test_networks_negative.NetworksNegativeTestJSON.test_show_non_existent_network [0.011825s] ... ok
{0} tempest.api.network.test_networks_negative.NetworksNegativeTestJSON.test_show_non_existent_port [0.012720s] ... ok
{0} tempest.api.network.test_networks_negative.NetworksNegativeTestJSON.test_show_non_existent_subnet [0.014069s] ... ok
{0} tempest.api.network.test_networks_negative.NetworksNegativeTestJSON.test_update_non_existent_network [0.012125s] ... ok
{0} tempest.api.network.test_networks_negative.NetworksNegativeTestJSON.test_update_non_existent_port [0.012074s] ... ok
{0} tempest.api.network.test_networks_negative.NetworksNegativeTestJSON.test_update_non_existent_subnet [0.013396s] ... ok
{0} setUpClass (tempest.api.network.test_ports.PortsIpV6TestJSON) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.test_ports.PortsTestJSON.test_create_bulk_port [0.613370s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_create_port_in_allowed_allocation_pools [0.850781s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_create_port_with_no_securitygroups [0.787613s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_create_show_delete_port_user_defined_mac [0.364885s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_create_update_delete_port [0.309332s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_create_update_port_with_second_ip [1.598719s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_list_ports [0.053831s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_list_ports_fields [0.049089s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_port_list_filter_by_ip [1.024228s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_port_list_filter_by_ip_substr [1.095877s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_ports.py", line 303, in test_port_list_filter_by_ip_substr
self.assertIn(network['id'], port_net_ids)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 450, in assertIn
self.assertThat(haystack, Contains(needle), message)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: '9d850b25-7dee-4c87-b372-de514eff16a9' not in []
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:12:08,571 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:test_port_list_filter_by_ip_substr): 201 POST http://10.0.0.19:9696/v2.0/networks 0.066s
2026-03-30 13:12:08,571 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-PortsTestJSON-454978782"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '436', 'x-openstack-request-id': 'req-5afb36cf-68c9-4228-99d1-b17171c80b7d', 'date': 'Mon, 30 Mar 2026 13:12:08 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"9d850b25-7dee-4c87-b372-de514eff16a9","name":"tempest-PortsTestJSON-454978782","tenant_id":"69d3e8d4773a4b4b96b3e10c884244b0","project_id":"69d3e8d4773a4b4b96b3e10c884244b0","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-PortsTestJSON-889791200","tempest-PortsTestJSON-454978782"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:12:08,756 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:test_port_list_filter_by_ip_substr): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.184s
2026-03-30 13:12:08,756 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "9d850b25-7dee-4c87-b372-de514eff16a9", "cidr": "10.100.0.0/28", "ip_version": 4, "gateway_ip": "10.100.0.1"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '487', 'x-openstack-request-id': 'req-7627f162-0874-451b-a4f2-19e8a3de2604', 'date': 'Mon, 30 Mar 2026 13:12:08 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"2d8bac81-9755-484d-b5ff-6f7b7196ec12","name":"","tenant_id":"69d3e8d4773a4b4b96b3e10c884244b0","network_id":"9d850b25-7dee-4c87-b372-de514eff16a9","ip_version":4,"cidr":"10.100.0.0/28","allocation_pools":[{"start":"10.100.0.2","end":"10.100.0.14"}],"gateway_ip":"10.100.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.100.0.2","tags":[],"project_id":"69d3e8d4773a4b4b96b3e10c884244b0"}}'
2026-03-30 13:12:08,982 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:test_port_list_filter_by_ip_substr): 201 POST http://10.0.0.19:9696/v2.0/ports 0.226s
2026-03-30 13:12:08,983 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"port": {"network_id": "9d850b25-7dee-4c87-b372-de514eff16a9", "name": "tempest-PortsTestJSON-1045682038", "fixed_ips": [{"subnet_id": "2d8bac81-9755-484d-b5ff-6f7b7196ec12", "ip_address": "10.100.0.10"}]}}
Response - Headers: {'content-type': 'application/json', 'content-length': '698', 'x-openstack-request-id': 'req-957f130d-9d9b-44b7-a74f-8b164d3dc850', 'date': 'Mon, 30 Mar 2026 13:12:08 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/ports'}
Body: b'{"port":{"name":"tempest-PortsTestJSON-1045682038","id":"63c462f1-aa85-4536-886b-5b5d295b488a","tenant_id":"69d3e8d4773a4b4b96b3e10c884244b0","network_id":"9d850b25-7dee-4c87-b372-de514eff16a9","mac_address":"02:63:c4:62:f1:aa","binding:vnic_type":"normal","binding:vif_details":{"port_filter":true},"binding:vif_type":"unbound","binding:host_id":null,"allowed_address_pairs":[],"fixed_ips":[{"ip_address":"10.100.0.10","subnet_id":"2d8bac81-9755-484d-b5ff-6f7b7196ec12"}],"security_groups":["4be109cf-c56e-4f11-814f-2ee0a553e9e6"],"admin_state_up":true,"device_id":"","device_owner":"","status":"DOWN","port_security_enabled":true,"description":"","project_id":"69d3e8d4773a4b4b96b3e
10c884244b0"}}'
2026-03-30 13:12:09,132 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:test_port_list_filter_by_ip_substr): 201 POST http://10.0.0.19:9696/v2.0/ports 0.148s
2026-03-30 13:12:09,132 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"port": {"network_id": "9d850b25-7dee-4c87-b372-de514eff16a9", "name": "tempest-PortsTestJSON-1928390844", "fixed_ips": [{"subnet_id": "2d8bac81-9755-484d-b5ff-6f7b7196ec12", "ip_address": "10.100.0.9"}]}}
Response - Headers: {'content-type': 'application/json', 'content-length': '697', 'x-openstack-request-id': 'req-7233bd48-afa2-4529-96b7-3258f68915f2', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/ports'}
Body: b'{"port":{"name":"tempest-PortsTestJSON-1928390844","id":"559ac52b-5249-4d01-8df1-955aa195e4d3","tenant_id":"69d3e8d4773a4b4b96b3e10c884244b0","network_id":"9d850b25-7dee-4c87-b372-de514eff16a9","mac_address":"02:55:9a:c5:2b:52","binding:vnic_type":"normal","binding:vif_details":{"port_filter":true},"binding:vif_type":"unbound","binding:host_id":null,"allowed_address_pairs":[],"fixed_ips":[{"ip_address":"10.100.0.9","subnet_id":"2d8bac81-9755-484d-b5ff-6f7b7196ec12"}],"security_groups":["4be109cf-c56e-4f11-814f-2ee0a553e9e6"],"admin_state_up":true,"device_id":"","device_owner":"","status":"DOWN","port_security_enabled":true,"description":"","project_id":"69d3e8d4773a4b4b96b3e10c884244b0"}}'
2026-03-30 13:12:09,182 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:test_port_list_filter_by_ip_substr): 200 GET http://10.0.0.19:9696/v2.0/ports?fixed_ips=ip_address_substr%3D10.100.0.1 0.050s
2026-03-30 13:12:09,182 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-95be53be-252e-40a4-b1fa-eaa9755d0f53', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?fixed_ips=ip_address_substr%3D10.100.0.1'}
Body: b'{"ports":[]}'
2026-03-30 13:12:09,264 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/ports/559ac52b-5249-4d01-8df1-955aa195e4d3 0.080s
2026-03-30 13:12:09,264 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-0f41ee1b-8858-47df-ad67-520d11f20cb4', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/559ac52b-5249-4d01-8df1-955aa195e4d3'}
Body: b''
2026-03-30 13:12:09,276 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_run_cleanups): 404 GET http://10.0.0.19:9696/v2.0/ports/559ac52b-5249-4d01-8df1-955aa195e4d3 0.012s
2026-03-30 13:12:09,276 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '132', 'x-openstack-request-id': 'req-f92c71ad-d479-46d8-8dc5-f2c0058858d7', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '404', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/559ac52b-5249-4d01-8df1-955aa195e4d3'}
Body: b'{"NeutronError": {"type": "PortNotFound", "message": "Port 559ac52b-5249-4d01-8df1-955aa195e4d3 could not be found.", "detail": ""}}'
2026-03-30 13:12:09,352 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_
run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/ports/63c462f1-aa85-4536-886b-5b5d295b488a 0.075s
2026-03-30 13:12:09,352 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-5062adae-ca37-4fa4-898b-5c90dbdaf38a', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/63c462f1-aa85-4536-886b-5b5d295b488a'}
Body: b''
2026-03-30 13:12:09,368 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_run_cleanups): 404 GET http://10.0.0.19:9696/v2.0/ports/63c462f1-aa85-4536-886b-5b5d295b488a 0.015s
2026-03-30 13:12:09,368 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '132', 'x-openstack-request-id': 'req-d1e75a64-88d4-405e-9d8b-d803c19ac49d', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '404', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/63c462f1-aa85-4536-886b-5b5d295b488a'}
Body: b'{"NeutronError": {"type": "PortNotFound", "message": "Port 63c462f1-aa85-4536-886b-5b5d295b488a could not be found.", "detail": ""}}'
2026-03-30 13:12:09,531 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/2d8bac81-9755-484d-b5ff-6f7b7196ec12 0.163s
2026-03-30 13:12:09,532 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-0045359f-105d-43ba-af1e-e3a0c3b09b4c', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/2d8bac81-9755-484d-b5ff-6f7b7196ec12'}
Body: b''
2026-03-30 13:12:09,600 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/9d850b25-7dee-4c87-b372-de514eff16a9 0.068s
2026-03-30 13:12:09,600 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-cebb32d5-5692-4615-9f32-6febad2bba6e', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/9d850b25-7dee-4c87-b372-de514eff16a9'}
Body: b''
{0} tempest.api.network.test_ports.PortsTestJSON.test_port_list_filter_by_router_id [1.035023s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_show_port [0.022751s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_show_port_fields [0.015892s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_update_port_with_security_group_and_extra_attributes [1.791404s] ... ok
{0} tempest.api.network.test_ports.PortsTestJSON.test_update_port_with_two_security_groups_and_extra_attributes [2.365823s] ... ok
{0} setUpClass (tempest.api.network.test_routers.RoutersIpV6Test) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.test_routers.RoutersTest.test_add_multiple_router_interfaces [2.315789s] ... ok
{0} tempest.api.network.test_routers.RoutersTest.test_add_remove_router_interface_with_port_id [1.106990s] ... ok
{0} tempest.api.network.test_routers.RoutersTest.test_add_remove_router_interface_with_subnet_id [0.934877s] ... ok
{0} tempest.api.network.test_routers.RoutersTest.test_create_show_list_update_delete_router [0.209168s] ... ok
{0} tempest.api.network.test_routers.RoutersTest.test_router_interface_port_update_with_fixed_ip [1.118785s] ... ok
{0} tempest.api.network.test_routers.RoutersTest.test_update_delete_extra_route [3.717503s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_routers.py", line 207, in test_update_delete_extra_route
extra_route = self.routers_client.update_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 38, in update_router
return self.update_resource(uri, update_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': "Unrecognized attribute(s) 'routes'", 'detail': ''}
Captured traceback-1:
~~~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_routers.py", line 235, in _delete_extra_routes
self.routers_client.update_router(router_id, routes=None)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 38, in update_router
return self.update_resource(uri, update_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': "Unrecognized attribute(s) 'routes'", 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:12:24,059 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/routers 0.069s
2026-03-30 13:12:24,060 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersTest-router-1221190742", "external_gateway_info": {}, "admin_state_up": true}}
Response - Headers: {'content-type': 'application/json', 'content-length': '406', 'x-openstack-request-id': 'req-187befc8-58fb-4a6c-8167-1f46178b26df', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "name": "tempest-RoutersTest-router-1221190742", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "admin_state_up": true, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersTest-2100801926", "tempest-RoutersTest-router-1221190742"], "description": "", "project_id": "bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:24,191 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/networks 0.130s
2026-03-30 13:12:24,191 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-RoutersTest-1107194761"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '433', 'x-openstack-request-id': 'req-2cda0b78-6378-4888-99b4-ea574996cb2a', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"4c780e9e-1a41-423f-a5de-3570252d0d12","name":"tempest-RoutersTest-1107194761","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","project_id":"bf9fb4deb09248eab69472d76a36bbdc","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-RoutersTest-2100801926","tempest-RoutersTest-1107194761"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:12:24,345 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.153s
2026-03-30 13:12:24,345 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "4c780e9e-1a41-423f-a5de-3570252d0d12", "cidr": "10.100.0.0/28", "ip_version": 4, "gateway_ip": "10.100.0.1"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '487', 'x-openstack-request-id': 'req-4ec4a224-edb5-42a8-97de-802963a2b75e', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"bd497597-d368-412f-bb5d-49a58b905dac","name":"","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","network_id":"4c780e9e-1a41-423f-a5de-3570252d0d12","ip_version":4,"cidr":"10.100.0.0/28","allocation_pools":[{"start":"10.100.0.2","end":"10.100.0.14"}],"gateway_ip":"10.100.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.100.0.2","tags":[],"project_id":"bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:24,562 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface 0.217s
2026-03-30 13:12:24,562 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/js
on', 'X-Auth-Token': ''}
Body: {"subnet_id": "bd497597-d368-412f-bb5d-49a58b905dac"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-94c284b9-ec5c-453d-b6bb-97fc37155b1f', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "6f882be2-8941-4295-aec6-e4d8a8ad1020", "subnet_id": "bd497597-d368-412f-bb5d-49a58b905dac"}'
2026-03-30 13:12:24,633 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/networks 0.070s
2026-03-30 13:12:24,633 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-RoutersTest-1577756480"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '433', 'x-openstack-request-id': 'req-5ac40cfd-fdcc-43c6-bb0f-886789fbc1cc', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"45bd52ef-4010-4f66-bcb6-99ed13ab552e","name":"tempest-RoutersTest-1577756480","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","project_id":"bf9fb4deb09248eab69472d76a36bbdc","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-RoutersTest-2100801926","tempest-RoutersTest-1577756480"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:12:24,815 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.182s
2026-03-30 13:12:24,816 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "45bd52ef-4010-4f66-bcb6-99ed13ab552e", "cidr": "10.101.0.0/28", "ip_version": 4, "gateway_ip": "10.101.0.1"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '487', 'x-openstack-request-id': 'req-6742fc74-1c28-416b-9905-2133635976dd', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"75547173-e6c5-4766-9b1e-596faa0731c9","name":"","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","network_id":"45bd52ef-4010-4f66-bcb6-99ed13ab552e","ip_version":4,"cidr":"10.101.0.0/28","allocation_pools":[{"start":"10.101.0.2","end":"10.101.0.14"}],"gateway_ip":"10.101.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.101.0.2","tags":[],"project_id":"bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:25,077 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface 0.261s
2026-03-30 13:12:25,077 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "75547173-e6c5-4766-9b1e-596faa0731c9"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-eb49e4e5-3c62-4a4f-9fae-b82cbabb2d98', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4de
b09248eab69472d76a36bbdc", "port_id": "3927bb37-e5bd-4a22-92c6-78e48aa54eb2", "subnet_id": "75547173-e6c5-4766-9b1e-596faa0731c9"}'
2026-03-30 13:12:25,191 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/networks 0.113s
2026-03-30 13:12:25,191 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-RoutersTest-29881821"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '429', 'x-openstack-request-id': 'req-f6cbbb39-9fab-4298-80f5-c970450c5e46', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"34cb12ab-a637-480e-a652-17975b9dac54","name":"tempest-RoutersTest-29881821","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","project_id":"bf9fb4deb09248eab69472d76a36bbdc","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-RoutersTest-2100801926","tempest-RoutersTest-29881821"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:12:25,383 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.192s
2026-03-30 13:12:25,384 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "34cb12ab-a637-480e-a652-17975b9dac54", "cidr": "10.102.0.0/28", "ip_version": 4, "gateway_ip": "10.102.0.1"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '487', 'x-openstack-request-id': 'req-70a9a026-d8d5-4ccc-8edd-779d8f5431f1', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"2e83f57f-9474-4a98-a29a-e283d7e2cb34","name":"","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","network_id":"34cb12ab-a637-480e-a652-17975b9dac54","ip_version":4,"cidr":"10.102.0.0/28","allocation_pools":[{"start":"10.102.0.2","end":"10.102.0.14"}],"gateway_ip":"10.102.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.102.0.2","tags":[],"project_id":"bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:25,650 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface 0.266s
2026-03-30 13:12:25,650 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "2e83f57f-9474-4a98-a29a-e283d7e2cb34"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-5518ced7-3187-4052-bf48-c8ebf7ebf084', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "f389c9d1-3e3f-47c6-bfc8-a3ffcd09b2c9", "subnet_id": "2e83f57f-9474-4a98-a29a-e283d7e2cb34"}'
2026-03-30 13:12:25,729 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/networks 0.078s
2026-03-30 13:12:25,729 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-Route
rsTest-1899779716"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '433', 'x-openstack-request-id': 'req-424b27ea-61e9-4735-9632-a79c23bc12a7', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"a023672d-d0f4-417f-837f-6151e60a1e5f","name":"tempest-RoutersTest-1899779716","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","project_id":"bf9fb4deb09248eab69472d76a36bbdc","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-RoutersTest-2100801926","tempest-RoutersTest-1899779716"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:12:25,890 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.160s
2026-03-30 13:12:25,890 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "a023672d-d0f4-417f-837f-6151e60a1e5f", "cidr": "10.103.0.0/28", "ip_version": 4, "gateway_ip": "10.103.0.1"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '487', 'x-openstack-request-id': 'req-f1c8e85a-2fdf-45d9-a658-9dfa61677f44', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"9c6047ce-8006-44eb-9843-1d0a869c356f","name":"","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","network_id":"a023672d-d0f4-417f-837f-6151e60a1e5f","ip_version":4,"cidr":"10.103.0.0/28","allocation_pools":[{"start":"10.103.0.2","end":"10.103.0.14"}],"gateway_ip":"10.103.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.103.0.2","tags":[],"project_id":"bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:26,113 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface 0.222s
2026-03-30 13:12:26,113 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "9c6047ce-8006-44eb-9843-1d0a869c356f"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-c148458a-042a-4078-96ac-97ee99e53a0f', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "8747229e-70fc-4f8a-af40-5fe12197c878", "subnet_id": "9c6047ce-8006-44eb-9843-1d0a869c356f"}'
2026-03-30 13:12:26,119 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 400 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d 0.006s
2026-03-30 13:12:26,119 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"routes": [{"nexthop": "10.100.0.2", "destination": "10.100.0.0/28"}, {"nexthop": "10.101.0.2", "destination": "10.101.0.0/28"}, {"nexthop": "10.102.0.2", "destination": "10.102.0.0/28"}, {"nexthop": "10.103.0.2", "destination": "10.103.0.0/28"}]}}
Response - Headers: {'content-length': '107', 'content-type': 'application/json', 'x-openstack-request-id': 'req-a28d90bc-5ba1-47a6-9ae4-e857590f0d84', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696
/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Unrecognized attribute(s) \'routes\'", "detail": ""}}'
2026-03-30 13:12:26,252 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface 0.132s
2026-03-30 13:12:26,252 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "9c6047ce-8006-44eb-9843-1d0a869c356f"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-8c92b219-e91e-471e-92fe-fa6d7cbe6ccd', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "8747229e-70fc-4f8a-af40-5fe12197c878", "subnet_id": "9c6047ce-8006-44eb-9843-1d0a869c356f"}'
2026-03-30 13:12:26,453 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/9c6047ce-8006-44eb-9843-1d0a869c356f 0.201s
2026-03-30 13:12:26,454 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-a7840de8-ab40-4a1c-ad54-75ad7c5595a9', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/9c6047ce-8006-44eb-9843-1d0a869c356f'}
Body: b''
2026-03-30 13:12:26,524 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/a023672d-d0f4-417f-837f-6151e60a1e5f 0.070s
2026-03-30 13:12:26,524 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-37801d6c-52ea-40a4-a9d2-80dc965d57ee', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/a023672d-d0f4-417f-837f-6151e60a1e5f'}
Body: b''
2026-03-30 13:12:26,642 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface 0.118s
2026-03-30 13:12:26,642 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "2e83f57f-9474-4a98-a29a-e283d7e2cb34"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-8c031222-9a98-43e6-95f6-1864dfbe0e49', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "f389c9d1-3e3f-47c6-bfc8-a3ffcd09b2c9", "subnet_id": "2e83f57f-9474-4a98-a29a-e283d7e2cb34"}'
2026-03-30 13:12:26,799 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/2e83f57f-9474-4a98-a29a-e283d7e2cb34 0.156s
2026-03-30 13:12:26,799 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''
}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-ba0cf949-b8c6-4995-be8e-3ef5282cf125', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/2e83f57f-9474-4a98-a29a-e283d7e2cb34'}
Body: b''
2026-03-30 13:12:26,864 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/34cb12ab-a637-480e-a652-17975b9dac54 0.064s
2026-03-30 13:12:26,864 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-e7c48067-0974-4d51-b08d-fcee843138a1', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/34cb12ab-a637-480e-a652-17975b9dac54'}
Body: b''
2026-03-30 13:12:26,981 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface 0.116s
2026-03-30 13:12:26,981 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "75547173-e6c5-4766-9b1e-596faa0731c9"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-2c8f831e-cd0b-4571-add9-efd96ab743ce', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "3927bb37-e5bd-4a22-92c6-78e48aa54eb2", "subnet_id": "75547173-e6c5-4766-9b1e-596faa0731c9"}'
2026-03-30 13:12:27,168 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/75547173-e6c5-4766-9b1e-596faa0731c9 0.186s
2026-03-30 13:12:27,168 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-23e2a175-930c-4ed6-9912-b81810c00e0e', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/75547173-e6c5-4766-9b1e-596faa0731c9'}
Body: b''
2026-03-30 13:12:27,238 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/45bd52ef-4010-4f66-bcb6-99ed13ab552e 0.070s
2026-03-30 13:12:27,238 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-e8506e1c-65a7-4c3d-9f0b-6b0dcd58b1be', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/45bd52ef-4010-4f66-bcb6-99ed13ab552e'}
Body: b''
2026-03-30 13:12:27,357 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface 0.118s
2026-03-30 13:12:27,357 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "bd497597-d368-412f-bb5d-49a58b905dac"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199',
'x-openstack-request-id': 'req-e9871ce8-7dac-44fe-a212-54495f1f6d58', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "6f882be2-8941-4295-aec6-e4d8a8ad1020", "subnet_id": "bd497597-d368-412f-bb5d-49a58b905dac"}'
2026-03-30 13:12:27,554 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/bd497597-d368-412f-bb5d-49a58b905dac 0.197s
2026-03-30 13:12:27,555 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-97e03896-5f9d-413c-830e-b4885d37fd7b', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/bd497597-d368-412f-bb5d-49a58b905dac'}
Body: b''
2026-03-30 13:12:27,630 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/4c780e9e-1a41-423f-a5de-3570252d0d12 0.075s
2026-03-30 13:12:27,630 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-b19ba047-3e4a-415b-a720-d7498e97fff6', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/4c780e9e-1a41-423f-a5de-3570252d0d12'}
Body: b''
2026-03-30 13:12:27,636 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 400 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d 0.005s
2026-03-30 13:12:27,636 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"routes": null}}
Response - Headers: {'content-length': '107', 'content-type': 'application/json', 'x-openstack-request-id': 'req-2c5ab58a-63eb-4bef-8dc9-42e8bfb9123b', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Unrecognized attribute(s) \'routes\'", "detail": ""}}'
2026-03-30 13:12:27,653 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=ebd14134-67ad-44d8-bb38-440c21c5c95d 0.016s
2026-03-30 13:12:27,653 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-e4e11eda-23e8-4220-b0d6-86b668f0be3a', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=ebd14134-67ad-44d8-bb38-440c21c5c95d'}
Body: b'{"ports":[]}'
2026-03-30 13:12:27,707 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d 0.054s
2026-03-30 13:12:27,707 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-d8632131-2978-4015-a456-8f3eb37f654a', 'content
-length': '0', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d'}
Body: b''
{0} tempest.api.network.test_routers.RoutersTest.test_update_router_admin_state [0.181571s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_routers.py", line 248, in test_update_router_admin_state
self.assertTrue(show_body['router']['admin_state_up'])
File "/usr/lib/python3.10/unittest/case.py", line 687, in assertTrue
raise self.failureException(msg)
AssertionError: False is not true
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:12:27,768 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_router_admin_state): 201 POST http://10.0.0.19:9696/v2.0/routers 0.058s
2026-03-30 13:12:27,769 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersTest-router-1123879613", "external_gateway_info": {}, "admin_state_up": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '407', 'x-openstack-request-id': 'req-8a0e2b3a-62e1-43ce-98ca-e77422861e7f', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "8b8e8724-fb79-416b-b971-a00cdc4f8120", "name": "tempest-RoutersTest-router-1123879613", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersTest-2100801926", "tempest-RoutersTest-router-1123879613"], "description": "", "project_id": "bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:27,805 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_router_admin_state): 200 PUT http://10.0.0.19:9696/v2.0/routers/8b8e8724-fb79-416b-b971-a00cdc4f8120 0.036s
2026-03-30 13:12:27,806 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"admin_state_up": true}}
Response - Headers: {'content-type': 'application/json', 'content-length': '406', 'x-openstack-request-id': 'req-3287a0db-bb84-4d34-a1d5-5cce7e4275f4', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/8b8e8724-fb79-416b-b971-a00cdc4f8120'}
Body: b'{"router": {"id": "8b8e8724-fb79-416b-b971-a00cdc4f8120", "name": "tempest-RoutersTest-router-1123879613", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "admin_state_up": true, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersTest-2100801926", "tempest-RoutersTest-router-1123879613"], "description": "", "project_id": "bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:27,820 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_router_admin_state): 200 GET http://10.0.0.19:9696/v2.0/routers/8b8e8724-fb79-416b-b971-a00cdc4f8120 0.014s
2026-03-30 13:12:27,820 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '407', 'x-openstack-request-id': 'req-502fadbb-67f7-4fb8-8c52-6ef60edd4ccc', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/8b8e8724-fb79-416b-b971-a00cdc4f8120'}
Body: b'{"router": {"id": "8b8e8724-fb79-416b-b971-a00cdc4f8120", "name": "tempest-RoutersTest-router-1123879613", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersTest-2100801926", "tempest-RoutersTest-router-1123879613"], "description": "", "project_id": "bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:27,838 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=8b8e8724-fb79-416b-b971-a00cdc4f8120 0.015s
2026-03-30 13:12:27,838 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-o
penstack-request-id': 'req-1116197b-d27b-4218-a08f-d894e9305c6a', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=8b8e8724-fb79-416b-b971-a00cdc4f8120'}
Body: b'{"ports":[]}'
2026-03-30 13:12:27,891 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/8b8e8724-fb79-416b-b971-a00cdc4f8120 0.052s
2026-03-30 13:12:27,891 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-70cd58e6-f936-409d-bfc4-324ef3a2c1bc', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/8b8e8724-fb79-416b-b971-a00cdc4f8120'}
Body: b''
{0} tempest.api.network.test_routers_negative.DvrRoutersNegativeTest.test_router_create_tenant_distributed_returns_forbidden [0.059391s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_routers_negative.py", line 158, in test_router_create_tenant_distributed_returns_forbidden
self.assertRaises(lib_exc.Forbidden, self.create_router,
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 593, in assertRaises
self.assertThat(our_callable, matcher)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 609, in assertThat
mismatch_error = self._matchHelper(matchee, matcher, message, verbose)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 668, in _matchHelper
mismatch = matcher.match(matchee)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/matchers/_exception.py", line 152, in match
mismatch = self.exception_matcher.match(typed_exc_info)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/matchers/_higherorder.py", line 80, in match
mismatch = matcher.match(matchee)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 567, in match
raise matchee[1].with_traceback(matchee[2])
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/matchers/_exception.py", line 140, in match
result = actual_callable()
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 1362, in __call__
return self._callable_object(*self._args, **self._kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/base.py", line 195, in create_router
body = cls.routers_client.create_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 27, in create_router
return self.create_resource(uri, post_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 62, in create_resource
resp, body = self.post(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 314, in post
resp_header, resp_body = self.request(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': "Unrecognized attribute(s) 'distributed'", 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:12:30,423 95384 INFO [tempest.lib.common.rest_client] Request (DvrRoutersNegativeTest:test_router_create_tenant_distributed_returns_forbidden): 400 POST http://10.0.0.19:9696/v2.0/routers 0.057s
2026-03-30 13:12:30,424 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-DvrRoutersNegativeTest-router-935157539", "external_gateway_info": {}, "admin_state_up": false, "distributed": true}}
Response - Headers: {'content-length': '112', 'content-type': 'application/json', 'x-openstack-request-id': 'req-5de88118-aaf3-4294-a4a7-fe3bb3a368f1', 'date': 'Mon, 30 Mar 2026 13:12:30 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Unrecognized attribute(s) \'distributed\'", "detail": ""}}'
{0} setUpClass (tempest.api.network.test_routers_negative.RoutersNegativeIpV6Test) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.test_routers_negative.RoutersNegativeTest.test_add_router_interfaces_on_overlapping_subnets_returns_400 [0.921247s] ... ok
{0} tempest.api.network.test_routers_negative.RoutersNegativeTest.test_delete_non_existent_router_returns_404 [0.013449s] ... ok
{0} tempest.api.network.test_routers_negative.RoutersNegativeTest.test_router_add_gateway_invalid_network_returns_404 [0.021931s] ... ok
{0} tempest.api.network.test_routers_negative.RoutersNegativeTest.test_router_add_gateway_net_not_external_returns_400 [0.300901s] ... ok
{0} tempest.api.network.test_routers_negative.RoutersNegativeTest.test_router_remove_interface_in_use_returns_409 [0.306702s] ... ok
{0} tempest.api.network.test_routers_negative.RoutersNegativeTest.test_show_non_existent_router_returns_404 [0.012016s] ... ok
{0} tempest.api.network.test_routers_negative.RoutersNegativeTest.test_update_non_existent_router_returns_404 [0.011758s] ... ok
{0} setUpClass (tempest.api.network.test_security_groups.SecGroupIPv6Test) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.test_security_groups.SecGroupTest.test_create_list_update_show_delete_security_group [0.951523s] ... ok
{0} tempest.api.network.test_security_groups.SecGroupTest.test_create_security_group_rule_with_additional_args [0.639726s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_security_groups.py", line 211, in test_create_security_group_rule_with_additional_args
self._create_verify_security_group_rule(sg_id, direction,
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_security_groups.py", line 81, in _create_verify_security_group_rule
self.assertEqual(value, sec_group_rule[key],
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 446, in assertEqual
self.assertThat(observed, matcher, message)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: None != '0.0.0.0/0': Field remote_ip_prefix of the created security group rule does not match with None.
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:12:41,734 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:test_create_security_group_rule_with_additional_args): 201 POST http://10.0.0.19:9696/v2.0/security-groups 0.255s
2026-03-30 13:12:41,735 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"security_group": {"name": "tempest-secgroup--1983649953"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '1205', 'x-openstack-request-id': 'req-7f42196a-f566-4e02-a9f9-afff23107736', 'date': 'Mon, 30 Mar 2026 13:12:41 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/security-groups'}
Body: b'{"security_group": {"id": "79762aba-1c67-499f-bfad-e68dbfdf902c", "tenant_id": "92346b743f0444108dddf559e498793d", "name": "tempest-secgroup--1983649953", "description": "", "security_group_rules": [{"id": "6d041658-e736-4c4a-9474-dc1eeef49d93", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "79762aba-1c67-499f-bfad-e68dbfdf902c", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "created_at": "2026-03-30T13:12:41.527830", "updated_at": "2026-03-30T13:12:41.527830", "description": ""}, {"id": "aeeb7321-3c40-45c3-9d5a-ab302942a6c3", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "79762aba-1c67-499f-bfad-e68dbfdf902c", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "created_at": "2026-03-30T13:12:41.627493", "updated_at": "2026-03-30T13:12:41.627493", "description": ""}], "fq_name": ["default-domain", "tempest-SecGroupTest-37330516", "tempest-secgroup--1983649953"], "project_id": "92346b743f0444108dddf559e498793d"}}'
2026-03-30 13:12:41,894 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:test_create_security_group_rule_with_additional_args): 201 POST http://10.0.0.19:9696/v2.0/security-group-rules 0.159s
2026-03-30 13:12:41,895 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"security_group_rule": {"security_group_id": "79762aba-1c67-499f-bfad-e68dbfdf902c", "direction": "ingress", "ethertype": "IPv4", "protocol": "tcp", "port_range_min": 77, "port_range_max": 77, "remote_group_id": null, "remote_ip_prefix": null}}
Response - Headers: {'content-type': 'application/json', 'content-length': '416', 'x-openstack-request-id': 'req-c88e8f76-bc48-44ab-8061-dccb8cad1da3', 'date': 'Mon, 30 Mar 2026 13:12:41 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/security-group-rules'}
Body: b'{"security_group_rule": {"id": "8f08e481-cb3e-4c6b-aade-b7abd73c3fb4", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "79762aba-1c67-499f-bfad-e68dbfdf902c", "ethertype": "IPv4", "direction": "ingress", "protocol": "tcp", "port_range_min": 77, "port_range_max": 77, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "description": "", "project_id": "92346b743f0444108dddf559e498793d"}}'
2026-03-30 13:12:42,031 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/security-group-rules/8f08e481-cb3e-4c6b-aade-b7abd73c3fb4 0.135s
2026-03-30 13:12:42,031 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-2a171f53-8a5b-463b-a247-52d82a558aea', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:12:42 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/security-group-rules/8f08e481-c
b3e-4c6b-aade-b7abd73c3fb4'}
Body: b''
2026-03-30 13:12:42,051 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/security-group-rules 0.020s
2026-03-30 13:12:42,051 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '4079', 'x-openstack-request-id': 'req-b9caf049-91e6-4f10-a3ff-1b08c3078324', 'date': 'Mon, 30 Mar 2026 13:12:42 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/security-group-rules'}
Body: b'{"security_group_rules": [{"id": "97e63358-176a-42a3-a950-9e7d807eae74", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv4", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "description": null, "project_id": "45e0105e413847fbaaa710115d17ebf9"}, {"id": "8dba1fba-cda3-4488-a5af-48263dc52c9a", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv6", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "description": null, "project_id": "45e0105e413847fbaaa710115d17ebf9"}, {"id": "555cd6c5-0a7d-4772-8d5a-39390adf98c0", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "description": null, "project_id": "45e0105e413847fbaaa710115d17ebf9"}, {"id": "82df1397-2137-43fd-9f1a-006da3c7af2f", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "description": null, "project_id": "45e0105e413847fbaaa710115d17ebf9"}, {"id": "7931d365-f097-49cb-ad50-ffa344b895ef", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv4", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "description": null, "project_id": "92346b743f0444108dddf559e498793d"}, {"id": "f3fbcc45-d6ca-4de5-b192-a8e7befdf80f", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv6", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "description": null, "project_id": "92346b743f0444108dddf559e498793d"}, {"id": "a16a370f-3b7d-4730-8f28-efcb2d75e31d", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "description": null, "project_id": "92346b743f0444108dddf559e498793d"}, {"id": "08dc75b0-7131-4e3d-bd42-93b594a4b8d6", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "description": null, "project_id": "92346b743f0444108dddf559e498793d"}, {"id": "6d041658-e736-4c4a-9474-dc1eeef49d93", "t
enant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "79762aba-1c67-499f-bfad-e68dbfdf902c", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "description": "", "project_id": "92346b743f0444108dddf559e498793d"}, {"id": "aeeb7321-3c40-45c3-9d5a-ab302942a6c3", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "79762aba-1c67-499f-bfad-e68dbfdf902c", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "description": "", "project_id": "92346b743f0444108dddf559e498793d"}]}'
2026-03-30 13:12:42,102 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/security-groups/79762aba-1c67-499f-bfad-e68dbfdf902c 0.050s
2026-03-30 13:12:42,102 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-46ea9ad7-f260-4c35-b262-d1b89b9f55a1', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:12:42 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/security-groups/79762aba-1c67-499f-bfad-e68dbfdf902c'}
Body: b''
2026-03-30 13:12:42,118 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/security-groups 0.016s
2026-03-30 13:12:42,119 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '3803', 'x-openstack-request-id': 'req-38d61f61-34b4-447b-915d-7b68ecc22d09', 'date': 'Mon, 30 Mar 2026 13:12:42 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/security-groups'}
Body: b'{"security_groups": [{"id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "name": "default", "description": "Default security group", "security_group_rules": [{"id": "97e63358-176a-42a3-a950-9e7d807eae74", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv4", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "created_at": null, "updated_at": null, "description": null}, {"id": "8dba1fba-cda3-4488-a5af-48263dc52c9a", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv6", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "created_at": null, "updated_at": null, "description": null}, {"id": "555cd6c5-0a7d-4772-8d5a-39390adf98c0", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "created_at": null, "updated_at": null, "description": null}, {"id": "82df1397-2137-43fd-9f1a-006da3c7af2f", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "created_at": null, "updated_at": null, "description": null}], "fq_name": ["default-domain", "admin", "default"], "project_id": "45e0105e413847fbaaa710115d17ebf9"}, {"id": "5bcfbb02-78f7-4a5d-81d9-
7877a4e0857c", "tenant_id": "92346b743f0444108dddf559e498793d", "name": "default", "description": "Default security group", "security_group_rules": [{"id": "7931d365-f097-49cb-ad50-ffa344b895ef", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv4", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "created_at": null, "updated_at": null, "description": null}, {"id": "f3fbcc45-d6ca-4de5-b192-a8e7befdf80f", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv6", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "created_at": null, "updated_at": null, "description": null}, {"id": "a16a370f-3b7d-4730-8f28-efcb2d75e31d", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "created_at": null, "updated_at": null, "description": null}, {"id": "08dc75b0-7131-4e3d-bd42-93b594a4b8d6", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "created_at": null, "updated_at": null, "description": null}], "fq_name": ["default-domain", "tempest-SecGroupTest-37330516", "default"], "project_id": "92346b743f0444108dddf559e498793d"}]}'
{0} tempest.api.network.test_security_groups.SecGroupTest.test_create_security_group_rule_with_icmp_type_code [0.720840s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_security_groups.py", line 239, in test_create_security_group_rule_with_icmp_type_code
self._create_verify_security_group_rule(sg_id, direction,
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_security_groups.py", line 81, in _create_verify_security_group_rule
self.assertEqual(value, sec_group_rule[key],
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 446, in assertEqual
self.assertThat(observed, matcher, message)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: None != '0.0.0.0/0': Field remote_ip_prefix of the created security group rule does not match with None.
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:12:42,405 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:test_create_security_group_rule_with_icmp_type_code): 201 POST http://10.0.0.19:9696/v2.0/security-groups 0.284s
2026-03-30 13:12:42,405 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"security_group": {"name": "tempest-secgroup--1177941420"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '1205', 'x-openstack-request-id': 'req-2ab95395-5be9-4264-a5ef-0ef113c86b42', 'date': 'Mon, 30 Mar 2026 13:12:42 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/security-groups'}
Body: b'{"security_group": {"id": "d57b36f5-69c0-4719-adea-6ab5bbd72c3a", "tenant_id": "92346b743f0444108dddf559e498793d", "name": "tempest-secgroup--1177941420", "description": "", "security_group_rules": [{"id": "e2b752fa-d48d-4d7d-8991-aae84ea2f7aa", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "d57b36f5-69c0-4719-adea-6ab5bbd72c3a", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "created_at": "2026-03-30T13:12:42.162847", "updated_at": "2026-03-30T13:12:42.162847", "description": ""}, {"id": "f475bb5a-a9c0-4ba8-bda5-81dfeeac41f1", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "d57b36f5-69c0-4719-adea-6ab5bbd72c3a", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "created_at": "2026-03-30T13:12:42.290295", "updated_at": "2026-03-30T13:12:42.290295", "description": ""}], "fq_name": ["default-domain", "tempest-SecGroupTest-37330516", "tempest-secgroup--1177941420"], "project_id": "92346b743f0444108dddf559e498793d"}}'
2026-03-30 13:12:42,568 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:test_create_security_group_rule_with_icmp_type_code): 201 POST http://10.0.0.19:9696/v2.0/security-group-rules 0.163s
2026-03-30 13:12:42,568 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"security_group_rule": {"security_group_id": "d57b36f5-69c0-4719-adea-6ab5bbd72c3a", "direction": "ingress", "ethertype": "IPv4", "protocol": "icmp", "port_range_min": 3, "port_range_max": 2, "remote_group_id": null, "remote_ip_prefix": null}}
Response - Headers: {'content-type': 'application/json', 'content-length': '415', 'x-openstack-request-id': 'req-d7a4f4f2-11fc-4fdf-b6d9-cdf2127a05ac', 'date': 'Mon, 30 Mar 2026 13:12:42 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/security-group-rules'}
Body: b'{"security_group_rule": {"id": "8c48c999-c109-4e04-b645-21616e23c599", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "d57b36f5-69c0-4719-adea-6ab5bbd72c3a", "ethertype": "IPv4", "direction": "ingress", "protocol": "icmp", "port_range_min": 3, "port_range_max": 2, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "description": "", "project_id": "92346b743f0444108dddf559e498793d"}}'
2026-03-30 13:12:42,741 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/security-group-rules/8c48c999-c109-4e04-b645-21616e23c599 0.172s
2026-03-30 13:12:42,741 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-b6681009-59b1-4b53-a14e-866670938417', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:12:42 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/security-group-rules/8c48c999-c109-
4e04-b645-21616e23c599'}
Body: b''
2026-03-30 13:12:42,767 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/security-group-rules 0.025s
2026-03-30 13:12:42,767 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '4079', 'x-openstack-request-id': 'req-b4e0e120-9896-4c40-8c3e-b0985bcf4aa8', 'date': 'Mon, 30 Mar 2026 13:12:42 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/security-group-rules'}
Body: b'{"security_group_rules": [{"id": "97e63358-176a-42a3-a950-9e7d807eae74", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv4", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "description": null, "project_id": "45e0105e413847fbaaa710115d17ebf9"}, {"id": "8dba1fba-cda3-4488-a5af-48263dc52c9a", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv6", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "description": null, "project_id": "45e0105e413847fbaaa710115d17ebf9"}, {"id": "555cd6c5-0a7d-4772-8d5a-39390adf98c0", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "description": null, "project_id": "45e0105e413847fbaaa710115d17ebf9"}, {"id": "82df1397-2137-43fd-9f1a-006da3c7af2f", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "description": null, "project_id": "45e0105e413847fbaaa710115d17ebf9"}, {"id": "7931d365-f097-49cb-ad50-ffa344b895ef", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv4", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "description": null, "project_id": "92346b743f0444108dddf559e498793d"}, {"id": "f3fbcc45-d6ca-4de5-b192-a8e7befdf80f", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv6", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "description": null, "project_id": "92346b743f0444108dddf559e498793d"}, {"id": "a16a370f-3b7d-4730-8f28-efcb2d75e31d", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "description": null, "project_id": "92346b743f0444108dddf559e498793d"}, {"id": "08dc75b0-7131-4e3d-bd42-93b594a4b8d6", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "description": null, "project_id": "92346b743f0444108dddf559e498793d"}, {"id": "e2b752fa-d48d-4d7d-8991-aae84ea2f7aa", "tenan
t_id": "92346b743f0444108dddf559e498793d", "security_group_id": "d57b36f5-69c0-4719-adea-6ab5bbd72c3a", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "description": "", "project_id": "92346b743f0444108dddf559e498793d"}, {"id": "f475bb5a-a9c0-4ba8-bda5-81dfeeac41f1", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "d57b36f5-69c0-4719-adea-6ab5bbd72c3a", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "description": "", "project_id": "92346b743f0444108dddf559e498793d"}]}'
2026-03-30 13:12:42,824 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/security-groups/d57b36f5-69c0-4719-adea-6ab5bbd72c3a 0.056s
2026-03-30 13:12:42,824 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-b8e10db3-ab53-42d3-8d67-99795d694bbe', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:12:42 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/security-groups/d57b36f5-69c0-4719-adea-6ab5bbd72c3a'}
Body: b''
2026-03-30 13:12:42,840 95384 INFO [tempest.lib.common.rest_client] Request (SecGroupTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/security-groups 0.016s
2026-03-30 13:12:42,840 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '3803', 'x-openstack-request-id': 'req-a7bd87b7-4a0a-4df9-957a-56cc530e9edb', 'date': 'Mon, 30 Mar 2026 13:12:42 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/security-groups'}
Body: b'{"security_groups": [{"id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "name": "default", "description": "Default security group", "security_group_rules": [{"id": "97e63358-176a-42a3-a950-9e7d807eae74", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv4", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "created_at": null, "updated_at": null, "description": null}, {"id": "8dba1fba-cda3-4488-a5af-48263dc52c9a", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv6", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "created_at": null, "updated_at": null, "description": null}, {"id": "555cd6c5-0a7d-4772-8d5a-39390adf98c0", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "created_at": null, "updated_at": null, "description": null}, {"id": "82df1397-2137-43fd-9f1a-006da3c7af2f", "tenant_id": "45e0105e413847fbaaa710115d17ebf9", "security_group_id": "edd494e5-3bdf-455b-89f1-982b5c4341b6", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "created_at": null, "updated_at": null, "description": null}], "fq_name": ["default-domain", "admin", "default"], "project_id": "45e0105e413847fbaaa710115d17ebf9"}, {"id": "5bcfbb02-78f7-4a5d-81d9-7877
a4e0857c", "tenant_id": "92346b743f0444108dddf559e498793d", "name": "default", "description": "Default security group", "security_group_rules": [{"id": "7931d365-f097-49cb-ad50-ffa344b895ef", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv4", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "created_at": null, "updated_at": null, "description": null}, {"id": "f3fbcc45-d6ca-4de5-b192-a8e7befdf80f", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv6", "direction": "ingress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": null, "remote_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "created_at": null, "updated_at": null, "description": null}, {"id": "a16a370f-3b7d-4730-8f28-efcb2d75e31d", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv4", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": null, "created_at": null, "updated_at": null, "description": null}, {"id": "08dc75b0-7131-4e3d-bd42-93b594a4b8d6", "tenant_id": "92346b743f0444108dddf559e498793d", "security_group_id": "5bcfbb02-78f7-4a5d-81d9-7877a4e0857c", "ethertype": "IPv6", "direction": "egress", "protocol": "any", "port_range_min": 0, "port_range_max": 65535, "remote_ip_prefix": "::/0", "remote_group_id": null, "created_at": null, "updated_at": null, "description": null}], "fq_name": ["default-domain", "tempest-SecGroupTest-37330516", "default"], "project_id": "92346b743f0444108dddf559e498793d"}]}'
{0} tempest.api.network.test_security_groups.SecGroupTest.test_create_security_group_rule_with_protocol_integer_value [0.578446s] ... ok
{0} tempest.api.network.test_security_groups.SecGroupTest.test_create_security_group_rule_with_remote_group_id [1.109694s] ... ok
{0} tempest.api.network.test_security_groups.SecGroupTest.test_create_security_group_rule_with_remote_ip_prefix [0.712137s] ... ok
{0} tempest.api.network.test_security_groups.SecGroupTest.test_create_show_delete_security_group_rule [1.437047s] ... ok
{0} tempest.api.network.test_security_groups.SecGroupTest.test_delete_security_group_clear_associated_rules [0.500333s] ... ok
{0} tempest.api.network.test_security_groups.SecGroupTest.test_list_security_groups [0.016796s] ... ok
{0} setUpClass (tempest.api.network.test_security_groups_negative.NegativeSecGroupIPv6Test) ... SKIPPED: IPv6 Tests are disabled.
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_create_additional_default_security_group_fails [0.080984s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_create_duplicate_security_group_rule_fails [1.121646s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_create_security_group_rule_with_bad_ethertype [0.377231s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_create_security_group_rule_with_bad_protocol [0.348614s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_create_security_group_rule_with_bad_remote_ip_prefix [0.421059s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_create_security_group_rule_with_invalid_ports [0.457745s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_create_security_group_rule_with_non_existent_remote_groupid [0.386159s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_create_security_group_rule_with_non_existent_security_group [0.156312s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_create_security_group_rule_with_remote_ip_and_group [0.682010s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_create_security_group_update_name_default [0.397290s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_delete_non_existent_security_group [0.011943s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_show_non_existent_security_group [0.012745s] ... ok
{0} tempest.api.network.test_security_groups_negative.NegativeSecGroupTest.test_show_non_existent_security_group_rule [0.012665s] ... ok
{0} tempest.api.network.test_tags.TagsTest.test_create_list_show_update_delete_tags [0.158705s] ... FAILED
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_tags.py", line 74, in test_create_list_show_update_delete_tags
retrieved_tags = self.reader_client.list_tags(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/tags_client.py", line 84, in list_tags
return self.list_resources(uri)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 35, in list_resources
resp, body = self.get(req_uri)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 342, in get
return self.request('GET', url, extra_headers, headers,
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 947, in _error_checker
raise exceptions.ServerFault(resp_body, resp=resp,
tempest.lib.exceptions.ServerFault: Got server fault
Details: Request Failed: internal server error while processing your request.
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:12:58,249 95384 INFO [tempest.lib.common.rest_client] Request (TagsTest:test_create_list_show_update_delete_tags): 201 PUT http://10.0.0.19:9696/v2.0/networks/d7e9ae1c-c5d9-4621-8a2d-a021d6d920ef/tags/tempest-TagsTest-Tag-390232278 0.098s
2026-03-30 13:12:58,249 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: "{}"
Response - Headers: {'content-type': 'application/json', 'content-length': '32', 'x-openstack-request-id': 'req-0a01f0be-57bc-4d07-96b9-baefc3e0f258', 'date': 'Mon, 30 Mar 2026 13:12:58 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/d7e9ae1c-c5d9-4621-8a2d-a021d6d920ef/tags/tempest-TagsTest-Tag-390232278'}
Body: b'"tempest-TagsTest-Tag-390232278"'
2026-03-30 13:12:58,261 95384 INFO [tempest.lib.common.rest_client] Request (TagsTest:test_create_list_show_update_delete_tags): 204 GET http://10.0.0.19:9696/v2.0/networks/d7e9ae1c-c5d9-4621-8a2d-a021d6d920ef/tags/tempest-TagsTest-Tag-390232278 0.011s
2026-03-30 13:12:58,261 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-1f1b4db9-5967-4fde-8c86-2b59c9373bfd', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:12:58 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/d7e9ae1c-c5d9-4621-8a2d-a021d6d920ef/tags/tempest-TagsTest-Tag-390232278'}
Body: b''
2026-03-30 13:12:58,269 95384 INFO [tempest.lib.common.rest_client] Request (TagsTest:test_create_list_show_update_delete_tags): 500 GET http://10.0.0.19:9696/v2.0/networks/d7e9ae1c-c5d9-4621-8a2d-a021d6d920ef/tags 0.007s
2026-03-30 13:12:58,269 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '150', 'x-openstack-request-id': 'req-d8296c8c-3484-4ff9-9dc5-24357d6e942e', 'date': 'Mon, 30 Mar 2026 13:12:58 GMT', 'connection': 'close', 'status': '500', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/d7e9ae1c-c5d9-4621-8a2d-a021d6d920ef/tags'}
Body: b'{"NeutronError": {"type": "HTTPInternalServerError", "message": "Request Failed: internal server error while processing your request.", "detail": ""}}'
2026-03-30 13:12:58,309 95384 INFO [tempest.lib.common.rest_client] Request (TagsTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/d7e9ae1c-c5d9-4621-8a2d-a021d6d920ef/tags 0.039s
2026-03-30 13:12:58,309 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-9f67b7d2-791f-464e-8615-4598ccc3a3f8', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:12:58 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/d7e9ae1c-c5d9-4621-8a2d-a021d6d920ef/tags'}
Body: b''
{0} tempest.api.network.test_versions.NetworksApiDiscovery.test_api_version_resources [0.005226s] ... ok
{0} tempest.api.network.test_versions.NetworksApiDiscovery.test_show_api_v2_details [0.089433s] ... ok
==============================
Failed 20 tests - output below:
==============================
tempest.api.network.admin.test_floating_ips_admin_actions.FloatingIPAdminTestJSON.test_list_floating_ips_from_admin_and_nonadmin[id-64f2100b-5471-4ded-b46c-ddeeeb4f231b]
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_floating_ips_admin_actions.py", line 96, in test_list_floating_ips_from_admin_and_nonadmin
self.assertNotIn(floating_ip_admin['floatingip']['id'],
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 490, in assertNotIn
self.assertThat(haystack, matcher, message)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: ['2bb714cc-fe4a-4574-930b-e2c280cb49ec', '3771c2a2-3921-4ce4-9393-5a335bdf52b9', '6835ef66-1297-4b5a-b6d7-cb6c0d1b6c55'] matches Contains('3771c2a2-3921-4ce4-9393-5a335bdf52b9')
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:44,375 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:test_list_floating_ips_from_admin_and_nonadmin): 201 POST http://10.0.0.19:9696/v2.0/floatingips 0.564s
2026-03-30 13:10:44,376 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"floatingip": {"floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '361', 'x-openstack-request-id': 'req-b7965788-10f7-46ef-aa79-9781b2e74f1f', 'date': 'Mon, 30 Mar 2026 13:10:44 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingip": {"id": "3771c2a2-3921-4ce4-9393-5a335bdf52b9", "tenant_id": "34bfc6682e2f451b9b8e791664113f92", "floating_ip_address": "172.23.0.12", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "34bfc6682e2f451b9b8e791664113f92"}}'
2026-03-30 13:10:44,900 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:test_list_floating_ips_from_admin_and_nonadmin): 201 POST http://10.0.0.19:9696/v2.0/floatingips 0.524s
2026-03-30 13:10:44,901 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"floatingip": {"floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '361', 'x-openstack-request-id': 'req-3483f1a6-1f53-470f-bbbb-c5efbc91d13f', 'date': 'Mon, 30 Mar 2026 13:10:44 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingip": {"id": "2bb714cc-fe4a-4574-930b-e2c280cb49ec", "tenant_id": "024489d46d0c41a39c6540d28bb7c37a", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "024489d46d0c41a39c6540d28bb7c37a"}}'
2026-03-30 13:10:44,930 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:test_list_floating_ips_from_admin_and_nonadmin): 200 GET http://10.0.0.19:9696/v2.0/floatingips 0.029s
2026-03-30 13:10:44,930 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '1058', 'x-openstack-request-id': 'req-ec344b52-f0a6-4e59-a09d-7b9141e41e07', 'date': 'Mon, 30 Mar 2026 13:10:44 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingips": [{"id": "2bb714cc-fe4a-4574-930b-e2c280cb49ec", "tenant_id": "024489d46d0c41a39c6540d28bb7c37a", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "024489d46d0c41a39c6540d28bb7c37a"}, {"id": "3771c2a2-3921-4ce4-9393-5a335bdf52b9", "tenant_id": "34bfc6682e2f451b9b8e791664113f92", "floating_ip_address": "172.23.0.12", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "34bfc6682e2f451b9b8e791664113f92"}, {"id": "6835ef66-1297-4b5a-b6d7-cb6c0d1b6c55", "tenant_id": "0df58d14954f4c26ba459db2912a9aa1", "floating_ip_address": "172.23.0.10", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "0df58d14
954f4c26ba459db2912a9aa1"}]}'
2026-03-30 13:10:44,997 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:test_list_floating_ips_from_admin_and_nonadmin): 200 GET http://10.0.0.19:9696/v2.0/floatingips 0.067s
2026-03-30 13:10:44,998 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '1058', 'x-openstack-request-id': 'req-093fd985-69a2-451f-9810-730b549c107f', 'date': 'Mon, 30 Mar 2026 13:10:44 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingips": [{"id": "2bb714cc-fe4a-4574-930b-e2c280cb49ec", "tenant_id": "024489d46d0c41a39c6540d28bb7c37a", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "024489d46d0c41a39c6540d28bb7c37a"}, {"id": "3771c2a2-3921-4ce4-9393-5a335bdf52b9", "tenant_id": "34bfc6682e2f451b9b8e791664113f92", "floating_ip_address": "172.23.0.12", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "34bfc6682e2f451b9b8e791664113f92"}, {"id": "6835ef66-1297-4b5a-b6d7-cb6c0d1b6c55", "tenant_id": "0df58d14954f4c26ba459db2912a9aa1", "floating_ip_address": "172.23.0.10", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "0df58d14954f4c26ba459db2912a9aa1"}]}'
2026-03-30 13:10:45,067 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/floatingips/2bb714cc-fe4a-4574-930b-e2c280cb49ec 0.069s
2026-03-30 13:10:45,068 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-c3db273f-becd-470e-a582-9c5d2c669368', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:45 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips/2bb714cc-fe4a-4574-930b-e2c280cb49ec'}
Body: b''
2026-03-30 13:10:45,113 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPAdminTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/floatingips/3771c2a2-3921-4ce4-9393-5a335bdf52b9 0.045s
2026-03-30 13:10:45,113 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-494a05f5-db34-48d0-bfe2-676add69917a', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:45 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips/3771c2a2-3921-4ce4-9393-5a335bdf52b9'}
Body: b''
tempest.api.network.admin.test_routers.RoutersAdminTest.test_create_router_set_gateway_with_fixed_ip[id-cbe42f84-04c2-11e7-8adb-fa163e4fa634]
---------------------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 260, in test_create_router_set_gateway_with_fixed_ip
self.assertEqual(router['external_gateway_info'][
KeyError: 'external_fixed_ips'
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:55,870 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 201 POST http://10.0.0.19:9696/v2.0/networks 0.638s
2026-03-30 13:10:55,870 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-RoutersAdminTest-303475532", "router:external": true}}
Response - Headers: {'content-type': 'application/json', 'content-length': '445', 'x-openstack-request-id': 'req-51b44b2a-7139-451d-bff5-09cb0a3fb718', 'date': 'Mon, 30 Mar 2026 13:10:55 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"64a50642-5504-43a1-b492-3cacdd7d48b2","name":"tempest-RoutersAdminTest-303475532","tenant_id":"abc98c103b8048c8a45d916a1e42e878","project_id":"abc98c103b8048c8a45d916a1e42e878","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":true,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-RoutersAdminTest-1268715403","tempest-RoutersAdminTest-303475532"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:10:56,016 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.145s
2026-03-30 13:10:56,016 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "64a50642-5504-43a1-b492-3cacdd7d48b2", "cidr": "10.100.0.0/28", "ip_version": 4, "gateway_ip": "10.100.0.1", "enable_dhcp": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '488', 'x-openstack-request-id': 'req-ce96bc71-e8be-4ddd-b24b-757fbc7c5dc2', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"74ab6404-26af-45fe-8481-914de84fb3c0","name":"","tenant_id":"abc98c103b8048c8a45d916a1e42e878","network_id":"64a50642-5504-43a1-b492-3cacdd7d48b2","ip_version":4,"cidr":"10.100.0.0/28","allocation_pools":[{"start":"10.100.0.2","end":"10.100.0.14"}],"gateway_ip":"10.100.0.1","enable_dhcp":false,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.100.0.2","tags":[],"project_id":"abc98c103b8048c8a45d916a1e42e878"}}'
2026-03-30 13:10:56,231 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 201 POST http://10.0.0.19:9696/v2.0/ports 0.215s
2026-03-30 13:10:56,231 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"port": {"name": "tempest-RoutersAdminTest-470498819", "network_id": "64a50642-5504-43a1-b492-3cacdd7d48b2"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '699', 'x-openstack-request-id': 'req-fcbbc84e-841d-4f14-ab45-d2df3c3cf87a', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/ports'}
Body: b'{"port":{"name":"tempest-RoutersAdminTest-470498819","id":"3e0736f8-4d18-4950-bf13-8ceb6e5daebb","tenant_id":"abc98c103b8048c8a45d916a1e42e878","network_id":"64a50642-5504-43a1-b492-3cacdd7d48b2","mac_address":"02:3e:07:36:f8:4d","binding:vnic_type":"normal","binding:vif_details":{"port_filter":true},"binding:vif_type":"unbound","binding:host_id":null,"allowed_address_pairs":[],"fixed_ips":[{"ip_address":"10.100.0.3","subnet_id":"74ab6404-26af-45fe-8481-914de84fb3c0"}],"security_groups":["1c498678-ce4a-4d2c-a16c-d41cc8598d05"],"admin_state_up":true,"device_id":"","device_owner":"","status":"DOWN","port_security_enabled":true,"description":"","project_id":"abc98c103b8048c8a4
5d916a1e42e878"}}'
2026-03-30 13:10:56,316 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 204 DELETE http://10.0.0.19:9696/v2.0/ports/3e0736f8-4d18-4950-bf13-8ceb6e5daebb 0.084s
2026-03-30 13:10:56,317 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-e0a73b2c-da88-4bad-a0c6-f272b23bafce', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/3e0736f8-4d18-4950-bf13-8ceb6e5daebb'}
Body: b''
2026-03-30 13:10:56,406 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 201 POST http://10.0.0.19:9696/v2.0/routers 0.089s
2026-03-30 13:10:56,406 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"external_gateway_info": {"network_id": "64a50642-5504-43a1-b492-3cacdd7d48b2", "external_fixed_ips": [{"subnet_id": "74ab6404-26af-45fe-8481-914de84fb3c0", "ip_address": "10.100.0.3"}]}}}
Response - Headers: {'content-type': 'application/json', 'content-length': '452', 'x-openstack-request-id': 'req-e8c36891-b217-4e08-8488-d98e621cf655', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "b8e33c07-fa3e-4e92-9c58-525cef9cb9a6", "name": "default-logical-router", "tenant_id": "abc98c103b8048c8a45d916a1e42e878", "admin_state_up": true, "status": "ACTIVE", "external_gateway_info": {"network_id": "64a50642-5504-43a1-b492-3cacdd7d48b2", "enable_snat": true}, "fq_name": ["default-domain", "tempest-RoutersAdminTest-1268715403", "default-logical-router"], "description": "", "project_id": "abc98c103b8048c8a45d916a1e42e878"}}'
2026-03-30 13:10:56,466 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_set_gateway_with_fixed_ip): 204 DELETE http://10.0.0.19:9696/v2.0/routers/b8e33c07-fa3e-4e92-9c58-525cef9cb9a6 0.060s
2026-03-30 13:10:56,466 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-a53ec799-8a94-4b2b-b438-51fc8c620efa', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/b8e33c07-fa3e-4e92-9c58-525cef9cb9a6'}
Body: b''
2026-03-30 13:10:56,713 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/74ab6404-26af-45fe-8481-914de84fb3c0 0.246s
2026-03-30 13:10:56,713 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-cb7decb7-21cb-4780-88c3-fa2ebf0c5460', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/74ab6404-26af-45fe-8481-914de84fb3c0'}
Body: b''
2026-03-30 13:10:56,854 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/64a50642-5504-43a1-b492-3cacdd7d48b2 0.140s
2026-03-30 13:10:56,854 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-
d05e1811-88fc-4690-a6e9-d22c68a5a6e2', 'date': 'Mon, 30 Mar 2026 13:10:56 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/64a50642-5504-43a1-b492-3cacdd7d48b2'}
Body: b''
tempest.api.network.admin.test_routers.RoutersAdminTest.test_create_router_with_snat_explicit[id-ea74068d-09e9-4fd7-8995-9b6a1ace920f]
--------------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 101, in test_create_router_with_snat_explicit
create_body = self.admin_routers_client.create_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 27, in create_router
return self.create_resource(uri, post_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 62, in create_resource
resp, body = self.post(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 314, in post
resp_header, resp_body = self.request(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': 'Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:58,283 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_create_router_with_snat_explicit): 400 POST http://10.0.0.19:9696/v2.0/routers 0.008s
2026-03-30 13:10:58,283 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-snat-router-1449790720", "external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": false}}}
Response - Headers: {'content-length': '160', 'content-type': 'application/json', 'x-openstack-request-id': 'req-ef457fc3-c5a0-47f8-988d-f138b105b73a', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.", "detail": ""}}'
tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_reset_gateway_without_snat[id-f2faf994-97f4-410b-a831-9bc977b64374]
----------------------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 214, in test_update_router_reset_gateway_without_snat
self.admin_routers_client.update_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 38, in update_router
return self.update_resource(uri, update_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': 'Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:58,356 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_reset_gateway_without_snat): 201 POST http://10.0.0.19:9696/v2.0/routers 0.071s
2026-03-30 13:10:58,356 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersAdminTest-router-900152647", "external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73"}, "admin_state_up": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '490', 'x-openstack-request-id': 'req-f004d9b1-6941-47e6-a919-8e304f45c6db', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "6a06f2d6-0bd7-4a42-95a5-9814bcc43d03", "name": "tempest-RoutersAdminTest-router-900152647", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": true}, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-900152647"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,362 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_reset_gateway_without_snat): 400 PUT http://10.0.0.19:9696/v2.0/routers/6a06f2d6-0bd7-4a42-95a5-9814bcc43d03 0.005s
2026-03-30 13:10:58,362 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": false}}}
Response - Headers: {'content-length': '160', 'content-type': 'application/json', 'x-openstack-request-id': 'req-6ba5154e-06c7-4fd3-97fa-d0e9e8b530bb', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/6a06f2d6-0bd7-4a42-95a5-9814bcc43d03'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.", "detail": ""}}'
2026-03-30 13:10:58,409 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=6a06f2d6-0bd7-4a42-95a5-9814bcc43d03 0.046s
2026-03-30 13:10:58,409 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-3c168db2-1e4d-4d70-9079-6192835d1762', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=6a06f2d6-0bd7-4a42-95a5-9814bcc43d03'}
Body: b'{"ports":[]}'
2026-03-30 13:10:58,489 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/6a06f2d6-0bd7-4a42-95a5-9814bcc43d03 0.080s
2026-03-30 13:10:58,490 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-6cd1d4e7-2042-445b-a358-79a19791c63a', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/6a06f2d6-0bd7-4a42-95a5-9814bcc43d03'}
Body: b''
tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_set_gateway[id-6cc285d8-46bf-4f36-9b1a-783e3008ba79]
-------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 152, in test_update_router_set_gateway
self._verify_gateway_port(router['id'])
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 125, in _verify_gateway_port
self.assertEqual(len(list_body['ports']), 1)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 446, in assertEqual
self.assertThat(observed, matcher, message)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: 0 != 1
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:58,605 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway): 201 POST http://10.0.0.19:9696/v2.0/routers 0.114s
2026-03-30 13:10:58,605 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersAdminTest-router-388134573", "external_gateway_info": {}, "admin_state_up": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '419', 'x-openstack-request-id': 'req-08a48398-a5ee-412a-848b-c097c07010bf', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "9ecdec17-6e27-4b81-be3a-b00848b8f988", "name": "tempest-RoutersAdminTest-router-388134573", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-388134573"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,642 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway): 200 PUT http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988 0.037s
2026-03-30 13:10:58,642 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73"}}}
Response - Headers: {'content-type': 'application/json', 'content-length': '490', 'x-openstack-request-id': 'req-d0d02045-6224-4046-a352-bc790b996239', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988'}
Body: b'{"router": {"id": "9ecdec17-6e27-4b81-be3a-b00848b8f988", "name": "tempest-RoutersAdminTest-router-388134573", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": true}, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-388134573"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,655 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway): 200 GET http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988 0.012s
2026-03-30 13:10:58,655 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '490', 'x-openstack-request-id': 'req-ff14e307-f03a-49ab-a3a2-c2018beb75f1', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988'}
Body: b'{"router": {"id": "9ecdec17-6e27-4b81-be3a-b00848b8f988", "name": "tempest-RoutersAdminTest-router-388134573", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": true}, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-388134573"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,675 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway): 200 GET http://10.0.0.19:9696/v2.0/ports?network_id=cf7fd1b8-85b2-4779-8da9-72bbf8142d73&device_id=9ecdec17-6e27-
4b81-be3a-b00848b8f988&device_owner=network%3Arouter_gateway 0.020s
2026-03-30 13:10:58,675 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-07e23124-0b63-4353-928a-a9785f9c4555', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?network_id=cf7fd1b8-85b2-4779-8da9-72bbf8142d73&device_id=9ecdec17-6e27-4b81-be3a-b00848b8f988&device_owner=network%3Arouter_gateway'}
Body: b'{"ports":[]}'
2026-03-30 13:10:58,690 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=9ecdec17-6e27-4b81-be3a-b00848b8f988 0.014s
2026-03-30 13:10:58,690 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-c09b9898-5a43-46d1-8a74-46a5435c47a5', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=9ecdec17-6e27-4b81-be3a-b00848b8f988'}
Body: b'{"ports":[]}'
2026-03-30 13:10:58,746 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988 0.056s
2026-03-30 13:10:58,747 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-f660a2d5-b76c-496d-b0b0-d6be48c22ea7', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/9ecdec17-6e27-4b81-be3a-b00848b8f988'}
Body: b''
tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_set_gateway_with_snat_explicit[id-b386c111-3b21-466d-880c-5e72b01e1a33]
--------------------------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 161, in test_update_router_set_gateway_with_snat_explicit
self.admin_routers_client.update_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 38, in update_router
return self.update_resource(uri, update_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': 'Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:58,815 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway_with_snat_explicit): 201 POST http://10.0.0.19:9696/v2.0/routers 0.067s
2026-03-30 13:10:58,816 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersAdminTest-router-2048965622", "external_gateway_info": {}, "admin_state_up": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '421', 'x-openstack-request-id': 'req-94a5a5a5-2f10-4300-ac8d-1d058a21f7f8', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "17dbee6e-59dc-4c42-9441-af4539b23ec3", "name": "tempest-RoutersAdminTest-router-2048965622", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-2048965622"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,821 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway_with_snat_explicit): 400 PUT http://10.0.0.19:9696/v2.0/routers/17dbee6e-59dc-4c42-9441-af4539b23ec3 0.005s
2026-03-30 13:10:58,821 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": true}}}
Response - Headers: {'content-length': '160', 'content-type': 'application/json', 'x-openstack-request-id': 'req-8bce6f68-b645-475d-bad7-f9a9463fbb46', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/17dbee6e-59dc-4c42-9441-af4539b23ec3'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.", "detail": ""}}'
2026-03-30 13:10:58,842 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=17dbee6e-59dc-4c42-9441-af4539b23ec3 0.020s
2026-03-30 13:10:58,842 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-accf88e3-6263-45d2-99ea-10dc0508d16a', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=17dbee6e-59dc-4c42-9441-af4539b23ec3'}
Body: b'{"ports":[]}'
2026-03-30 13:10:58,913 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/17dbee6e-59dc-4c42-9441-af4539b23ec3 0.070s
2026-03-30 13:10:58,913 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-e06ccb37-35ad-452c-87ef-c65024bec37f', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/17dbee6e-59dc-4c42-9441-af4539b23ec3'}
Body: b''
tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_set_gateway_without_snat[id-96536bc7-8262-4fb2-9967-5c46940fa279]
--------------------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/admin/test_routers.py", line 179, in test_update_router_set_gateway_without_snat
self.admin_routers_client.update_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 38, in update_router
return self.update_resource(uri, update_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': 'Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:10:58,969 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway_without_snat): 201 POST http://10.0.0.19:9696/v2.0/routers 0.052s
2026-03-30 13:10:58,969 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersAdminTest-router-51326971", "external_gateway_info": {}, "admin_state_up": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '417', 'x-openstack-request-id': 'req-3a18013b-a8af-47ed-8711-6f72b7ed4cdc', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "c78ef1f7-e11f-4ce7-b9fb-26a2140692bf", "name": "tempest-RoutersAdminTest-router-51326971", "tenant_id": "8091b0c115194940b0093f4bca73d39c", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersAdminTest-447634618", "tempest-RoutersAdminTest-router-51326971"], "description": "", "project_id": "8091b0c115194940b0093f4bca73d39c"}}'
2026-03-30 13:10:58,974 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:test_update_router_set_gateway_without_snat): 400 PUT http://10.0.0.19:9696/v2.0/routers/c78ef1f7-e11f-4ce7-b9fb-26a2140692bf 0.005s
2026-03-30 13:10:58,975 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"external_gateway_info": {"network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "enable_snat": false}}}
Response - Headers: {'content-length': '160', 'content-type': 'application/json', 'x-openstack-request-id': 'req-84eee7a6-7e1b-4aaa-85f2-92250149458c', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/c78ef1f7-e11f-4ce7-b9fb-26a2140692bf'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Invalid input for external_gateway_info. Reason: Unexpected keys supplied: enable_snat.", "detail": ""}}'
2026-03-30 13:10:58,992 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=c78ef1f7-e11f-4ce7-b9fb-26a2140692bf 0.017s
2026-03-30 13:10:58,993 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-149397ee-fc1c-4e72-86d3-d6b34ee95134', 'date': 'Mon, 30 Mar 2026 13:10:58 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=c78ef1f7-e11f-4ce7-b9fb-26a2140692bf'}
Body: b'{"ports":[]}'
2026-03-30 13:10:59,064 95384 INFO [tempest.lib.common.rest_client] Request (RoutersAdminTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/c78ef1f7-e11f-4ce7-b9fb-26a2140692bf 0.071s
2026-03-30 13:10:59,064 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-902ea6ee-f150-43aa-b1ae-e25ea9d7fd0b', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:10:59 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/c78ef1f7-e11f-4ce7-b9fb-26a2140692bf'}
Body: b''
tempest.api.network.test_agent_management_negative.AgentManagementNegativeTest.test_list_agents_non_admin[id-e335be47-b9a1-46fd-be30-0874c0b751e6,negative]
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_agent_management_negative.py", line 40, in test_list_agents_non_admin
body = self.reader_client.list_agents()
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/agents_client.py", line 58, in list_agents
return self.list_resources(uri, **filters)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 35, in list_resources
resp, body = self.get(req_uri)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 342, in get
return self.request('GET', url, extra_headers, headers,
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 872, in _error_checker
raise exceptions.NotFound(resp_body, resp=resp)
tempest.lib.exceptions.NotFound: Object not found
Details: {'type': 'HTTPNotFound', 'message': 'The resource could not be found.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:11,811 95384 INFO [tempest.lib.common.rest_client] Request (AgentManagementNegativeTest:test_list_agents_non_admin): 404 GET http://10.0.0.19:9696/v2.0/agents 0.089s
2026-03-30 13:11:11,812 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '103', 'content-type': 'application/json', 'x-openstack-request-id': 'req-8a5dbb2d-bb92-43a2-8588-a11e26776e22', 'date': 'Mon, 30 Mar 2026 13:11:11 GMT', 'connection': 'close', 'status': '404', 'content-location': 'http://10.0.0.19:9696/v2.0/agents'}
Body: b'{"NeutronError": {"type": "HTTPNotFound", "message": "The resource could not be found.", "detail": ""}}'
tempest.api.network.test_allowed_address_pair.AllowedAddressPairTestJSON.test_update_port_with_cidr_address_pair[id-4d6d178f-34f6-4bff-a01c-0a2f8fe909e4]
---------------------------------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_allowed_address_pair.py", line 141, in test_update_port_with_cidr_address_pair
self._update_port_with_address(str(self.cidr.next()))
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_allowed_address_pair.py", line 111, in _update_port_with_address
body = self.ports_client.update_port(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/ports_client.py", line 39, in update_port
return self.update_resource(uri, post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'BadRequest', 'message': "Bad port request: Bad property in http_put: Error validating property virtual_machine_interface_allowed_address_pairs value {'allowed_address_pair': [{'ip': {'ip_prefix': '10.101.0.0', 'ip_prefix_len': 16}, 'mac': '02:69:7a:9b:c9:7f', 'address_mode': 'active-standby'}]} IPv4 Prefix length lesser than 24:it is 16 - is not acceptable.", 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:17,061 95384 INFO [tempest.lib.common.rest_client] Request (AllowedAddressPairTestJSON:test_update_port_with_cidr_address_pair): 201 POST http://10.0.0.19:9696/v2.0/ports 0.152s
2026-03-30 13:11:17,061 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"port": {"network_id": "69e0c3e8-928d-4cb7-8090-04b09d21a795", "name": "tempest-AllowedAddressPairTestJSON-2124656373"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '710', 'x-openstack-request-id': 'req-2a3efd81-df66-4c0a-951a-4e103865ddf5', 'date': 'Mon, 30 Mar 2026 13:11:17 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/ports'}
Body: b'{"port":{"name":"tempest-AllowedAddressPairTestJSON-2124656373","id":"52081f93-2595-4f5e-a73b-1aa8acd86ab1","tenant_id":"ba0208d611bd42019c9d48bbea621cba","network_id":"69e0c3e8-928d-4cb7-8090-04b09d21a795","mac_address":"02:52:08:1f:93:25","binding:vnic_type":"normal","binding:vif_details":{"port_filter":true},"binding:vif_type":"unbound","binding:host_id":null,"allowed_address_pairs":[],"fixed_ips":[{"ip_address":"10.100.0.4","subnet_id":"c1f79ad2-3265-4b28-8dc5-5a9a878301f8"}],"security_groups":["9a817e9b-8ee6-483d-8861-4d8f7fb480ae"],"admin_state_up":true,"device_id":"","device_owner":"","status":"DOWN","port_security_enabled":true,"description":"","project_id":"ba0208d611bd42019c9d48bbea621cba"}}'
2026-03-30 13:11:17,098 95384 INFO [tempest.lib.common.rest_client] Request (AllowedAddressPairTestJSON:test_update_port_with_cidr_address_pair): 400 PUT http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1 0.036s
2026-03-30 13:11:17,098 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"port": {"allowed_address_pairs": [{"ip_address": "10.101.0.0/16", "mac_address": "02:69:7a:9b:c9:7f"}]}}
Response - Headers: {'content-type': 'application/json', 'content-length': '403', 'x-openstack-request-id': 'req-0e025037-f5ac-4560-8138-3b232304b9c5', 'date': 'Mon, 30 Mar 2026 13:11:17 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1'}
Body: b'{"NeutronError": {"type": "BadRequest", "message": "Bad port request: Bad property in http_put: Error validating property virtual_machine_interface_allowed_address_pairs value {\'allowed_address_pair\': [{\'ip\': {\'ip_prefix\': \'10.101.0.0\', \'ip_prefix_len\': 16}, \'mac\': \'02:69:7a:9b:c9:7f\', \'address_mode\': \'active-standby\'}]} IPv4 Prefix length lesser than 24:it is 16 - is not acceptable.", "detail": ""}}'
2026-03-30 13:11:17,178 95384 INFO [tempest.lib.common.rest_client] Request (AllowedAddressPairTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1 0.079s
2026-03-30 13:11:17,178 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-1a8bd933-ea62-4109-ac25-d3f63e84b9e7', 'date': 'Mon, 30 Mar 2026 13:11:17 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1'}
Body: b''
2026-03-30 13:11:17,191 95384 INFO [tempest.lib.common.rest_client] Request (AllowedAddressPairTestJSON:_run_cleanups): 404 GET http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1 0.012s
2026-03-30 13:11:17,191 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '132', 'x-openstack
-request-id': 'req-0abef7bf-73c9-4394-88aa-8d6e3bd874d1', 'date': 'Mon, 30 Mar 2026 13:11:17 GMT', 'connection': 'close', 'status': '404', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/52081f93-2595-4f5e-a73b-1aa8acd86ab1'}
Body: b'{"NeutronError": {"type": "PortNotFound", "message": "Port 52081f93-2595-4f5e-a73b-1aa8acd86ab1 could not be found.", "detail": ""}}'
tempest.api.network.test_extensions.ExtensionsTestJSON.test_list_show_extensions[id-ef28c7e6-e646-4979-9d67-deb207bc5564,smoke]
-------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_extensions.py", line 83, in test_list_show_extensions
self.assertIn(e, actual_alias)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 450, in assertIn
self.assertThat(haystack, Contains(needle), message)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: 'l3_agent_scheduler' not in ['allowed-address-pairs', 'external-net', 'extra_dhcp_opt', 'router', 'net-mtu', 'net-mtu-writable', 'pagination', 'port-mac-address-regenerate', 'binding', 'port-security', 'project-id', 'provider', 'quotas', 'security-group', 'sorting', 'standard-attr-description', 'standard-attr-tag', 'trunk', 'contrail', 'ipam', 'policy', 'quota_details', 'service-interface', 'vf-binding', 'route-table']
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:21,048 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions 0.081s
2026-03-30 13:11:21,048 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '4644', 'x-openstack-request-id': 'req-9ad5851c-631f-4bd1-a19c-7cd4ea53bdb9', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions'}
Body: b'{"extensions": [{"name": "Allowed Address Pairs", "alias": "allowed-address-pairs", "description": "Provides allowed address pairs", "updated": "2013-07-23T10:00:00-00:00", "links": []}, {"name": "Neutron external network", "alias": "external-net", "description": "Adds external network attribute to network resource.", "updated": "2013-01-14T10:00:00-00:00", "links": []}, {"name": "Neutron Extra DHCP options", "alias": "extra_dhcp_opt", "description": "Extra options configuration for DHCP. For example PXE boot options to DHCP clients can be specified (e.g. tftp-server, server-ip-address, bootfile-name)", "updated": "2013-03-17T12:00:00-00:00", "links": []}, {"name": "Neutron L3 Router", "alias": "router", "description": "Router abstraction for basic L3 forwarding between L2 Neutron networks and access to external networks via a NAT gateway.", "updated": "2012-07-20T10:00:00-00:00", "links": []}, {"name": "Network MTU", "alias": "net-mtu", "description": "Provides MTU attribute for a network resource.", "updated": "2015-03-25T10:00:00-00:00", "links": []}, {"name": "Network MTU (writable)", "alias": "net-mtu-writable", "description": "Provides a writable MTU attribute for a network resource.", "updated": "2017-07-12T00:00:00-00:00", "links": []}, {"name": "Pagination support", "alias": "pagination", "description": "Extension that indicates that pagination is enabled.", "updated": "2016-06-12T00:00:00-00:00", "links": []}, {"name": "Neutron Port MAC address regenerate", "alias": "port-mac-address-regenerate", "description": "Network port MAC address regenerate", "updated": "2018-05-03T10:00:00-00:00", "links": []}, {"name": "Port Binding", "alias": "binding", "description": "Expose port bindings of a virtual port to external application", "updated": "2014-02-03T10:00:00-00:00", "links": []}, {"name": "Port Security", "alias": "port-security", "description": "Provides port security", "updated": "2012-07-23T10:00:00-00:00", "links": []}, {"name": "project_id field enabled", "alias": "project-id", "description": "Extension that indicates that project_id field is enabled.", "updated": "2016-09-09T09:09:09-09:09", "links": []}, {"name": "Provider Network", "alias": "provider", "description": "Expose mapping of virtual networks to physical networks", "updated": "2012-09-07T10:00:00-00:00", "links": []}, {"name": "Quota management support", "alias": "quotas", "description": "Expose functions for quotas management per project", "updated": "2012-07-29T10:00:00-00:00", "links": []}, {"name": "security-group", "alias": "security-group", "description": "The security groups extension.", "updated": "2012-10-05T10:00:00-00:00", "links": []}, {"name": "Sorting support", "alias": "sorting", "description": "Extension that indicates that sorting is enabled.", "updated": "2016-06-12T00:00:00-00:00", "links": []}, {"name": "standard-attr-description", "alias": "standard-attr-description", "description": "Extension to add descriptions to standard attributes", "updated": "2016-02-10T10:00:00-00:00", "links": []}, {"name": "Tag support for resources with standard attribute: port, subnet, subnetpool, network, router, floatingip, security_group, policy", "alias": "standard-attr-tag", "description": "Enables to set tag on resources with standard attribute.", "updated": "2017-01-01T00:00:00-00:00", "links": []}, {"name": "Trunk Extension", "alias": "trunk", "desc
ription": "Provides support for trunk ports", "updated": "2016-01-01T10:00:00-00:00", "links": []}, {"name": "Contrail Extension", "alias": "contrail", "description": "Contrail Extension", "updated": "2014-08-12T10:00:00-00:00", "links": []}, {"name": "Network IP Address Management", "alias": "ipam", "description": "Configuration object for holding common to a set of IP address blocks", "updated": "2012-07-20T10:00:00-00:00", "links": []}, {"name": "Network Policy", "alias": "policy", "description": "Configuration object for Network Policies", "updated": "2012-07-20T10:00:00-00:00", "links": []}, {"name": "Quota details management support", "alias": "quota_details", "description": "Expose fu
2026-03-30 13:11:21,053 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/allowed-address-pairs 0.004s
2026-03-30 13:11:21,053 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '184', 'x-openstack-request-id': 'req-5a2263e1-f03b-452d-a766-9b1e12518f4a', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/allowed-address-pairs'}
Body: b'{"extension": {"name": "Allowed Address Pairs", "alias": "allowed-address-pairs", "description": "Provides allowed address pairs", "updated": "2013-07-23T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,057 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/external-net 0.004s
2026-03-30 13:11:21,057 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '200', 'x-openstack-request-id': 'req-377b96e7-8061-4eee-894c-10e94b199347', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/external-net'}
Body: b'{"extension": {"name": "Neutron external network", "alias": "external-net", "description": "Adds external network attribute to network resource.", "updated": "2013-01-14T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,061 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/extra_dhcp_opt 0.004s
2026-03-30 13:11:21,061 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '304', 'x-openstack-request-id': 'req-72894410-be7c-4083-b430-928c9047c750', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/extra_dhcp_opt'}
Body: b'{"extension": {"name": "Neutron Extra DHCP options", "alias": "extra_dhcp_opt", "description": "Extra options configuration for DHCP. For example PXE boot options to DHCP clients can be specified (e.g. tftp-server, server-ip-address, bootfile-name)", "updated": "2013-03-17T12:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,065 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/router 0.004s
2026-03-30 13:11:21,065 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '256', 'x-openstack-reque
st-id': 'req-ed1d48ca-d165-4757-b9fe-9cb0a76fc5e2', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/router'}
Body: b'{"extension": {"name": "Neutron L3 Router", "alias": "router", "description": "Router abstraction for basic L3 forwarding between L2 Neutron networks and access to external networks via a NAT gateway.", "updated": "2012-07-20T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,069 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/net-mtu 0.004s
2026-03-30 13:11:21,069 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '176', 'x-openstack-request-id': 'req-4ad2690f-b394-4453-bf18-b8814a496939', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/net-mtu'}
Body: b'{"extension": {"name": "Network MTU", "alias": "net-mtu", "description": "Provides MTU attribute for a network resource.", "updated": "2015-03-25T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,073 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/net-mtu-writable 0.004s
2026-03-30 13:11:21,073 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '207', 'x-openstack-request-id': 'req-c67be0fd-f859-4675-81b3-fdb5488f0311', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/net-mtu-writable'}
Body: b'{"extension": {"name": "Network MTU (writable)", "alias": "net-mtu-writable", "description": "Provides a writable MTU attribute for a network resource.", "updated": "2017-07-12T00:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,077 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/pagination 0.003s
2026-03-30 13:11:21,077 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '192', 'x-openstack-request-id': 'req-ea683070-0602-4779-a1b2-a19ab20bd3e6', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/pagination'}
Body: b'{"extension": {"name": "Pagination support", "alias": "pagination", "description": "Extension that indicates that pagination is enabled.", "updated": "2016-06-12T00:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,081 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/port-mac-address-regenerate 0.004s
2026-03-30 13:11:21,081 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '209', 'x-openstack-request-id': 'req-1a79499b-fd6d-4be5-a16f-7853161e2fe4', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/port-mac-address-regenerate'}
Body: b'{"extension": {"name": "Neutron Port MAC address regenerate", "alias": "port-mac-address-regenerate", "descr
iption": "Network port MAC address regenerate", "updated": "2018-05-03T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,085 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/binding 0.003s
2026-03-30 13:11:21,085 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '193', 'x-openstack-request-id': 'req-18c4ac71-853a-4da7-8d66-60cc08c6b4f4', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/binding'}
Body: b'{"extension": {"name": "Port Binding", "alias": "binding", "description": "Expose port bindings of a virtual port to external application", "updated": "2014-02-03T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,090 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/port-security 0.004s
2026-03-30 13:11:21,090 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '160', 'x-openstack-request-id': 'req-035b213f-5783-417f-8050-a83f640bb5fe', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/port-security'}
Body: b'{"extension": {"name": "Port Security", "alias": "port-security", "description": "Provides port security", "updated": "2012-07-23T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,095 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/project-id 0.005s
2026-03-30 13:11:21,095 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '204', 'x-openstack-request-id': 'req-d0c726f8-6859-476b-968e-76e712cffa27', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/project-id'}
Body: b'{"extension": {"name": "project_id field enabled", "alias": "project-id", "description": "Extension that indicates that project_id field is enabled.", "updated": "2016-09-09T09:09:09-09:09", "links": []}}'
2026-03-30 13:11:21,099 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/provider 0.005s
2026-03-30 13:11:21,100 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '191', 'x-openstack-request-id': 'req-d68f807a-0d8e-4653-9864-19404d2696a6', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/provider'}
Body: b'{"extension": {"name": "Provider Network", "alias": "provider", "description": "Expose mapping of virtual networks to physical networks", "updated": "2012-09-07T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,105 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/quotas 0.005s
2026-03-30 13:11:21,105 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-
Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '192', 'x-openstack-request-id': 'req-acad0eb0-f150-4f58-9b74-cdeb81836151', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/quotas'}
Body: b'{"extension": {"name": "Quota management support", "alias": "quotas", "description": "Expose functions for quotas management per project", "updated": "2012-07-29T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,110 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/security-group 0.005s
2026-03-30 13:11:21,110 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '170', 'x-openstack-request-id': 'req-e7b619a1-d115-408a-93e8-752cf857a826', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/security-group'}
Body: b'{"extension": {"name": "security-group", "alias": "security-group", "description": "The security groups extension.", "updated": "2012-10-05T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,115 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/sorting 0.005s
2026-03-30 13:11:21,115 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '183', 'x-openstack-request-id': 'req-f6ff5bca-711b-4701-9168-2e5c5006bb8e', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/sorting'}
Body: b'{"extension": {"name": "Sorting support", "alias": "sorting", "description": "Extension that indicates that sorting is enabled.", "updated": "2016-06-12T00:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,120 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/standard-attr-description 0.005s
2026-03-30 13:11:21,120 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '214', 'x-openstack-request-id': 'req-2c5b0aeb-7706-40b9-bcb9-642dfbaed930', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/standard-attr-description'}
Body: b'{"extension": {"name": "standard-attr-description", "alias": "standard-attr-description", "description": "Extension to add descriptions to standard attributes", "updated": "2016-02-10T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,125 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/standard-attr-tag 0.004s
2026-03-30 13:11:21,125 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '313', 'x-openstack-request-id': 'req-1bb47255-20f9-41ae-8e52-232e76f890f7', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/standard-attr-tag'}
Body: b'{"extension": {"name": "T
ag support for resources with standard attribute: port, subnet, subnetpool, network, router, floatingip, security_group, policy", "alias": "standard-attr-tag", "description": "Enables to set tag on resources with standard attribute.", "updated": "2017-01-01T00:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,129 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/trunk 0.004s
2026-03-30 13:11:21,129 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '164', 'x-openstack-request-id': 'req-d30a632e-2eb1-4b50-98fd-f43ca6c58150', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/trunk'}
Body: b'{"extension": {"name": "Trunk Extension", "alias": "trunk", "description": "Provides support for trunk ports", "updated": "2016-01-01T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,133 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/contrail 0.004s
2026-03-30 13:11:21,133 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '156', 'x-openstack-request-id': 'req-686f5730-d3fc-459b-b405-7fcf74c04d55', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/contrail'}
Body: b'{"extension": {"name": "Contrail Extension", "alias": "contrail", "description": "Contrail Extension", "updated": "2014-08-12T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,138 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/ipam 0.004s
2026-03-30 13:11:21,138 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '214', 'x-openstack-request-id': 'req-be433f2e-187c-4862-b16a-39158fa45e32', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/ipam'}
Body: b'{"extension": {"name": "Network IP Address Management", "alias": "ipam", "description": "Configuration object for holding common to a set of IP address blocks", "updated": "2012-07-20T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,142 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/policy 0.004s
2026-03-30 13:11:21,142 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '173', 'x-openstack-request-id': 'req-209419e1-770a-4335-b674-dd3841bd46f4', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/policy'}
Body: b'{"extension": {"name": "Network Policy", "alias": "policy", "description": "Configuration object for Network Policies", "updated": "2012-07-20T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,146 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/quota_details 0.004s
2026-03-30 13:11:21,146 95384 DEBUG
[tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '213', 'x-openstack-request-id': 'req-3925b6cf-8289-4838-a720-d56d9bb33a51', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/quota_details'}
Body: b'{"extension": {"name": "Quota details management support", "alias": "quota_details", "description": "Expose functions for quotas usage statistics per project", "updated": "2017-02-10T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,150 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/service-interface 0.004s
2026-03-30 13:11:21,150 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '163', 'x-openstack-request-id': 'req-b74d26f2-8ed4-46e8-b2f2-aec7adeb4c4d', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/service-interface'}
Body: b'{"extension": {"name": "service-interface", "alias": "service-interface", "description": "Service Interface", "updated": "2014-08-12T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,155 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/vf-binding 0.004s
2026-03-30 13:11:21,155 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '161', 'x-openstack-request-id': 'req-a7c79452-7d15-4c03-a50d-a5436354febf', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/vf-binding'}
Body: b'{"extension": {"name": "vf-binding", "alias": "vf-binding", "description": "Bindings for Virtual Function", "updated": "2014-08-12T10:00:00-00:00", "links": []}}'
2026-03-30 13:11:21,158 95384 INFO [tempest.lib.common.rest_client] Request (ExtensionsTestJSON:test_list_show_extensions): 200 GET http://10.0.0.19:9696/v2.0/extensions/route-table 0.003s
2026-03-30 13:11:21,159 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '161', 'x-openstack-request-id': 'req-c820682d-431a-4c27-ab25-d2ff1b85502f', 'date': 'Mon, 30 Mar 2026 13:11:21 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/extensions/route-table'}
Body: b'{"extension": {"name": "route-table", "alias": "route-table", "description": "VPC route tables extension.", "updated": "2013-07-24T10:00:00-00:00", "links": []}}'
tempest.api.network.test_floating_ips_negative.FloatingIPNegativeTestJSON.test_associate_floatingip_port_ext_net_unreachable[id-6b3b8797-6d43-4191-985c-c48b773eb429,negative]
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_floating_ips_negative.py", line 91, in test_associate_floatingip_port_ext_net_unreachable
self.assertRaises(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 593, in assertRaises
self.assertThat(our_callable, matcher)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: > returned {'floatingip': {'id': '891a023b-46c9-4054-8303-130eae757cd6', 'tenant_id': '0722e7e3070c458ca95fc3bc08ab49a2', 'floating_ip_address': '172.23.0.13', 'floating_network_id': 'cf7fd1b8-85b2-4779-8da9-72bbf8142d73', 'router_id': 'eecf28a7-9191-4620-8cc4-1967cde34427', 'port_id': 'dcd022d9-473f-4d41-8ff3-f126a1f26496', 'fixed_ip_address': '10.100.0.3', 'status': 'ACTIVE', 'description': '', 'project_id': '0722e7e3070c458ca95fc3bc08ab49a2'}}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:40,177 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPNegativeTestJSON:test_associate_floatingip_port_ext_net_unreachable): 201 POST http://10.0.0.19:9696/v2.0/floatingips 0.057s
2026-03-30 13:11:40,177 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"floatingip": {"floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '361', 'x-openstack-request-id': 'req-93b47c0b-3804-4d19-918b-9917936abea1', 'date': 'Mon, 30 Mar 2026 13:11:40 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingip": {"id": "891a023b-46c9-4054-8303-130eae757cd6", "tenant_id": "0722e7e3070c458ca95fc3bc08ab49a2", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": null, "port_id": null, "fixed_ip_address": null, "status": "DOWN", "description": "", "project_id": "0722e7e3070c458ca95fc3bc08ab49a2"}}'
2026-03-30 13:11:40,221 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPNegativeTestJSON:test_associate_floatingip_port_ext_net_unreachable): 200 PUT http://10.0.0.19:9696/v2.0/floatingips/891a023b-46c9-4054-8303-130eae757cd6 0.043s
2026-03-30 13:11:40,221 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"floatingip": {"port_id": "dcd022d9-473f-4d41-8ff3-f126a1f26496", "fixed_ip_address": "10.100.0.3"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '439', 'x-openstack-request-id': 'req-858644bb-988e-42f7-bbc0-6bfbd7ad34ef', 'date': 'Mon, 30 Mar 2026 13:11:40 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips/891a023b-46c9-4054-8303-130eae757cd6'}
Body: b'{"floatingip": {"id": "891a023b-46c9-4054-8303-130eae757cd6", "tenant_id": "0722e7e3070c458ca95fc3bc08ab49a2", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": "eecf28a7-9191-4620-8cc4-1967cde34427", "port_id": "dcd022d9-473f-4d41-8ff3-f126a1f26496", "fixed_ip_address": "10.100.0.3", "status": "ACTIVE", "description": "", "project_id": "0722e7e3070c458ca95fc3bc08ab49a2"}}'
2026-03-30 13:11:40,276 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPNegativeTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/floatingips/891a023b-46c9-4054-8303-130eae757cd6 0.055s
2026-03-30 13:11:40,276 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-268170b8-a32c-4028-9e32-d2d1702c41b7', 'content-length': '0', 'date': 'Mon, 30 Mar 2026 13:11:40 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips/891a023b-46c9-4054-8303-130eae757cd6'}
Body: b''
tempest.api.network.test_floating_ips_negative.FloatingIPNegativeTestJSON.test_create_floatingip_with_port_ext_net_unreachable[id-22996ea8-4a81-4b27-b6e1-fa5df92fa5e8,negative]
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_floating_ips_negative.py", line 62, in test_create_floatingip_with_port_ext_net_unreachable
self.assertRaises(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 593, in assertRaises
self.assertThat(our_callable, matcher)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: > returned {'floatingip': {'id': '10b0e735-db62-42fb-a7f7-589c484f8ceb', 'tenant_id': '0722e7e3070c458ca95fc3bc08ab49a2', 'floating_ip_address': '172.23.0.13', 'floating_network_id': 'cf7fd1b8-85b2-4779-8da9-72bbf8142d73', 'router_id': 'eecf28a7-9191-4620-8cc4-1967cde34427', 'port_id': 'dcd022d9-473f-4d41-8ff3-f126a1f26496', 'fixed_ip_address': '10.100.0.3', 'status': 'ACTIVE', 'description': '', 'project_id': '0722e7e3070c458ca95fc3bc08ab49a2'}}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:40,426 95384 INFO [tempest.lib.common.rest_client] Request (FloatingIPNegativeTestJSON:test_create_floatingip_with_port_ext_net_unreachable): 201 POST http://10.0.0.19:9696/v2.0/floatingips 0.135s
2026-03-30 13:11:40,426 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"floatingip": {"floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "port_id": "dcd022d9-473f-4d41-8ff3-f126a1f26496", "fixed_ip_address": "10.100.0.3"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '439', 'x-openstack-request-id': 'req-7fae6c02-b9b7-4ea1-bc07-0378e271a369', 'date': 'Mon, 30 Mar 2026 13:11:40 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/floatingips'}
Body: b'{"floatingip": {"id": "10b0e735-db62-42fb-a7f7-589c484f8ceb", "tenant_id": "0722e7e3070c458ca95fc3bc08ab49a2", "floating_ip_address": "172.23.0.13", "floating_network_id": "cf7fd1b8-85b2-4779-8da9-72bbf8142d73", "router_id": "eecf28a7-9191-4620-8cc4-1967cde34427", "port_id": "dcd022d9-473f-4d41-8ff3-f126a1f26496", "fixed_ip_address": "10.100.0.3", "status": "ACTIVE", "description": "", "project_id": "0722e7e3070c458ca95fc3bc08ab49a2"}}'
tempest.api.network.test_networks.NetworksTest.test_update_subnet_gw_dns_host_routes_dhcp[id-3d3852eb-3009-49ec-97ac-5ce83b73010a]
----------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_networks.py", line 368, in test_update_subnet_gw_dns_host_routes_dhcp
body = self.subnets_client.update_subnet(subnet_id, name=new_name,
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/subnets_client.py", line 38, in update_subnet
return self.update_resource(uri, post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'BadRequest', 'message': 'Bad subnet request: update of gateway is not supported.', 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:11:54,667 95384 INFO [tempest.lib.common.rest_client] Request (NetworksTest:test_update_subnet_gw_dns_host_routes_dhcp): 201 POST http://10.0.0.19:9696/v2.0/networks 0.063s
2026-03-30 13:11:54,667 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-NetworksTest-test-network-973168029"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '459', 'x-openstack-request-id': 'req-1036e915-9428-4b2b-a833-2e07cad91fa4', 'date': 'Mon, 30 Mar 2026 13:11:54 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"585c95d3-1402-4bf8-9e37-315c0208b382","name":"tempest-NetworksTest-test-network-973168029","tenant_id":"77b6e4f4bfbb4186ac18d2b671369c2a","project_id":"77b6e4f4bfbb4186ac18d2b671369c2a","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-NetworksTest-287781406","tempest-NetworksTest-test-network-973168029"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:11:54,825 95384 INFO [tempest.lib.common.rest_client] Request (NetworksTest:test_update_subnet_gw_dns_host_routes_dhcp): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.158s
2026-03-30 13:11:54,826 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "585c95d3-1402-4bf8-9e37-315c0208b382", "cidr": "10.100.0.0/28", "ip_version": 4, "gateway_ip": "10.100.0.1", "host_routes": [{"destination": "10.20.0.0/32", "nexthop": "10.100.1.1"}], "dns_nameservers": ["8.8.4.4", "8.8.8.8"], "allocation_pools": [{"start": "10.100.0.3", "end": "10.100.0.7"}]}}
Response - Headers: {'content-type': 'application/json', 'content-length': '524', 'x-openstack-request-id': 'req-3e791460-c752-47d5-b45c-faa3b898e64e', 'date': 'Mon, 30 Mar 2026 13:11:54 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"5d264d8d-07bd-4dcc-9c94-0ae816d4c251","name":"","tenant_id":"77b6e4f4bfbb4186ac18d2b671369c2a","network_id":"585c95d3-1402-4bf8-9e37-315c0208b382","ip_version":4,"cidr":"10.100.0.0/28","allocation_pools":[{"start":"10.100.0.3","end":"10.100.0.7"}],"gateway_ip":"10.100.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":["8.8.4.4","8.8.8.8"],"host_routes":[{"destination":"10.20.0.0/32","nexthop":"10.100.1.1"}],"tags":[],"project_id":"77b6e4f4bfbb4186ac18d2b671369c2a"}}'
2026-03-30 13:11:54,934 95384 INFO [tempest.lib.common.rest_client] Request (NetworksTest:test_update_subnet_gw_dns_host_routes_dhcp): 400 PUT http://10.0.0.19:9696/v2.0/subnets/5d264d8d-07bd-4dcc-9c94-0ae816d4c251 0.108s
2026-03-30 13:11:54,934 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"name": "New_subnet", "host_routes": [{"destination": "10.20.0.0/32", "nexthop": "10.100.1.2"}], "dns_nameservers": ["7.8.8.8", "7.8.4.4"], "gateway_ip": "10.100.0.2", "enable_dhcp": true}}
Response - Headers: {'content-type': 'application/json', 'content-length': '124', 'x-openstack-request-id': 'req-3d5c6ef3-f6e2-41fd-96f3-fa76cb77dd94', 'date': 'Mon, 30 Mar 2026 13:11:54 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/5d264d8d-07bd-4dcc-9c94-0ae816d4c251'}
Body: b'{"NeutronError": {"type": "BadRequest", "message": "Bad subnet request: update of gateway is not supported.", "detail": ""}}'
2026-03-30 13:11:55,016 95384 INFO [tempest.lib.common.rest_client] Request (NetworksTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/585c95d3-1402-4bf8-9e37-315c0208b382 0.081s
2026-03
-30 13:11:55,016 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-6436eba6-01a0-4be3-a4ed-bc215b371871', 'date': 'Mon, 30 Mar 2026 13:11:55 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/585c95d3-1402-4bf8-9e37-315c0208b382'}
Body: b''
tempest.api.network.test_ports.PortsTestJSON.test_port_list_filter_by_ip_substr[id-79895408-85d5-460d-94e7-9531c5fd9123]
------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_ports.py", line 303, in test_port_list_filter_by_ip_substr
self.assertIn(network['id'], port_net_ids)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 450, in assertIn
self.assertThat(haystack, Contains(needle), message)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/testtools/testcase.py", line 611, in assertThat
raise mismatch_error
testtools.matchers._impl.MismatchError: '9d850b25-7dee-4c87-b372-de514eff16a9' not in []
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:12:08,571 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:test_port_list_filter_by_ip_substr): 201 POST http://10.0.0.19:9696/v2.0/networks 0.066s
2026-03-30 13:12:08,571 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-PortsTestJSON-454978782"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '436', 'x-openstack-request-id': 'req-5afb36cf-68c9-4228-99d1-b17171c80b7d', 'date': 'Mon, 30 Mar 2026 13:12:08 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"9d850b25-7dee-4c87-b372-de514eff16a9","name":"tempest-PortsTestJSON-454978782","tenant_id":"69d3e8d4773a4b4b96b3e10c884244b0","project_id":"69d3e8d4773a4b4b96b3e10c884244b0","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-PortsTestJSON-889791200","tempest-PortsTestJSON-454978782"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:12:08,756 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:test_port_list_filter_by_ip_substr): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.184s
2026-03-30 13:12:08,756 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "9d850b25-7dee-4c87-b372-de514eff16a9", "cidr": "10.100.0.0/28", "ip_version": 4, "gateway_ip": "10.100.0.1"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '487', 'x-openstack-request-id': 'req-7627f162-0874-451b-a4f2-19e8a3de2604', 'date': 'Mon, 30 Mar 2026 13:12:08 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"2d8bac81-9755-484d-b5ff-6f7b7196ec12","name":"","tenant_id":"69d3e8d4773a4b4b96b3e10c884244b0","network_id":"9d850b25-7dee-4c87-b372-de514eff16a9","ip_version":4,"cidr":"10.100.0.0/28","allocation_pools":[{"start":"10.100.0.2","end":"10.100.0.14"}],"gateway_ip":"10.100.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.100.0.2","tags":[],"project_id":"69d3e8d4773a4b4b96b3e10c884244b0"}}'
2026-03-30 13:12:08,982 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:test_port_list_filter_by_ip_substr): 201 POST http://10.0.0.19:9696/v2.0/ports 0.226s
2026-03-30 13:12:08,983 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"port": {"network_id": "9d850b25-7dee-4c87-b372-de514eff16a9", "name": "tempest-PortsTestJSON-1045682038", "fixed_ips": [{"subnet_id": "2d8bac81-9755-484d-b5ff-6f7b7196ec12", "ip_address": "10.100.0.10"}]}}
Response - Headers: {'content-type': 'application/json', 'content-length': '698', 'x-openstack-request-id': 'req-957f130d-9d9b-44b7-a74f-8b164d3dc850', 'date': 'Mon, 30 Mar 2026 13:12:08 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/ports'}
Body: b'{"port":{"name":"tempest-PortsTestJSON-1045682038","id":"63c462f1-aa85-4536-886b-5b5d295b488a","tenant_id":"69d3e8d4773a4b4b96b3e10c884244b0","network_id":"9d850b25-7dee-4c87-b372-de514eff16a9","mac_address":"02:63:c4:62:f1:aa","binding:vnic_type":"normal","binding:vif_details":{"port_filter":true},"binding:vif_type":"unbound","binding:host_id":null,"allowed_address_pairs":[],"fixed_ips":[{"ip_address":"10.100.0.10","subnet_id":"2d8bac81-9755-484d-b5ff-6f7b7196ec12"}],"security_groups":["4be109cf-c56e-4f11-814f-2ee0a553e9e6"],"admin_state_up":true,"device_id":"","device_owner":"","status":"DOWN","port_security_enabled":true,"description":"","project_id":"69d3e8d4773a4b4b96b3e
10c884244b0"}}'
2026-03-30 13:12:09,132 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:test_port_list_filter_by_ip_substr): 201 POST http://10.0.0.19:9696/v2.0/ports 0.148s
2026-03-30 13:12:09,132 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"port": {"network_id": "9d850b25-7dee-4c87-b372-de514eff16a9", "name": "tempest-PortsTestJSON-1928390844", "fixed_ips": [{"subnet_id": "2d8bac81-9755-484d-b5ff-6f7b7196ec12", "ip_address": "10.100.0.9"}]}}
Response - Headers: {'content-type': 'application/json', 'content-length': '697', 'x-openstack-request-id': 'req-7233bd48-afa2-4529-96b7-3258f68915f2', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/ports'}
Body: b'{"port":{"name":"tempest-PortsTestJSON-1928390844","id":"559ac52b-5249-4d01-8df1-955aa195e4d3","tenant_id":"69d3e8d4773a4b4b96b3e10c884244b0","network_id":"9d850b25-7dee-4c87-b372-de514eff16a9","mac_address":"02:55:9a:c5:2b:52","binding:vnic_type":"normal","binding:vif_details":{"port_filter":true},"binding:vif_type":"unbound","binding:host_id":null,"allowed_address_pairs":[],"fixed_ips":[{"ip_address":"10.100.0.9","subnet_id":"2d8bac81-9755-484d-b5ff-6f7b7196ec12"}],"security_groups":["4be109cf-c56e-4f11-814f-2ee0a553e9e6"],"admin_state_up":true,"device_id":"","device_owner":"","status":"DOWN","port_security_enabled":true,"description":"","project_id":"69d3e8d4773a4b4b96b3e10c884244b0"}}'
2026-03-30 13:12:09,182 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:test_port_list_filter_by_ip_substr): 200 GET http://10.0.0.19:9696/v2.0/ports?fixed_ips=ip_address_substr%3D10.100.0.1 0.050s
2026-03-30 13:12:09,182 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-95be53be-252e-40a4-b1fa-eaa9755d0f53', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?fixed_ips=ip_address_substr%3D10.100.0.1'}
Body: b'{"ports":[]}'
2026-03-30 13:12:09,264 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/ports/559ac52b-5249-4d01-8df1-955aa195e4d3 0.080s
2026-03-30 13:12:09,264 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-0f41ee1b-8858-47df-ad67-520d11f20cb4', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/559ac52b-5249-4d01-8df1-955aa195e4d3'}
Body: b''
2026-03-30 13:12:09,276 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_run_cleanups): 404 GET http://10.0.0.19:9696/v2.0/ports/559ac52b-5249-4d01-8df1-955aa195e4d3 0.012s
2026-03-30 13:12:09,276 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '132', 'x-openstack-request-id': 'req-f92c71ad-d479-46d8-8dc5-f2c0058858d7', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '404', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/559ac52b-5249-4d01-8df1-955aa195e4d3'}
Body: b'{"NeutronError": {"type": "PortNotFound", "message": "Port 559ac52b-5249-4d01-8df1-955aa195e4d3 could not be found.", "detail": ""}}'
2026-03-30 13:12:09,352 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_
run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/ports/63c462f1-aa85-4536-886b-5b5d295b488a 0.075s
2026-03-30 13:12:09,352 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-5062adae-ca37-4fa4-898b-5c90dbdaf38a', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/63c462f1-aa85-4536-886b-5b5d295b488a'}
Body: b''
2026-03-30 13:12:09,368 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_run_cleanups): 404 GET http://10.0.0.19:9696/v2.0/ports/63c462f1-aa85-4536-886b-5b5d295b488a 0.015s
2026-03-30 13:12:09,368 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '132', 'x-openstack-request-id': 'req-d1e75a64-88d4-405e-9d8b-d803c19ac49d', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '404', 'content-location': 'http://10.0.0.19:9696/v2.0/ports/63c462f1-aa85-4536-886b-5b5d295b488a'}
Body: b'{"NeutronError": {"type": "PortNotFound", "message": "Port 63c462f1-aa85-4536-886b-5b5d295b488a could not be found.", "detail": ""}}'
2026-03-30 13:12:09,531 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/2d8bac81-9755-484d-b5ff-6f7b7196ec12 0.163s
2026-03-30 13:12:09,532 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-0045359f-105d-43ba-af1e-e3a0c3b09b4c', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/2d8bac81-9755-484d-b5ff-6f7b7196ec12'}
Body: b''
2026-03-30 13:12:09,600 95384 INFO [tempest.lib.common.rest_client] Request (PortsTestJSON:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/9d850b25-7dee-4c87-b372-de514eff16a9 0.068s
2026-03-30 13:12:09,600 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-cebb32d5-5692-4615-9f32-6febad2bba6e', 'date': 'Mon, 30 Mar 2026 13:12:09 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/9d850b25-7dee-4c87-b372-de514eff16a9'}
Body: b''
tempest.api.network.test_routers.RoutersTest.test_update_delete_extra_route[id-c86ac3a8-50bd-4b00-a6b8-62af84a0765c]
--------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/common/utils/__init__.py", line 84, in wrapper
return func(*func_args, **func_kwargs)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_routers.py", line 207, in test_update_delete_extra_route
extra_route = self.routers_client.update_router(
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 38, in update_router
return self.update_resource(uri, update_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': "Unrecognized attribute(s) 'routes'", 'detail': ''}
Captured traceback-1:
~~~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_routers.py", line 235, in _delete_extra_routes
self.routers_client.update_router(router_id, routes=None)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/routers_client.py", line 38, in update_router
return self.update_resource(uri, update_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/services/network/base.py", line 77, in update_resource
resp, body = self.put(req_uri, req_post_data)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 392, in put
return self.request('PUT', url, extra_headers, headers, body, chunked)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 762, in request
self._error_checker(resp, resp_body)
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/lib/common/rest_client.py", line 877, in _error_checker
raise exceptions.BadRequest(resp_body, resp=resp)
tempest.lib.exceptions.BadRequest: Bad request
Details: {'type': 'HTTPBadRequest', 'message': "Unrecognized attribute(s) 'routes'", 'detail': ''}
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:12:24,059 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/routers 0.069s
2026-03-30 13:12:24,060 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersTest-router-1221190742", "external_gateway_info": {}, "admin_state_up": true}}
Response - Headers: {'content-type': 'application/json', 'content-length': '406', 'x-openstack-request-id': 'req-187befc8-58fb-4a6c-8167-1f46178b26df', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "name": "tempest-RoutersTest-router-1221190742", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "admin_state_up": true, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersTest-2100801926", "tempest-RoutersTest-router-1221190742"], "description": "", "project_id": "bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:24,191 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/networks 0.130s
2026-03-30 13:12:24,191 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-RoutersTest-1107194761"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '433', 'x-openstack-request-id': 'req-2cda0b78-6378-4888-99b4-ea574996cb2a', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"4c780e9e-1a41-423f-a5de-3570252d0d12","name":"tempest-RoutersTest-1107194761","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","project_id":"bf9fb4deb09248eab69472d76a36bbdc","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-RoutersTest-2100801926","tempest-RoutersTest-1107194761"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:12:24,345 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.153s
2026-03-30 13:12:24,345 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "4c780e9e-1a41-423f-a5de-3570252d0d12", "cidr": "10.100.0.0/28", "ip_version": 4, "gateway_ip": "10.100.0.1"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '487', 'x-openstack-request-id': 'req-4ec4a224-edb5-42a8-97de-802963a2b75e', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"bd497597-d368-412f-bb5d-49a58b905dac","name":"","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","network_id":"4c780e9e-1a41-423f-a5de-3570252d0d12","ip_version":4,"cidr":"10.100.0.0/28","allocation_pools":[{"start":"10.100.0.2","end":"10.100.0.14"}],"gateway_ip":"10.100.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.100.0.2","tags":[],"project_id":"bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:24,562 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface 0.217s
2026-03-30 13:12:24,562 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/js
on', 'X-Auth-Token': ''}
Body: {"subnet_id": "bd497597-d368-412f-bb5d-49a58b905dac"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-94c284b9-ec5c-453d-b6bb-97fc37155b1f', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "6f882be2-8941-4295-aec6-e4d8a8ad1020", "subnet_id": "bd497597-d368-412f-bb5d-49a58b905dac"}'
2026-03-30 13:12:24,633 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/networks 0.070s
2026-03-30 13:12:24,633 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-RoutersTest-1577756480"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '433', 'x-openstack-request-id': 'req-5ac40cfd-fdcc-43c6-bb0f-886789fbc1cc', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"45bd52ef-4010-4f66-bcb6-99ed13ab552e","name":"tempest-RoutersTest-1577756480","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","project_id":"bf9fb4deb09248eab69472d76a36bbdc","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-RoutersTest-2100801926","tempest-RoutersTest-1577756480"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:12:24,815 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.182s
2026-03-30 13:12:24,816 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "45bd52ef-4010-4f66-bcb6-99ed13ab552e", "cidr": "10.101.0.0/28", "ip_version": 4, "gateway_ip": "10.101.0.1"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '487', 'x-openstack-request-id': 'req-6742fc74-1c28-416b-9905-2133635976dd', 'date': 'Mon, 30 Mar 2026 13:12:24 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"75547173-e6c5-4766-9b1e-596faa0731c9","name":"","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","network_id":"45bd52ef-4010-4f66-bcb6-99ed13ab552e","ip_version":4,"cidr":"10.101.0.0/28","allocation_pools":[{"start":"10.101.0.2","end":"10.101.0.14"}],"gateway_ip":"10.101.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.101.0.2","tags":[],"project_id":"bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:25,077 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface 0.261s
2026-03-30 13:12:25,077 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "75547173-e6c5-4766-9b1e-596faa0731c9"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-eb49e4e5-3c62-4a4f-9fae-b82cbabb2d98', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4de
b09248eab69472d76a36bbdc", "port_id": "3927bb37-e5bd-4a22-92c6-78e48aa54eb2", "subnet_id": "75547173-e6c5-4766-9b1e-596faa0731c9"}'
2026-03-30 13:12:25,191 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/networks 0.113s
2026-03-30 13:12:25,191 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-RoutersTest-29881821"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '429', 'x-openstack-request-id': 'req-f6cbbb39-9fab-4298-80f5-c970450c5e46', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"34cb12ab-a637-480e-a652-17975b9dac54","name":"tempest-RoutersTest-29881821","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","project_id":"bf9fb4deb09248eab69472d76a36bbdc","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-RoutersTest-2100801926","tempest-RoutersTest-29881821"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:12:25,383 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.192s
2026-03-30 13:12:25,384 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "34cb12ab-a637-480e-a652-17975b9dac54", "cidr": "10.102.0.0/28", "ip_version": 4, "gateway_ip": "10.102.0.1"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '487', 'x-openstack-request-id': 'req-70a9a026-d8d5-4ccc-8edd-779d8f5431f1', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"2e83f57f-9474-4a98-a29a-e283d7e2cb34","name":"","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","network_id":"34cb12ab-a637-480e-a652-17975b9dac54","ip_version":4,"cidr":"10.102.0.0/28","allocation_pools":[{"start":"10.102.0.2","end":"10.102.0.14"}],"gateway_ip":"10.102.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.102.0.2","tags":[],"project_id":"bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:25,650 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface 0.266s
2026-03-30 13:12:25,650 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "2e83f57f-9474-4a98-a29a-e283d7e2cb34"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-5518ced7-3187-4052-bf48-c8ebf7ebf084', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "f389c9d1-3e3f-47c6-bfc8-a3ffcd09b2c9", "subnet_id": "2e83f57f-9474-4a98-a29a-e283d7e2cb34"}'
2026-03-30 13:12:25,729 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/networks 0.078s
2026-03-30 13:12:25,729 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"network": {"name": "tempest-Route
rsTest-1899779716"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '433', 'x-openstack-request-id': 'req-424b27ea-61e9-4735-9632-a79c23bc12a7', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/networks'}
Body: b'{"network":{"id":"a023672d-d0f4-417f-837f-6151e60a1e5f","name":"tempest-RoutersTest-1899779716","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","project_id":"bf9fb4deb09248eab69472d76a36bbdc","admin_state_up":true,"shared":false,"status":"ACTIVE","router:external":false,"mtu":0,"subnets":[],"fq_name":["default-domain","tempest-RoutersTest-2100801926","tempest-RoutersTest-1899779716"],"port_security_enabled":true,"description":""}}'
2026-03-30 13:12:25,890 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 201 POST http://10.0.0.19:9696/v2.0/subnets 0.160s
2026-03-30 13:12:25,890 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet": {"network_id": "a023672d-d0f4-417f-837f-6151e60a1e5f", "cidr": "10.103.0.0/28", "ip_version": 4, "gateway_ip": "10.103.0.1"}}
Response - Headers: {'content-type': 'application/json', 'content-length': '487', 'x-openstack-request-id': 'req-f1c8e85a-2fdf-45d9-a658-9dfa61677f44', 'date': 'Mon, 30 Mar 2026 13:12:25 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets'}
Body: b'{"subnet":{"id":"9c6047ce-8006-44eb-9843-1d0a869c356f","name":"","tenant_id":"bf9fb4deb09248eab69472d76a36bbdc","network_id":"a023672d-d0f4-417f-837f-6151e60a1e5f","ip_version":4,"cidr":"10.103.0.0/28","allocation_pools":[{"start":"10.103.0.2","end":"10.103.0.14"}],"gateway_ip":"10.103.0.1","enable_dhcp":true,"ipv6_ra_mode":null,"ipv6_address_mode":null,"dns_nameservers":[],"host_routes":[],"dns_server_address":"10.103.0.2","tags":[],"project_id":"bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:26,113 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface 0.222s
2026-03-30 13:12:26,113 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "9c6047ce-8006-44eb-9843-1d0a869c356f"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-c148458a-042a-4078-96ac-97ee99e53a0f', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/add_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "8747229e-70fc-4f8a-af40-5fe12197c878", "subnet_id": "9c6047ce-8006-44eb-9843-1d0a869c356f"}'
2026-03-30 13:12:26,119 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_delete_extra_route): 400 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d 0.006s
2026-03-30 13:12:26,119 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"routes": [{"nexthop": "10.100.0.2", "destination": "10.100.0.0/28"}, {"nexthop": "10.101.0.2", "destination": "10.101.0.0/28"}, {"nexthop": "10.102.0.2", "destination": "10.102.0.0/28"}, {"nexthop": "10.103.0.2", "destination": "10.103.0.0/28"}]}}
Response - Headers: {'content-length': '107', 'content-type': 'application/json', 'x-openstack-request-id': 'req-a28d90bc-5ba1-47a6-9ae4-e857590f0d84', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696
/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Unrecognized attribute(s) \'routes\'", "detail": ""}}'
2026-03-30 13:12:26,252 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface 0.132s
2026-03-30 13:12:26,252 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "9c6047ce-8006-44eb-9843-1d0a869c356f"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-8c92b219-e91e-471e-92fe-fa6d7cbe6ccd', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "8747229e-70fc-4f8a-af40-5fe12197c878", "subnet_id": "9c6047ce-8006-44eb-9843-1d0a869c356f"}'
2026-03-30 13:12:26,453 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/9c6047ce-8006-44eb-9843-1d0a869c356f 0.201s
2026-03-30 13:12:26,454 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-a7840de8-ab40-4a1c-ad54-75ad7c5595a9', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/9c6047ce-8006-44eb-9843-1d0a869c356f'}
Body: b''
2026-03-30 13:12:26,524 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/a023672d-d0f4-417f-837f-6151e60a1e5f 0.070s
2026-03-30 13:12:26,524 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-37801d6c-52ea-40a4-a9d2-80dc965d57ee', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/a023672d-d0f4-417f-837f-6151e60a1e5f'}
Body: b''
2026-03-30 13:12:26,642 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface 0.118s
2026-03-30 13:12:26,642 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "2e83f57f-9474-4a98-a29a-e283d7e2cb34"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-8c031222-9a98-43e6-95f6-1864dfbe0e49', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "f389c9d1-3e3f-47c6-bfc8-a3ffcd09b2c9", "subnet_id": "2e83f57f-9474-4a98-a29a-e283d7e2cb34"}'
2026-03-30 13:12:26,799 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/2e83f57f-9474-4a98-a29a-e283d7e2cb34 0.156s
2026-03-30 13:12:26,799 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''
}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-ba0cf949-b8c6-4995-be8e-3ef5282cf125', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/2e83f57f-9474-4a98-a29a-e283d7e2cb34'}
Body: b''
2026-03-30 13:12:26,864 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/34cb12ab-a637-480e-a652-17975b9dac54 0.064s
2026-03-30 13:12:26,864 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-e7c48067-0974-4d51-b08d-fcee843138a1', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/34cb12ab-a637-480e-a652-17975b9dac54'}
Body: b''
2026-03-30 13:12:26,981 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface 0.116s
2026-03-30 13:12:26,981 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "75547173-e6c5-4766-9b1e-596faa0731c9"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199', 'x-openstack-request-id': 'req-2c8f831e-cd0b-4571-add9-efd96ab743ce', 'date': 'Mon, 30 Mar 2026 13:12:26 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "3927bb37-e5bd-4a22-92c6-78e48aa54eb2", "subnet_id": "75547173-e6c5-4766-9b1e-596faa0731c9"}'
2026-03-30 13:12:27,168 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/75547173-e6c5-4766-9b1e-596faa0731c9 0.186s
2026-03-30 13:12:27,168 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-23e2a175-930c-4ed6-9912-b81810c00e0e', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/75547173-e6c5-4766-9b1e-596faa0731c9'}
Body: b''
2026-03-30 13:12:27,238 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/45bd52ef-4010-4f66-bcb6-99ed13ab552e 0.070s
2026-03-30 13:12:27,238 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-e8506e1c-65a7-4c3d-9f0b-6b0dcd58b1be', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/45bd52ef-4010-4f66-bcb6-99ed13ab552e'}
Body: b''
2026-03-30 13:12:27,357 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface 0.118s
2026-03-30 13:12:27,357 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"subnet_id": "bd497597-d368-412f-bb5d-49a58b905dac"}
Response - Headers: {'content-type': 'application/json', 'content-length': '199',
'x-openstack-request-id': 'req-e9871ce8-7dac-44fe-a212-54495f1f6d58', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d/remove_router_interface'}
Body: b'{"id": "ebd14134-67ad-44d8-bb38-440c21c5c95d", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "port_id": "6f882be2-8941-4295-aec6-e4d8a8ad1020", "subnet_id": "bd497597-d368-412f-bb5d-49a58b905dac"}'
2026-03-30 13:12:27,554 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/subnets/bd497597-d368-412f-bb5d-49a58b905dac 0.197s
2026-03-30 13:12:27,555 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-97e03896-5f9d-413c-830e-b4885d37fd7b', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/subnets/bd497597-d368-412f-bb5d-49a58b905dac'}
Body: b''
2026-03-30 13:12:27,630 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/networks/4c780e9e-1a41-423f-a5de-3570252d0d12 0.075s
2026-03-30 13:12:27,630 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-length': '0', 'x-openstack-request-id': 'req-b19ba047-3e4a-415b-a720-d7498e97fff6', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/networks/4c780e9e-1a41-423f-a5de-3570252d0d12'}
Body: b''
2026-03-30 13:12:27,636 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 400 PUT http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d 0.005s
2026-03-30 13:12:27,636 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"routes": null}}
Response - Headers: {'content-length': '107', 'content-type': 'application/json', 'x-openstack-request-id': 'req-2c5ab58a-63eb-4bef-8dc9-42e8bfb9123b', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '400', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d'}
Body: b'{"NeutronError": {"type": "HTTPBadRequest", "message": "Unrecognized attribute(s) \'routes\'", "detail": ""}}'
2026-03-30 13:12:27,653 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=ebd14134-67ad-44d8-bb38-440c21c5c95d 0.016s
2026-03-30 13:12:27,653 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '12', 'x-openstack-request-id': 'req-e4e11eda-23e8-4220-b0d6-86b668f0be3a', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/ports?device_id=ebd14134-67ad-44d8-bb38-440c21c5c95d'}
Body: b'{"ports":[]}'
2026-03-30 13:12:27,707 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 204 DELETE http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d 0.054s
2026-03-30 13:12:27,707 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'x-openstack-request-id': 'req-d8632131-2978-4015-a456-8f3eb37f654a', 'content
-length': '0', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '204', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/ebd14134-67ad-44d8-bb38-440c21c5c95d'}
Body: b''
tempest.api.network.test_routers.RoutersTest.test_update_router_admin_state[id-a8902683-c788-4246-95c7-ad9c6d63a4d9]
--------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/ubuntu/venvs/openstack/lib/python3.10/site-packages/tempest/api/network/test_routers.py", line 248, in test_update_router_admin_state
self.assertTrue(show_body['router']['admin_state_up'])
File "/usr/lib/python3.10/unittest/case.py", line 687, in assertTrue
raise self.failureException(msg)
AssertionError: False is not true
Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
2026-03-30 13:12:27,768 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_router_admin_state): 201 POST http://10.0.0.19:9696/v2.0/routers 0.058s
2026-03-30 13:12:27,769 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"name": "tempest-RoutersTest-router-1123879613", "external_gateway_info": {}, "admin_state_up": false}}
Response - Headers: {'content-type': 'application/json', 'content-length': '407', 'x-openstack-request-id': 'req-8a0e2b3a-62e1-43ce-98ca-e77422861e7f', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '201', 'content-location': 'http://10.0.0.19:9696/v2.0/routers'}
Body: b'{"router": {"id": "8b8e8724-fb79-416b-b971-a00cdc4f8120", "name": "tempest-RoutersTest-router-1123879613", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersTest-2100801926", "tempest-RoutersTest-router-1123879613"], "description": "", "project_id": "bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:27,805 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_router_admin_state): 200 PUT http://10.0.0.19:9696/v2.0/routers/8b8e8724-fb79-416b-b971-a00cdc4f8120 0.036s
2026-03-30 13:12:27,806 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: {"router": {"admin_state_up": true}}
Response - Headers: {'content-type': 'application/json', 'content-length': '406', 'x-openstack-request-id': 'req-3287a0db-bb84-4d34-a1d5-5cce7e4275f4', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/8b8e8724-fb79-416b-b971-a00cdc4f8120'}
Body: b'{"router": {"id": "8b8e8724-fb79-416b-b971-a00cdc4f8120", "name": "tempest-RoutersTest-router-1123879613", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "admin_state_up": true, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersTest-2100801926", "tempest-RoutersTest-router-1123879613"], "description": "", "project_id": "bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:27,820 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:test_update_router_admin_state): 200 GET http://10.0.0.19:9696/v2.0/routers/8b8e8724-fb79-416b-b971-a00cdc4f8120 0.014s
2026-03-30 13:12:27,820 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': ''}
Body: None
Response - Headers: {'content-type': 'application/json', 'content-length': '407', 'x-openstack-request-id': 'req-502fadbb-67f7-4fb8-8c52-6ef60edd4ccc', 'date': 'Mon, 30 Mar 2026 13:12:27 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://10.0.0.19:9696/v2.0/routers/8b8e8724-fb79-416b-b971-a00cdc4f8120'}
Body: b'{"router": {"id": "8b8e8724-fb79-416b-b971-a00cdc4f8120", "name": "tempest-RoutersTest-router-1123879613", "tenant_id": "bf9fb4deb09248eab69472d76a36bbdc", "admin_state_up": false, "status": "ACTIVE", "external_gateway_info": null, "fq_name": ["default-domain", "tempest-RoutersTest-2100801926", "tempest-RoutersTest-router-1123879613"], "description": "", "project_id": "bf9fb4deb09248eab69472d76a36bbdc"}}'
2026-03-30 13:12:27,838 95384 INFO [tempest.lib.common.rest_client] Request (RoutersTest:_run_cleanups): 200 GET http://10.0.0.19:9696/v2.0/ports?device_id=8b8e8724-fb79-416b-b971-a00cdc4f8120 0.015s
2026-03-30 13:12:27,838 95384 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': '