2025-08-07 16:38:39,106 - INFO - Domain Default found not creating 2025-08-07 16:38:39,492 - INFO - Project ctest-TestRouters-35961750 not found, creating it 2025-08-07 16:38:40,199 - INFO - Created Project:ctest-TestRouters-35961750, ID : ec02b585-fca1-43cf-b7d3-347db443f2ad 2025-08-07 16:38:42,275 - INFO - ================================================================================ 2025-08-07 16:38:42,275 - INFO - STARTING TEST : test_basic_router_behavior 2025-08-07 16:38:42,275 - INFO - TEST DESCRIPTION : Validate a router is able to route packets between two VNs Create a router Create 2 VNs, and a VM in each Add router port from each VN Ping between VMs 2025-08-07 16:38:42,466 - DEBUG - Nothing to compare xmpp stats {'10.0.0.249': {'10.20.0.17': '0'}} with 2025-08-07 16:38:42,466 - INFO - Initial checks done. Running the testcase now 2025-08-07 16:38:42,466 - INFO - 2025-08-07 16:38:43,301 - DEBUG - Response for create_network : {'network': {'id': '7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e', 'name': 'ctest-vn1-53954653', 'tenant_id': 'ec02b585fca143cfb7d3347db443f2ad', 'project_id': 'ec02b585fca143cfb7d3347db443f2ad', 'admin_state_up': True, 'shared': False, 'status': 'ACTIVE', 'router:external': False, 'mtu': 0, 'subnets': [], 'fq_name': ['default-domain', 'ctest-TestRouters-35961750', 'ctest-vn1-53954653'], 'port_security_enabled': True, 'description': ''}} 2025-08-07 16:38:43,477 - ERROR - Neutron Exception while creating subnet for vn with id 7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e Traceback (most recent call last): File "/contrail-test/fixtures/quantum_test.py", line 128, in create_subnet subnet_rsp = self.obj.create_subnet({'subnet': subnet_req}) File "/usr/local/lib/python3.6/site-packages/neutronclient/v2_0/client.py", line 848, in create_subnet return self.post(self.subnets_path, body=body) File "/usr/local/lib/python3.6/site-packages/neutronclient/v2_0/client.py", line 359, in post headers=headers, params=params) File "/usr/local/lib/python3.6/site-packages/neutronclient/v2_0/client.py", line 294, in do_request self._handle_fault_response(status_code, replybody, resp) File "/usr/local/lib/python3.6/site-packages/neutronclient/v2_0/client.py", line 269, in _handle_fault_response exception_handler_v20(status_code, error_body) File "/usr/local/lib/python3.6/site-packages/neutronclient/v2_0/client.py", line 93, in exception_handler_v20 request_ids=request_ids) neutronclient.common.exceptions.InternalServerError: The server has either erred or is incapable of performing the requested operation.

Neutron server returns request_ids: ['req-ba578978-e0df-43c6-8144-c59f3750afd0'] 2025-08-07 16:38:43,506 - INFO - Created VN ctest-vn1-53954653 2025-08-07 16:38:43,571 - DEBUG - VN ctest-vn1-53954653 UUID is 7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e 2025-08-07 16:38:44,106 - DEBUG - Response for create_network : {'network': {'id': '45e8c124-9c7d-4b47-a493-6b8557292a73', 'name': 'ctest-vn2-18340395', 'tenant_id': 'ec02b585fca143cfb7d3347db443f2ad', 'project_id': 'ec02b585fca143cfb7d3347db443f2ad', 'admin_state_up': True, 'shared': False, 'status': 'ACTIVE', 'router:external': False, 'mtu': 0, 'subnets': [], 'fq_name': ['default-domain', 'ctest-TestRouters-35961750', 'ctest-vn2-18340395'], 'port_security_enabled': True, 'description': ''}} 2025-08-07 16:38:44,293 - ERROR - Neutron Exception while creating subnet for vn with id 45e8c124-9c7d-4b47-a493-6b8557292a73 Traceback (most recent call last): File "/contrail-test/fixtures/quantum_test.py", line 128, in create_subnet subnet_rsp = self.obj.create_subnet({'subnet': subnet_req}) File "/usr/local/lib/python3.6/site-packages/neutronclient/v2_0/client.py", line 848, in create_subnet return self.post(self.subnets_path, body=body) File "/usr/local/lib/python3.6/site-packages/neutronclient/v2_0/client.py", line 359, in post headers=headers, params=params) File "/usr/local/lib/python3.6/site-packages/neutronclient/v2_0/client.py", line 294, in do_request self._handle_fault_response(status_code, replybody, resp) File "/usr/local/lib/python3.6/site-packages/neutronclient/v2_0/client.py", line 269, in _handle_fault_response exception_handler_v20(status_code, error_body) File "/usr/local/lib/python3.6/site-packages/neutronclient/v2_0/client.py", line 93, in exception_handler_v20 request_ids=request_ids) neutronclient.common.exceptions.InternalServerError: The server has either erred or is incapable of performing the requested operation.

