neutron tempest failure: neutron_tempest_plugin.api.test_extensions.ExtensionsTest.test_list_extensions_includes_all

Bug #1891243 reported by Flavio Fernandes
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Low
Flavio Fernandes

Bug Description

testtools.matchers._impl.MismatchError: 'segment' not in {'...'}

cd /opt/stack/tempest
$ tox -e all-plugin -- test_extensions
all-plugin develop-inst-noop: /opt/stack/tempest
all-plugin installed: alembic==1.4.2,amqp==2.6.1,aniso8601==8.0.0,apparmor==2.12,appdirs==1.4.4,asn1crypto==0.24.0,attrs==19.3.0,Automat==0.6.0,automaton==2.2.0,Babel==2.8.0,bcrypt==3.1.7,beautifulsoup4==4.9.1,blinker==1.4,cachetools==4.1.1,castellan==3.4.0,certifi==2020.6.20,cffi==1.14.1,chardet==3.0.4,click==7.1.2,cliff==3.4.0,cloud-init==20.2,cmd2==1.3.1,colorama==0.4.3,command-not-found==0.3,configobj==5.0.6,constantly==15.1.0,cryptography==3.0,cursive==0.2.2,dataclasses==0.7,ddt==1.4.1,debtcollector==2.2.0,decorator==4.4.2,defusedxml==0.6.0,distlib==0.3.1,distro-info===0.18ubuntu0.18.04.1,Django==2.2.15,django-appconf==1.0.4,django-compressor==2.4,django-debreach==2.0.1,django-pyscss==2.0.2,dnspython==1.16.0,dogpile.cache==1.0.2,enmerkar==0.7.1,etcd3==0.12.0,etcd3gw==0.2.6,eventlet==0.26.1,extras==1.0.0,fancycompleter==0.9.1,fasteners==0.14.1,filelock==3.0.12,fixtures==3.0.0,Flask==1.1.2,Flask-RESTful==0.3.8,future==0.18.2,futurist==2.2.0,-e git+https://opendev.org/openstack/glance.git@ed3296b23a452391bbe11116e060d4b49235523e#egg=glance,glance-store==2.1.0,greenlet==0.4.16,grpcio==1.31.0,-e git+https://opendev.org/openstack/horizon.git@a2a173d2c5fa9173793ae3deed194dde7c9a802f#egg=horizon,httplib2==0.18.1,hyperlink==17.3.1,idna==2.10,importlib-metadata==1.7.0,importlib-resources==3.0.0,incremental==16.10.1,ipython==5.5.0,ipython-genutils==0.2.0,iso8601==0.1.12,itsdangerous==1.1.0,Jinja2==2.11.2,jmespath==0.10.0,jsonpatch==1.26,jsonpointer==2.0,jsonschema==3.2.0,keyring==10.6.0,keyrings.alt==3.0,-e git+https://opendev.org/openstack/keystone.git@952959fb872b25d4ad525056012e1667efb4eb60#egg=keystone,keystoneauth1==4.2.1,keystonemiddleware==9.1.0,kombu==5.0.0,language-selector==0.1,LibAppArmor==2.12,libvirt-python==6.6.0,linecache2==1.0.0,logutils==0.3.5,lxml==4.5.2,Mako==1.1.3,MarkupSafe==1.1.1,microversion-parse==1.0.1,monotonic==1.5,msgpack==1.0.0,munch==2.5.0,mysqlclient==1.3.10,netaddr==0.8.0,netifaces==0.10.9,networkx==2.4,-e git+https://opendev.org/openstack/neutron.git@75afd4142d99c5f3601647c9e72c4d7d2027b65b#egg=neutron,neutron-lib==2.5.0,-e git+https://opendev.org/openstack/neutron-tempest-plugin.git@dee81bc0fafe1b834cb4f92cf30621b361d386e1#egg=neutron_tempest_plugin,nose==1.3.7,-e git+https://opendev.org/openstack/nova.git@64980bd78cba04e011ea78ed229b60e95204d60f#egg=nova,numpy==1.19.1,oauthlib==3.1.0,-e git+https://opendev.org/openstack/placement.git@4b95c078cc75987979a96bceafce152d6153adcf#egg=openstack_placement,openstacksdk==0.48.0,os-brick==3.2.0,os-client-config==2.1.0,os-ken==1.1.0,os-resource-classes==1.0.0,os-service-types==1.7.0,os-testr==2.0.0,os-traits==2.4.0,os-vif==2.1.0,os-win==5.1.0,os-xenapi==0.3.4,osc-lib==2.2.0,osc-placement==2.0.0,oslo.cache==2.5.0,oslo.concurrency==4.2.0,oslo.config==8.3.1,oslo.context==3.1.0,oslo.db==8.3.0,oslo.i18n==5.0.0,oslo.log==4.3.0,oslo.messaging==12.2.2,oslo.middleware==4.1.0,oslo.policy==3.3.2,oslo.privsep==2.3.0,oslo.reports==2.1.0,oslo.rootwrap==6.1.0,oslo.serialization==4.0.0,oslo.service==2.3.2,oslo.upgradecheck==1.1.0,oslo.utils==4.4.0,oslo.versionedobjects==2.2.0,osprofiler==3.3.0,ovs==2.13.0,-e git+https://git.openstack.org/openstack/ovsdbapp.git@3c64cf6d3798a1f991df07673a5f07188e4df286#egg=ovsdbapp,packaging==20.4,PAM==0.4.2,paramiko==2.7.1,passlib==1.7.2,Paste==3.4.3,PasteDeploy==2.1.0,pbr==5.4.5,pdbpp==0.10.2,pecan==1.4.0,pexpect==4.2.1,pickleshare==0.7.4,pluggy==0.13.1,prettytable==0.7.2,prompt-toolkit==1.0.15,protobuf==3.12.4,psutil==5.7.2,py==1.9.0,pyasn1==0.4.8,pyasn1-modules==0.2.8,pycadf==3.1.0,pycparser==2.20,pycrypto==2.6.1,pydot==1.4.1,Pygments==2.6.1,pygobject==3.26.1,pyinotify==0.9.6,PyJWT==1.7.1,pymongo==3.11.0,PyMySQL==0.9.3,PyNaCl==1.4.0,pyOpenSSL==19.1.0,pyparsing==2.4.7,pyperclip==1.8.0,pypowervm==1.1.24,pyrepl==0.9.0,pyroute2==0.5.13,pyrsistent==0.16.0,pysaml2==6.1.0,pyScss==1.3.7,pyserial==3.4,python-apt==1.6.5+ubuntu0.3,python-barbicanclient==5.0.0,python-cinderclient==7.1.0,python-dateutil==2.8.1,python-debian==0.1.32,python-designateclient==4.1.0,python-editor==1.0.4,python-glanceclient==3.2.0,python-keystoneclient==4.1.0,python-memcached==1.59,python-mimeparse==1.6.0,python-neutronclient==7.2.0,python-novaclient==17.2.0,python-openstackclient==5.3.1,python-subunit==1.4.0,python-swiftclient==3.10.0,pytz==2020.1,pyxdg==0.25,PyYAML==5.3.1,rcssmin==1.0.6,remote-pdb==2.1.0,repoze.lru==0.7,requests==2.23.0,requests-unixsocket==0.1.5,requestsexceptions==1.4.0,retrying==1.3.3,rfc3986==1.4.0,rjsmin==1.1.0,Routes==2.4.1,scrypt==0.8.15,SecretStorage==2.3.1,semantic-version==2.8.5,service-identity==16.0.0,setproctitle==1.1.10,simplegeneric==0.8.1,simplejson==3.17.2,six==1.15.0,sortedcontainers==2.2.2,soupsieve==2.0.1,SQLAlchemy==1.3.18,sqlalchemy-migrate==0.13.0,sqlparse==0.3.1,ssh-import-id==5.7,statsd==3.3.0,stestr==3.0.1,stevedore==3.2.0,systemd-python==234,taskflow==4.3.1,-e git+https://opendev.org/openstack/tempest.git@24961f6244fd3798b26c0d516d18ab03cd764df8#egg=tempest,Tempita==0.5.2,tenacity==6.2.0,testresources==2.0.1,testscenarios==0.5.0,testtools==2.4.0,tinyrpc==1.0.4,toml==0.10.1,tooz==2.7.1,tox==3.19.0,traceback2==1.4.0,traitlets==4.3.2,Twisted==17.9.0,ufw==0.36,unattended-upgrades==0.1,unittest2==1.1.0,urllib3==1.25.10,vine==1.3.0,virtualenv==20.0.30,voluptuous==0.11.7,waitress==1.4.4,warlock==1.3.3,wcwidth==0.2.5,WebOb==1.8.6,websockify==0.9.0,WebTest==2.0.35,Werkzeug==1.0.1,wmctrl==0.3,wrapt==1.12.1,WSME==0.10.0,XStatic==1.0.2,XStatic-Angular==1.5.8.0,XStatic-Angular-Bootstrap==2.5.0.0,XStatic-Angular-FileUpload==12.0.4.0,XStatic-Angular-Gettext==2.4.1.0,XStatic-Angular-lrdragndrop==1.0.2.4,XStatic-Angular-Schema-Form==0.8.13.0,XStatic-Bootstrap-Datepicker==1.4.0.0,XStatic-Bootstrap-SCSS==3.4.1.0,XStatic-bootswatch==3.3.7.0,XStatic-D3==3.5.17.0,XStatic-Font-Awesome==4.7.0.0,XStatic-Hogan==2.0.0.3,XStatic-Jasmine==2.4.1.2,XStatic-jQuery==1.12.4.1,XStatic-JQuery-Migrate==1.2.1.2,XStatic-jquery-ui==1.12.1.1,XStatic-JQuery.quicksearch==2.0.3.2,XStatic-JQuery.TableSorter==2.14.5.2,XStatic-JSEncrypt==2.3.1.1,XStatic-mdi==1.6.50.2,XStatic-objectpath==1.2.1.0,XStatic-Rickshaw==1.5.1.0,XStatic-roboto-fontface==0.5.0.0,XStatic-smart-table==1.4.13.2,XStatic-Spin==1.2.5.3,XStatic-term.js==0.0.7.0,XStatic-tv4==1.2.7.0,yappi==1.2.5,zipp==3.1.0,zope.interface==4.3.2,zVMCloudConnector==1.4.1
all-plugin run-test-pre: PYTHONHASHSEED='526340887'
all-plugin run-test: commands[0] | echo 'WARNING: The all-plugin env is deprecated and will be removed'
WARNING: The all-plugin env is deprecated and will be removed
all-plugin run-test: commands[1] | echo 'WARNING Please use the '"'"'all'"'"' environment for Tempest plugins.'
WARNING Please use the 'all' environment for Tempest plugins.
all-plugin run-test: commands[2] | find . -type f -name '*.pyc' -delete
all-plugin run-test: commands[3] | tempest run --regex test_extensions
{1} tempest.api.compute.test_extensions.ExtensionsTest.test_get_extension [0.140322s] ... ok
{1} tempest.api.compute.test_extensions.ExtensionsTest.test_list_extensions [0.018005s] ... ok
{2} neutron_tempest_plugin.api.test_extensions.ExtensionsTest.test_list_extensions_includes_all [0.172167s] ... FAILED

Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):

      File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/api/test_extensions.py", line 56, in test_list_extensions_includes_all
    self._test_list_extensions_includes(extensions)

      File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/api/test_extensions.py", line 32, in _test_list_extensions_includes
    self.assertIn(ext, extensions)

      File "/opt/stack/tempest/.tox/all-plugin/lib/python3.6/site-packages/testtools/testcase.py", line 421, in assertIn
    self.assertThat(haystack, Contains(needle), message)

      File "/opt/stack/tempest/.tox/all-plugin/lib/python3.6/site-packages/testtools/testcase.py", line 502, in assertThat
    raise mismatch_error

    testtools.matchers._impl.MismatchError: 'segment' not in {'trunk-details', 'quota_details', 'port-mac-address-regenerate', 'allowed-address-pairs', 'security-group', 'default-subnetpools', 'expose-port-forwarding-in-fip', 'rbac-policies', 'net-mtu-writable', 'floating-ip-port-forwarding-description', 'dns-domain-ports', 'flavors', 'dns-integration', 'multi-provider', 'binding-extended', 'extraroute', 'subnet-dns-publish-fixed-ip', 'ip-substring-filtering', 'standard-attr-tag', 'rbac-security-groups', 'network-ip-availability', 'agent', 'agent-resources-synced', 'subnet_onboard', 'net-mtu', 'empty-string-filtering', 'pagination', 'external-net', 'port-security-groups-filtering', 'rbac-subnetpool', 'extra_dhcp_opt', 'project-id', 'fip-port-details', 'quotas', 'subnet-service-types', 'revision-if-match', 'availability_zone_filter', 'dhcp_agent_scheduler', 'router_availability_zone', 'ext-gw-mode', 'address-scope', 'port-security', 'rbac-address-scope', 'binding', 'service-type', 'standard-attr-timestamp', 'stateful-security-group', 'router', 'floating-ip-port-forwarding', 'standard-attr-revisions', 'subnetpool-prefix-ops', 'auto-allocated-topology', 'provider', 'subnet_allocation', 'sorting', 'availability_zone', 'trunk', 'network_availability_zone', 'standard-attr-description'}

Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
    2020-08-11 21:28:07,519 2252 INFO [tempest.lib.common.rest_client] Request (ExtensionsTest:test_list_extensions_includes_all): 201 POST http://192.168.51.10/identity/v3/auth/tokens 0.087s
2020-08-11 21:28:07,519 2252 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json'}
        Body: <omitted>
    Response - Headers: {'date': 'Tue, 11 Aug 2020 21:28:07 GMT', 'server': 'Apache/2.4.29 (Ubuntu)', 'content-type': 'application/json', 'content-length': '2372', 'x-subject-token': '<omitted>', 'vary': 'X-Auth-Token', 'x-openstack-request-id': 'req-9da89f51-7fe9-4882-a94e-c97d9b38dfda', 'connection': 'close', 'status': '201', 'content-location': 'http://192.168.51.10/identity/v3/auth/tokens'}
        Body: b'{"token": {"methods": ["password"], "user": {"domain": {"id": "default", "name": "Default"}, "id": "c77446f81d914c12a987e0348e244bd6", "name": "tempest-ExtensionsTest-134656788", "password_expires_at": null}, "audit_ids": ["HJrL6v99RTqGjdA-pgZkig"], "expires_at": "2020-08-11T22:28:07.000000Z", "issued_at": "2020-08-11T21:28:07.000000Z", "project": {"domain": {"id": "default", "name": "Default"}, "id": "7e08c2674ce94d559ea25f858e7ff643", "name": "tempest-ExtensionsTest-134656788"}, "is_domain": false, "roles": [{"id": "1de7e97e5f6e4524ab6a0027a19d138a", "name": "member"}, {"id": "2ce0047919cf414893b3b277ea51f259", "name": "reader"}], "catalog": [{"endpoints": [{"id": "ec186719217d4db2a349af45c97e5b23", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10/compute/v2.1", "region": "RegionOne"}], "id": "011c3dd5a3a4477ca0840f7a11116331", "type": "compute", "name": "nova"}, {"endpoints": [{"id": "0af6fded06fd49cfbb08da94eecaea00", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10/compute/v2/7e08c2674ce94d559ea25f858e7ff643", "region": "RegionOne"}], "id": "06b94d2fc4fd49b2ad3dab7a21bd6181", "type": "compute_legacy", "name": "nova_legacy"}, {"endpoints": [{"id": "05833a320ee24bdda9fe10de01974a11", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10/placement", "region": "RegionOne"}], "id": "51073b43374c4cee8d8a42626c4953db", "type": "placement", "name": "placement"}, {"endpoints": [{"id": "dbdc8cb01cd945f89a390f6ddcfca8eb", "interface": "admin", "region_id": "RegionOne", "url": "http://192.168.51.10/identity", "region": "RegionOne"}, {"id": "f46bdd68faae4fb1989333cf9ef595e2", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10/identity", "region": "RegionOne"}], "id": "7a99de74e267489dbdf9006f0a910f26", "type": "identity", "name": "keystone"}, {"endpoints": [{"id": "2617d4c415a94ac3af7f79589ac97e45", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10:9696/", "region": "RegionOne"}], "id": "7dec24aeaca04323a014fcdcee6e7769", "type": "network", "name": "neutron"}, {"endpoints": [{"id": "5607c57a22ff4d1faec1d281208ae390", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10/image", "region": "RegionOne"}], "id": "899b864c6a2149299517bef90a9143d5", "type": "image", "name": "glance"}]}}'