Neutron server returns request_ids: ['req-71fa58f2-80fc-4a53-b483-62b7daa2e857'] 2025-08-07 16:38:44,318 - INFO - Created VN ctest-vn2-18340395 2025-08-07 16:38:44,379 - DEBUG - VN ctest-vn2-18340395 UUID is 45e8c124-9c7d-4b47-a493-6b8557292a73 2025-08-07 16:38:44,745 - DEBUG - Services list from nova: [, , ] 2025-08-07 16:38:44,927 - DEBUG - Image by name cirros not found 2025-08-07 16:38:44,927 - DEBUG - Installing image cirros 2025-08-07 16:38:44,927 - DEBUG - Image info {'name': 'cirros-0.3.0-x86_64-disk.vmdk.gz', 'webserver': '', 'location': '/images/converts/', 'username': 'cirros', 'password': 'cubswin:)', 'type': 'os', 'flavor': 'contrail_flavor_tiny', 'params': '--container-format bare --disk-format vmdk --property vmware_disktype="sparse" --property vmware_adaptertype="ide" --property hw_scsi_model=virtio-scsi --property hw_disk_bus_model=virtio-scsi --property hw_disk_bus=virtio', 'name_docker': 'phusion-baseimage-enablesshd'} 2025-08-07 16:38:44,930 - DEBUG - Image build path http://nexus.opensdn.io/repository///images/converts//cirros-0.3.0-x86_64-disk.vmdk.gz 2025-08-07 16:38:44,931 - DEBUG - Download image from web http://nexus.opensdn.io/repository///images/converts//cirros-0.3.0-x86_64-disk.vmdk.gz 2025-08-07 16:38:44,956 - DEBUG - Image download (local=True) (proxy=None): Execute cmd: wget -nv http://nexus.opensdn.io/repository///images/converts//cirros-0.3.0-x86_64-disk.vmdk.gz -O /contrail-test/images/cirros-0.3.0-x86_64-disk.vmdk.gz 2025-08-07 16:38:45,063 - DEBUG - Image has been downloaded to /contrail-test/images/cirros-0.3.0-x86_64-disk.vmdk.gz 2025-08-07 16:38:45,064 - DEBUG - Unzip image 2025-08-07 16:38:45,064 - DEBUG - Image download (local=True) (proxy=None): Execute cmd: gunzip -f /contrail-test/images/cirros-0.3.0-x86_64-disk.vmdk.gz 2025-08-07 16:38:45,221 - DEBUG - Try to create image in user context 2025-08-07 16:38:45,579 - DEBUG - Image has been created in user context 2025-08-07 16:38:45,579 - DEBUG - Image download (local=True) (proxy=None): Execute cmd: rm -f /contrail-test/images/cirros-0.3.0-x86_64-disk.vmdk 2025-08-07 16:38:45,613 - DEBUG - Downloaded image has been removed 2025-08-07 16:38:45,677 - DEBUG - Uploaded image status = active 2025-08-07 16:38:46,977 - INFO - Deleting VN ctest-vn2-18340395 2025-08-07 16:38:47,173 - DEBUG - Response for deleting network () 2025-08-07 16:38:47,174 - INFO - Deleting VN ctest-vn1-53954653 2025-08-07 16:38:47,431 - DEBUG - Response for deleting network () 2025-08-07 16:38:47,560 - ERROR - BadRequest Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:38:46 2025 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /contrail-test/tcutils/wrappers.py in wrapper(self=, *args=(), **kwargs={}) 78 log.info('Initial checks done. Running the testcase now') 79 log.info('') 80 result = function(self, *args, **kwargs) 81 if self.inputs.upgrade: 82 pid = os.getpid() result = None function = self = args = () kwargs = {} /contrail-test/scripts/neutron/test_routers.py in test_basic_router_behavior(self=) 50 vn2_fixture = self.create_vn(vn2_name, vn2_subnets) 51 vn1_vm1_fixture = self.create_vm(vn1_fixture, vn1_vm1_name, 52 image_name='cirros') 53 vn2_vm1_fixture = self.create_vm(vn2_fixture, vn2_vm1_name, 54 image_name='cirros') image_name undefined /contrail-test/common/base.py in create_vm(self=, vn_fixture=, vm_name='ctest-vn1-vm1-88048865', image_name='cirros', port_ids=None, **kwargs={}) 279 image_name=image_name, 280 port_ids=port_ids, 281 **kwargs) 282 if cleanup: 283 self.addCleanup(vm_fixture.cleanUp) kwargs = {} /contrail-test/common/base.py in create_only_vm(cls=, vn_fixture=, vm_name='ctest-vn1-vm1-88048865', image_name='cirros', **kwargs={'port_ids': None}) 252 image_name=image_name, 253 **kwargs) 254 vm_obj.setUp() 255 return vm_obj 256 # end create_only_vm vm_obj = vm_obj.setUp = > /contrail-test/fixtures/vm_test.py in setUp(self=) 191 def setUp(self): 192 super(VMFixture, self).setUp() 193 self.create() 194 195 def create(self): self = self.create = > /contrail-test/fixtures/vm_test.py in create(self=) 243 userdata=self.userdata, 244 port_ids=self.port_ids, 245 fixed_ips=self.fixed_ips) 246 self.created = True 247 self.vm_obj = objs[0] fixed_ips undefined self = self.fixed_ips = [] /contrail-test/fixtures/openstack.py in create_vm(self=, vm_name='ctest-vn1-vm1-88048865', image_name='cirros', vn_objs=[{'network': {'id': '7ab2ba77-5a22-4ae8-8292-9ce1...port_security_enabled': True, 'description': ''}}], **kwargs={'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': 'ec02b585-fca1-43cf-b7d3-347db443f2ad', 'sg_ids': [], 'userdata': None, 'zone': None}) 116 except Exception as e: 117 vn_ids.append(vn.uuid) #For the case of VcenterVN obnect in vrouter gw case 118 return self.nova_h.create_vm(vm_name=vm_name, image_name=image_name, vn_ids=vn_ids, **kwargs) 119 120 def delete_vm(self, vm_obj, **kwargs): self = self.nova_h = self.nova_h.create_vm = > vm_name = 'ctest-vn1-vm1-88048865' image_name = 'cirros' vn_ids = ['7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e'] kwargs = {'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': 'ec02b585-fca1-43cf-b7d3-347db443f2ad', 'sg_ids': [], 'userdata': None, 'zone': None} /contrail-test/fixtures/nova_test.py in create_vm(self=, project_uuid='ec02b585-fca1-43cf-b7d3-347db443f2ad', image_name='cirros', vm_name='ctest-vn1-vm1-88048865', vn_ids=['7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e'], node_name='cn-jenkins-deploy-platform-ansible-os-3773-1', sg_ids=[], count=1, userdata=None, flavor=, port_ids=None, fixed_ips=[], zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1') 609 config_drive=config_drive, 610 key_name=self.key, availability_zone=zone, 611 min_count=count, max_count=count, userdata=userdata) 612 vm_objs = self.get_vm_list(name_pattern=vm_name, 613 project_id=project_uuid) min_count undefined count = 1 max_count undefined userdata = None /usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py in create(self=, name='ctest-vn1-vm1-88048865', image=, flavor=, meta=None, files=None, reservation_id=False, min_count=1, max_count=1, security_groups=[], userdata=None, key_name='ctest_ctest-TestRouters-35961750ctest-TestRouters-35961750key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': '7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e'}], scheduler_hints=None, config_drive=False, disk_config=None, admin_pass=None, access_ip_v4=None, access_ip_v6=None, trusted_image_certificates=None, host=None, hypervisor_hostname=None, **kwargs={}) 1479 1480 response_key = "server" if not reservation_id else "reservation_id" 1481 return self._boot(response_key, *boot_args, **boot_kwargs) 1482 1483 @api_versions.wraps("2.0", "2.18") self = self._boot = > response_key = 'server' boot_args = ['ctest-vn1-vm1-88048865', , ] boot_kwargs = {'access_ip_v4': None, 'access_ip_v6': None, 'admin_pass': None, 'availability_zone': 'nova:cn-jenkins-deploy-platform-ansible-os-3773-1', 'config_drive': False, 'disk_config': None, 'files': None, 'host': None, 'hypervisor_hostname': None, 'key_name': 'ctest_ctest-TestRouters-35961750ctest-TestRouters-35961750key1', ...} /usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py in _boot(self=, response_key='server', name='ctest-vn1-vm1-88048865', image=, flavor=, meta=None, files=None, userdata=None, reservation_id=False, return_raw=False, min_count=1, max_count=1, security_groups=[], key_name='ctest_ctest-TestRouters-35961750ctest-TestRouters-35961750key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': '7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e'}], scheduler_hints=None, config_drive=False, admin_pass=None, disk_config=None, access_ip_v4=None, access_ip_v6=None, description=None, tags=None, trusted_image_certificates=None, host=None, hypervisor_hostname=None, **kwargs={}) 844 845 return self._create('/servers', body, response_key, 846 return_raw=return_raw, **kwargs) 847 848 def get(self, server): return_raw = False kwargs = {} /usr/local/lib/python3.6/site-packages/novaclient/base.py in _create(self=, url='/servers', body={'server': {'availability_zone': 'nova:cn-jenkins-deploy-platform-ansible-os-3773-1', 'flavorRef': '230c3f60-73d8-4f2b-8736-17666ef3e0e9', 'imageRef': 'e37e4eda-b4f6-4a6c-afdd-921353fa56b5', 'key_name': 'ctest_ctest-TestRouters-35961750ctest-TestRouters-35961750key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-vn1-vm1-88048865', 'networks': [{'uuid': '7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e'}]}}, response_key='server', return_raw=False, obj_class=None, **kwargs={}) 362 obj_class=None, **kwargs): 363 self.run_hooks('modify_body_for_create', body, **kwargs) 364 resp, body = self.api.client.post(url, body=body) 365 if return_raw: 366 return self.convert_into_with_meta(body[response_key], resp) resp undefined body = {'server': {'availability_zone': 'nova:cn-jenkins-deploy-platform-ansible-os-3773-1', 'flavorRef': '230c3f60-73d8-4f2b-8736-17666ef3e0e9', 'imageRef': 'e37e4eda-b4f6-4a6c-afdd-921353fa56b5', 'key_name': 'ctest_ctest-TestRouters-35961750ctest-TestRouters-35961750key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-vn1-vm1-88048865', 'networks': [{'uuid': '7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e'}]}} self = self.api = self.api.client = self.api.client.post = > url = '/servers' /usr/local/lib/python3.6/site-packages/keystoneauth1/adapter.py in post(self=, url='/servers', **kwargs={'body': {'server': {'availability_zone': 'nova:cn-jenkins-deploy-platform-ansible-os-3773-1', 'flavorRef': '230c3f60-73d8-4f2b-8736-17666ef3e0e9', 'imageRef': 'e37e4eda-b4f6-4a6c-afdd-921353fa56b5', 'key_name': 'ctest_ctest-TestRouters-35961750ctest-TestRouters-35961750key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-vn1-vm1-88048865', 'networks': [{'uuid': '7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e'}]}}}) 390 391 def post(self, url, **kwargs): 392 return self.request(url, 'POST', **kwargs) 393 394 def put(self, url, **kwargs): self = self.request = > url = '/servers' kwargs = {'body': {'server': {'availability_zone': 'nova:cn-jenkins-deploy-platform-ansible-os-3773-1', 'flavorRef': '230c3f60-73d8-4f2b-8736-17666ef3e0e9', 'imageRef': 'e37e4eda-b4f6-4a6c-afdd-921353fa56b5', 'key_name': 'ctest_ctest-TestRouters-35961750ctest-TestRouters-35961750key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-vn1-vm1-88048865', 'networks': [{'uuid': '7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e'}]}}} /usr/local/lib/python3.6/site-packages/novaclient/client.py in request(self=, url='/servers', method='POST', **kwargs={'body': {'server': {'availability_zone': 'nova:cn-jenkins-deploy-platform-ansible-os-3773-1', 'flavorRef': '230c3f60-73d8-4f2b-8736-17666ef3e0e9', 'imageRef': 'e37e4eda-b4f6-4a6c-afdd-921353fa56b5', 'key_name': 'ctest_ctest-TestRouters-35961750ctest-TestRouters-35961750key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-vn1-vm1-88048865', 'networks': [{'uuid': '7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e'}]}}, 'headers': {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'python-novaclient', 'X-Auth-Token': 'gAAAAABolNaRaTfdoAnXeIFttcrBy0tqA8XrhYUXpblkuKNH...kFB1WBlKlqYS3OOfnMxegtPT2V0A7zGJYqSX1sge8H8h5L7ZQ'}}) 76 # api_versions.check_headers(resp, self.api_version) 77 if raise_exc and resp.status_code >= 400: 78 raise exceptions.from_response(resp, body, url, method) 79 80 return resp, body global exceptions = exceptions.from_response = resp = body = {'badRequest': {'code': 400, 'message': 'Network 7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e requires a subnet in order to boot instances on.'}} url = '/servers' method = 'POST' BadRequest: Network 7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-33a50e53-7554-4aa9-94b8-6eb3e9982353) __cause__ = None __class__ = __context__ = None __delattr__ = __dict__ = {'code': 400, 'details': None, 'message': 'Network 7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e requires a subnet in order to boot instances on.', 'method': 'POST', 'request_id': 'req-33a50e53-7554-4aa9-94b8-6eb3e9982353', 'url': '/servers'} __dir__ = __doc__ = '\n HTTP 400 - Bad request: you sent some malformed data.\n ' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __module__ = 'novaclient.exceptions' __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = __weakref__ = None args = () code = 400 details = None http_status = 400 message = 'Network 7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e requires a subnet in order to boot instances on.' method = 'POST' request_id = 'req-33a50e53-7554-4aa9-94b8-6eb3e9982353' url = '/servers' with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 80, in wrapper result = function(self, *args, **kwargs) File "/contrail-test/scripts/neutron/test_routers.py", line 52, in test_basic_router_behavior image_name='cirros') File "/contrail-test/common/base.py", line 281, in create_vm **kwargs) File "/contrail-test/common/base.py", line 254, in create_only_vm vm_obj.setUp() File "/contrail-test/fixtures/vm_test.py", line 193, in setUp self.create() File "/contrail-test/fixtures/vm_test.py", line 245, in create fixed_ips=self.fixed_ips) File "/contrail-test/fixtures/openstack.py", line 118, in create_vm return self.nova_h.create_vm(vm_name=vm_name, image_name=image_name, vn_ids=vn_ids, **kwargs) File "/contrail-test/fixtures/nova_test.py", line 611, in create_vm min_count=count, max_count=count, userdata=userdata) File "/usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py", line 1481, in create return self._boot(response_key, *boot_args, **boot_kwargs) File "/usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py", line 846, in _boot return_raw=return_raw, **kwargs) File "/usr/local/lib/python3.6/site-packages/novaclient/base.py", line 364, in _create resp, body = self.api.client.post(url, body=body) File "/usr/local/lib/python3.6/site-packages/keystoneauth1/adapter.py", line 392, in post return self.request(url, 'POST', **kwargs) File "/usr/local/lib/python3.6/site-packages/novaclient/client.py", line 78, in request raise exceptions.from_response(resp, body, url, method) novaclient.exceptions.BadRequest: Network 7ab2ba77-5a22-4ae8-8292-9ce1dbedd27e requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-33a50e53-7554-4aa9-94b8-6eb3e9982353) 2025-08-07 16:38:47,569 - DEBUG - No XMPP flaps were noticed during the test 2025-08-07 16:38:47,569 - INFO -
2025-08-07 16:38:47,569 - INFO - END TEST : test_basic_router_behavior : FAILED[0:00:05]
2025-08-07 16:38:47,569 - INFO - -------------------------------------------------------------------------------- 2025-08-07 16:38:48,524 - INFO - Deleted project: ctest-TestRouters-35961750, ID : ec02b585-fca1-43cf-b7d3-347db443f2ad