2020-08-11 21:28:07,602 2252 INFO [tempest.lib.common.rest_client] Request (ExtensionsTest:test_list_extensions_includes_all): 200 GET http://192.168.51.10:9696/v2.0/extensions 0.083s
2020-08-11 21:28:07,603 2252 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': '<omitted>'}
        Body: None
    Response - Headers: {'content-type': 'application/json', 'content-length': '11565', 'x-openstack-request-id': 'req-5fd795b2-9d2c-4bf6-83d4-1efe6ac98ce1', 'date': 'Tue, 11 Aug 2020 21:28:07 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://192.168.51.10:9696/v2.0/extensions'}
        Body: b'{"extensions": [{"name": "Address scope", "alias": "address-scope", "description": "Address scopes extension.", "updated": "2015-07-26T10:00:00-00:00", "links": []}, {"name": "agent", "alias": "agent", "description": "The
    agent management extension.", "updated": "2013-02-03T10:00:00-00:00", "links": []}, {"name": "Agent\'s Resource View Synced to Placement", "alias": "agent-resources-synced", "description": "Stores success/failure of last sync to Placement", "updated": "2018-12-19T00:00:00-00:00", "links": []}, {"name": "Allowed Address Pairs", "alias": "allowed-address-pairs", "description": "Provides allowed address pairs", "updated": "2013-07-23T10:00:00-00:00", "links": []}, {"name": "Auto Allocated Topology Services", "alias": "auto-allocated-topology", "description": "Auto Allocated Topology Services.", "updated": "2016-01-01T00:00:00-00:00", "links": []}, {"name": "Availability Zone", "alias": "availability_zone", "description": "The availability zone extension.", "updated": "2015-01-01T10:00:00-00:00", "links": []}, {"name": "Availability Zone Filter Extension", "alias": "availability_zone_filter", "description": "Add filter parameters to AvailabilityZone resource", "updated": "2018-06-22T10:00:00-00:00", "links": []}, {"name": "Default Subnetpools", "alias": "default-subnetpools", "description": "Provides ability to mark and use a subnetpool as the default.", "updated": "2016-02-18T18:00:00-00:00", "links": []}, {"name": "DHCP Agent Scheduler", "alias": "dhcp_agent_scheduler", "description": "Schedule networks among dhcp agents", "updated": "2013-02-07T10:00:00-00:00", "links": []}, {"name": "DNS Integration", "alias": "dns-integration", "description": "Provides integration with DNS.", "updated": "2015-08-15T18:00:00-00:00", "links": []}, {"name": "dns_domain for ports", "alias": "dns-domain-ports", "description": "Allows the DNS domain to be specified for a network port.", "updated": "2017-04-24T10:00:00-00:00", "links": []}, {"name": "Empty String Filtering Extension", "alias": "empty-string-filtering", "description": "Allow filtering by attributes with empty string value", "updated": "2018-05-01T10:00:00-00:00", "links": []}, {"name": "Expose Floating IP port forwardings", "alias": "expose-port-forwarding-in-fip", "description": "Expose port forwarding fields in floating IP response", "updated": "2018-06-28T16: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 Extra Route", "alias": "extraroute", "description": "Extra routes configuration for L3 router", "updated": "2013-02-01T10:00:00-00:00", "links": []}, {"name": "Floating IP Port Forwarding new attribute description", "alias": "floating-ip-port-forwarding-description", "description": "Add a description field to Port Forwarding rules", "updated": "2019-11-01T10:00:00-00:00", "links": []}, {"name": "Floating IP Port Details Extension", "alias": "fip-port-details", "description": "Add port_details attribute to Floating IP resource", "updated": "2018-04-09T10:00:00-00:00", "links": []}, {"name": "Neutron Service Flavors", "alias": "flavors", "description": "Flavor specification for Neutron advanced services.", "updated": "2015-09-17T10:00:00-00:00", "links": []}, {"name": "Floating IP Port Forwarding", "alias": "floating-ip-port-forwarding", "description": "Allow port forwarding from floating IP port to an internal port", "updated": "2018-01-19T10:00:00-00:00", "links": []}, {"name": "IP address substring filtering", "alias": "ip-substring-filtering", "description": "Provides IP address substring filtering when listing ports", "updated": "2017-11-28T09:00:00-00:00", "links": []}, {"name": "Neu

{2} neutron_tempest_plugin.api.test_extensions.ExtensionsTest.test_list_extensions_pagination [0.007257s] ... ok
{2} neutron_tempest_plugin.api.test_extensions.ExtensionsTest.test_list_extensions_project_id [0.006515s] ... ok
{2} neutron_tempest_plugin.api.test_extensions.ExtensionsTest.test_list_extensions_sorting [0.005573s] ... ok
{0} tempest.api.network.test_extensions.ExtensionsTestJSON.test_list_show_extensions [0.470090s] ... ok
{0} setUpClass (tempest.api.volume.test_extensions.ExtensionsTestJSON) ... SKIPPED: ExtensionsTestJSON skipped as Cinder is not available

==============================
Failed 1 tests - output below:
==============================

neutron_tempest_plugin.api.test_extensions.ExtensionsTest.test_list_extensions_includes_all[id-c7597fac-2404-45b1-beb4-523c8b1d4604]
------------------------------------------------------------------------------------------------------------------------------------

Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):

      File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/api/test_extensions.py", line 56, in test_list_extensions_includes_all
    self._test_list_extensions_includes(extensions)

      File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/api/test_extensions.py", line 32, in _test_list_extensions_includes
    self.assertIn(ext, extensions)

      File "/opt/stack/tempest/.tox/all-plugin/lib/python3.6/site-packages/testtools/testcase.py", line 421, in assertIn
    self.assertThat(haystack, Contains(needle), message)

      File "/opt/stack/tempest/.tox/all-plugin/lib/python3.6/site-packages/testtools/testcase.py", line 502, in assertThat
    raise mismatch_error

    testtools.matchers._impl.MismatchError: 'segment' not in {'trunk-details', 'quota_details', 'port-mac-address-regenerate', 'allowed-address-pairs', 'security-group', 'default-subnetpools', 'expose-port-forwarding-in-fip', 'rbac-policies', 'net-mtu-writable', 'floating-ip-port-forwarding-description', 'dns-domain-ports', 'flavors', 'dns-integration', 'multi-provider', 'binding-extended', 'extraroute', 'subnet-dns-publish-fixed-ip', 'ip-substring-filtering', 'standard-attr-tag', 'rbac-security-groups', 'network-ip-availability', 'agent', 'agent-resources-synced', 'subnet_onboard', 'net-mtu', 'empty-string-filtering', 'pagination', 'external-net', 'port-security-groups-filtering', 'rbac-subnetpool', 'extra_dhcp_opt', 'project-id', 'fip-port-details', 'quotas', 'subnet-service-types', 'revision-if-match', 'availability_zone_filter', 'dhcp_agent_scheduler', 'router_availability_zone', 'ext-gw-mode', 'address-scope', 'port-security', 'rbac-address-scope', 'binding', 'service-type', 'standard-attr-timestamp', 'stateful-security-group', 'router', 'floating-ip-port-forwarding', 'standard-attr-revisions', 'subnetpool-prefix-ops', 'auto-allocated-topology', 'provider', 'subnet_allocation', 'sorting', 'availability_zone', 'trunk', 'network_availability_zone', 'standard-attr-description'}

Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
    2020-08-11 21:28:07,519 2252 INFO [tempest.lib.common.rest_client] Request (ExtensionsTest:test_list_extensions_includes_all): 201 POST http://192.168.51.10/identity/v3/auth/tokens 0.087s
2020-08-11 21:28:07,519 2252 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json'}
        Body: <omitted>
    Response - Headers: {'date': 'Tue, 11 Aug 2020 21:28:07 GMT', 'server': 'Apache/2.4.29 (Ubuntu)', 'content-type': 'application/json', 'content-length': '2372', 'x-subject-token': '<omitted>', 'vary': 'X-Auth-Token', 'x-openstack-request-id': 'req-9da89f51-7fe9-4882-a94e-c97d9b38dfda', 'connection': 'close', 'status': '201', 'content-location': 'http://192.168.51.10/identity/v3/auth/tokens'}
        Body: b'{"token": {"methods": ["password"], "user": {"domain": {"id": "default", "name": "Default"}, "id": "c77446f81d914c12a987e0348e244bd6", "name": "tempest-ExtensionsTest-134656788", "password_expires_at": null}, "audit_ids": ["HJrL6v99RTqGjdA-pgZkig"], "expires_at": "2020-08-11T22:28:07.000000Z", "issued_at": "2020-08-11T21:28:07.000000Z", "project": {"domain": {"id": "default", "name": "Default"}, "id": "7e08c2674ce94d559ea25f858e7ff643", "name": "tempest-ExtensionsTest-134656788"}, "is_domain": false, "roles": [{"id": "1de7e97e5f6e4524ab6a0027a19d138a", "name": "member"}, {"id": "2ce0047919cf414893b3b277ea51f259", "name": "reader"}], "catalog": [{"endpoints": [{"id": "ec186719217d4db2a349af45c97e5b23", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10/compute/v2.1", "region": "RegionOne"}], "id": "011c3dd5a3a4477ca0840f7a11116331", "type": "compute", "name": "nova"}, {"endpoints": [{"id": "0af6fded06fd49cfbb08da94eecaea00", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10/compute/v2/7e08c2674ce94d559ea25f858e7ff643", "region": "RegionOne"}], "id": "06b94d2fc4fd49b2ad3dab7a21bd6181", "type": "compute_legacy", "name": "nova_legacy"}, {"endpoints": [{"id": "05833a320ee24bdda9fe10de01974a11", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10/placement", "region": "RegionOne"}], "id": "51073b43374c4cee8d8a42626c4953db", "type": "placement", "name": "placement"}, {"endpoints": [{"id": "dbdc8cb01cd945f89a390f6ddcfca8eb", "interface": "admin", "region_id": "RegionOne", "url": "http://192.168.51.10/identity", "region": "RegionOne"}, {"id": "f46bdd68faae4fb1989333cf9ef595e2", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10/identity", "region": "RegionOne"}], "id": "7a99de74e267489dbdf9006f0a910f26", "type": "identity", "name": "keystone"}, {"endpoints": [{"id": "2617d4c415a94ac3af7f79589ac97e45", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10:9696/", "region": "RegionOne"}], "id": "7dec24aeaca04323a014fcdcee6e7769", "type": "network", "name": "neutron"}, {"endpoints": [{"id": "5607c57a22ff4d1faec1d281208ae390", "interface": "public", "region_id": "RegionOne", "url": "http://192.168.51.10/image", "region": "RegionOne"}], "id": "899b864c6a2149299517bef90a9143d5", "type": "image", "name": "glance"}]}}'
2020-08-11 21:28:07,602 2252 INFO [tempest.lib.common.rest_client] Request (ExtensionsTest:test_list_extensions_includes_all): 200 GET http://192.168.51.10:9696/v2.0/extensions 0.083s
2020-08-11 21:28:07,603 2252 DEBUG [tempest.lib.common.rest_client] Request - Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': '<omitted>'}
        Body: None
    Response - Headers: {'content-type': 'application/json', 'content-length': '11565', 'x-openstack-request-id': 'req-5fd795b2-9d2c-4bf6-83d4-1efe6ac98ce1', 'date': 'Tue, 11 Aug 2020 21:28:07 GMT', 'connection': 'close', 'status': '200', 'content-location': 'http://192.168.51.10:9696/v2.0/extensions'}
        Body: b'{"extensions": [{"name": "Address scope", "alias": "address-scope", "description": "Address scopes extension.", "updated": "2015-07-26T10:00:00-00:00", "links": []}, {"name": "agent", "alias": "agent", "description": "The
    agent management extension.", "updated": "2013-02-03T10:00:00-00:00", "links": []}, {"name": "Agent\'s Resource View Synced to Placement", "alias": "agent-resources-synced", "description": "Stores success/failure of last sync to Placement", "updated": "2018-12-19T00:00:00-00:00", "links": []}, {"name": "Allowed Address Pairs", "alias": "allowed-address-pairs", "description": "Provides allowed address pairs", "updated": "2013-07-23T10:00:00-00:00", "links": []}, {"name": "Auto Allocated Topology Services", "alias": "auto-allocated-topology", "description": "Auto Allocated Topology Services.", "updated": "2016-01-01T00:00:00-00:00", "links": []}, {"name": "Availability Zone", "alias": "availability_zone", "description": "The availability zone extension.", "updated": "2015-01-01T10:00:00-00:00", "links": []}, {"name": "Availability Zone Filter Extension", "alias": "availability_zone_filter", "description": "Add filter parameters to AvailabilityZone resource", "updated": "2018-06-22T10:00:00-00:00", "links": []}, {"name": "Default Subnetpools", "alias": "default-subnetpools", "description": "Provides ability to mark and use a subnetpool as the default.", "updated": "2016-02-18T18:00:00-00:00", "links": []}, {"name": "DHCP Agent Scheduler", "alias": "dhcp_agent_scheduler", "description": "Schedule networks among dhcp agents", "updated": "2013-02-07T10:00:00-00:00", "links": []}, {"name": "DNS Integration", "alias": "dns-integration", "description": "Provides integration with DNS.", "updated": "2015-08-15T18:00:00-00:00", "links": []}, {"name": "dns_domain for ports", "alias": "dns-domain-ports", "description": "Allows the DNS domain to be specified for a network port.", "updated": "2017-04-24T10:00:00-00:00", "links": []}, {"name": "Empty String Filtering Extension", "alias": "empty-string-filtering", "description": "Allow filtering by attributes with empty string value", "updated": "2018-05-01T10:00:00-00:00", "links": []}, {"name": "Expose Floating IP port forwardings", "alias": "expose-port-forwarding-in-fip", "description": "Expose port forwarding fields in floating IP response", "updated": "2018-06-28T16: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 Extra Route", "alias": "extraroute", "description": "Extra routes configuration for L3 router", "updated": "2013-02-01T10:00:00-00:00", "links": []}, {"name": "Floating IP Port Forwarding new attribute description", "alias": "floating-ip-port-forwarding-description", "description": "Add a description field to Port Forwarding rules", "updated": "2019-11-01T10:00:00-00:00", "links": []}, {"name": "Floating IP Port Details Extension", "alias": "fip-port-details", "description": "Add port_details attribute to Floating IP resource", "updated": "2018-04-09T10:00:00-00:00", "links": []}, {"name": "Neutron Service Flavors", "alias": "flavors", "description": "Flavor specification for Neutron advanced services.", "updated": "2015-09-17T10:00:00-00:00", "links": []}, {"name": "Floating IP Port Forwarding", "alias": "floating-ip-port-forwarding", "description": "Allow port forwarding from floating IP port to an internal port", "updated": "2018-01-19T10:00:00-00:00", "links": []}, {"name": "IP address substring filtering", "alias": "ip-substring-filtering", "description": "Provides IP address substring filtering when listing ports", "updated": "2017-11-28T09:00:00-00:00", "links": []}, {"name": "Neu

======
Totals
======
Ran: 8 tests in 1.4024 sec.
 - Passed: 6
 - Skipped: 1
 - Expected Fail: 0
 - Unexpected Success: 0
 - Failed: 1
Sum of execute time for each test: 0.8199 sec.

Revision history for this message
Slawek Kaplonski (slaweq) wrote :

Is it failing somewhere in the gate or on some Your local env?

Revision history for this message
Maciej Jozefczyk (maciejjozefczyk) wrote :

Afai, it is failing because devstack was not deployed with:
"neutron-segments: True"

Revision history for this message
Bence Romsics (bence-romsics) wrote :

My guess it's a local environment since it's running 8 test cases only.

Flavio, can you please share what service_plugins are loaded in your neutron.conf and/or your devstack config as Maciej suggested?

Changed in neutron:
status: New → Incomplete
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to neutron-tempest-plugin (master)

Related fix proposed to branch: master
Review: https://review.opendev.org/745826

Revision history for this message
Flavio Fernandes (ffernand) wrote :

self.client.list_extensions() does not have 'segment'

  25 def _test_list_extensions_includes(self, exts):
  26 body = self.client.list_extensions()
  27 extensions = {ext_['alias'] for ext_ in body['extensions']}
  28 self.assertNotEmpty(extensions, "Extension list returned is empty")
  29 -> for ext in exts:
  30 ext_enabled = utils.is_extension_enabled(ext, "network")
  31 if ext_enabled:
  32 self.assertIn(ext, extensions)
  33 else:
  34 self.assertNotIn(ext, extensions)
(Pdb++) exts
['address-scope', 'agent', 'allowed-address-pairs', 'auto-allocated-topology', 'binding', 'default-subnetpools', 'external-net', 'extra_dhcp_opt', 'multi-provider', 'net-mtu', 'network_availability_zone', 'network-ip-availability', 'port-security', 'provider', 'quotas', 'rbac-address-scope', 'rbac-policies', 'standard-attr-revisions', 'security-group', 'standard-attr-description', 'subnet_allocation', 'standard-attr-tag', 'standard-attr-timestamp', 'trunk', 'quota_details', 'segment', 'expose-port-forwarding-in-fip', 'floating-ip-port-forwarding-description', 'floating-ip-port-forwarding', 'router', 'extraroute', 'ext-gw-mode', 'fip-port-details', 'pagination', 'sorting', 'project-id', 'dns-integration', 'agent', 'availability_zone', 'router_availability_zone']
(Pdb++) extensions
{'stateful-security-group', 'floating-ip-port-forwarding', 'availability_zone_filter', 'agent', 'provider', 'standard-attr-tag', 'binding-extended', 'multi-provider', 'rbac-subnetpool', 'subnetpool-prefix-ops', 'ext-gw-mode', 'standard-attr-revisions', 'net-mtu-writable', 'expose-port-forwarding-in-fip', 'floating-ip-port-forwarding-description', 'quota_details', 'rbac-policies', 'router_availability_zone', 'auto-allocated-topology', 'port-mac-address-regenerate', 'security-group', 'service-type', 'sorting', 'subnet_allocation', 'extra_dhcp_opt', 'pagination', 'rbac-security-groups', 'subnet_onboard', 'availability_zone', 'network-ip-availability', 'revision-if-match', 'dhcp_agent_scheduler', 'address-scope', 'net-mtu', 'subnet-service-types', 'empty-string-filtering', 'trunk-details', 'default-subnetpools', 'ip-substring-filtering', 'rbac-address-scope', 'project-id', 'quotas', 'allowed-address-pairs', 'standard-attr-timestamp', 'subnet-dns-publish-fixed-ip', 'dns-domain-ports', 'port-security', 'external-net', 'router', 'agent-resources-synced', 'fip-port-details', 'port-security-groups-filtering', 'trunk', 'standard-attr-description', 'network_availability_zone', 'binding', 'flavors', 'dns-integration', 'extraroute'}
(Pdb++) 'segment' in extensions
False
(Pdb++)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.opendev.org/745829

Changed in neutron:
assignee: nobody → Flavio Fernandes (ffernand)
status: Incomplete → In Progress
Revision history for this message
Bence Romsics (bence-romsics) wrote :

Based on the patch the reproduction of this bug requires a devstack built from the sample ovn devstack conf.

Changed in neutron:
importance: Undecided → Low
Revision history for this message
Flavio Fernandes (ffernand) wrote :

Yes, this was a pilot error. :facepalm

The service neutron-segments is necessary in order to pass
neutron_tempest_plugin.api.test_extensions.ExtensionsTest.test_list_extensions_includes_all

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on neutron-tempest-plugin (master)

Change abandoned by Flavio Fernandes (<email address hidden>) on branch: master
Review: https://review.opendev.org/745826

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.opendev.org/745829
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=7f551db9be861c531d913aa428dd8498e290eaaf
Submitter: Zuul
Branch: master

commit 7f551db9be861c531d913aa428dd8498e290eaaf
Author: Flavio Fernandes <email address hidden>
Date: Wed Aug 12 06:41:37 2020 -0400

    [OVN] Update sample local.conf to support segments

    This change updates sample OVN local.conf file in order
    to enable neutron-segments service.

    Related-Bug: #1871608
    Closes-Bug: #1891243
    Change-Id: Iac6227093b0e851716a76e38145508d6724c650a

Changed in neutron:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.