Name | Status | Type | Time(s) | LogFile |
test_perms2_global_share[ci_sanity,sanity] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: HttpError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:40:31 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=<serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7fa7d2e31d30>, *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 = <function TestRbac.test_perms2_global_share> self = <serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7fa7d2e31d30> args = () kwargs = {}
/contrail-test/serial_scripts/rbac/test_rbac.py in test_perms2_global_share(self=<serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7fa7d2e31d30>) 48 }] 49 domain_rbac = self.create_rbac_acl(rules=rules, parent_type='domain') 50 vn = self.create_vn(connections=u1_p1_conn, shared=True, verify=False) 51 assert vn, 'VN creation failed' 52 obj = self.read_vn(connections=u1_p1_conn, uuid=vn.uuid) vn undefined self = <serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7fa7d2e31d30> self.create_vn = <bound method BaseRbac.create_vn of <serial_scri...lobal_share[ci_sanity,sanity] id=0x7fa7d2e31d30>> connections undefined u1_p1_conn = <common.connections.ContrailConnections object> shared undefined verify undefined
/contrail-test/serial_scripts/rbac/base.py in create_vn(self=<serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7fa7d2e31d30>, connections=<common.connections.ContrailConnections object>, verify=False, option='contrail', **kwargs={'shared': True}) 215 connections = connections or self.connections 216 vn_fixture = self.create_fixture(VNFixture, connections=connections, 217 option=option, **kwargs) 218 if vn_fixture and verify: 219 #WA of verifying using admin creds since RI etal system objects option = 'contrail' kwargs = {'shared': True}
/contrail-test/serial_scripts/rbac/base.py in create_fixture(self=<serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7fa7d2e31d30>, fixturecls=<class 'vn_test.VNFixture'>, **kwargs={'connections': <common.connections.ContrailConnections object>, 'option': 'contrail', 'shared': True}) 352 def create_fixture(self, fixturecls, **kwargs): 353 try: 354 return self.useFixture(fixturecls(**kwargs)) 355 except (PermissionDenied, neutron_forbidden): 356 return None self = <serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7fa7d2e31d30> self.useFixture = <bound method TestCase.useFixture of <serial_scr...lobal_share[ci_sanity,sanity] id=0x7fa7d2e31d30>> fixturecls = <class 'vn_test.VNFixture'> kwargs = {'connections': <common.connections.ContrailConnections object>, 'option': 'contrail', 'shared': True}
/usr/local/lib/python3.6/site-packages/testtools/testcase.py in useFixture(self=<serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7fa7d2e31d30>, fixture=<vn_test.VNFixture object>) 754 # Gather_details worked, so raise the exception setUp 755 # encountered. 756 reraise(*exc_info) 757 else: 758 self.addCleanup(fixture.cleanUp) global reraise = <function reraise> exc_info = (<class 'vnc_api.exceptions.HttpError'>, HttpError(500, "'NoneType' object is not iterable"), <traceback object>)
/usr/local/lib/python3.6/site-packages/testtools/_compat3x.py in reraise(exc_class=<class 'vnc_api.exceptions.HttpError'>, exc_obj=HttpError(500, "'NoneType' object is not iterable"), exc_tb=<traceback object>, _marker=<object object>) 13 14 def reraise(exc_class, exc_obj, exc_tb, _marker=object()): 15 """Re-raise an exception received from sys.exc_info() or similar.""" 16 raise exc_obj.with_traceback(exc_tb) 17 exc_obj = HttpError(500, "'NoneType' object is not iterable") exc_obj.with_traceback = <built-in method with_traceback of HttpError object> exc_tb = <traceback object>
/usr/local/lib/python3.6/site-packages/testtools/testcase.py in useFixture(self=<serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7fa7d2e31d30>, fixture=<vn_test.VNFixture object>) 729 """ 730 try: 731 fixture.setUp() 732 except MultipleExceptions as e: 733 if (fixtures is not None and fixture = <vn_test.VNFixture object> fixture.setUp = <bound method VNFixture.setUp of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in setUp(self=<vn_test.VNFixture object>) 437 def setUp(self): 438 super(VNFixture, self).setUp() 439 self.create() 440 441 def create(self): self = <vn_test.VNFixture object> self.create = <bound method VNFixture.create of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in create(self=<vn_test.VNFixture object>) 448 self.webui.create_vn(self) 449 elif (self.option == 'contrail'): 450 self._create_vn_api(self.vn_name, self.project_obj) 451 else: 452 self._create_vn_orch() self = <vn_test.VNFixture object> self._create_vn_api = <bound method VNFixture._create_vn_api of <vn_test.VNFixture object>> self.vn_name = 'ctest-TestRbac-35145938-35002225' self.project_obj = <vnc_api.gen.resource_client.Project object>
/contrail-test/fixtures/vn_test.py in _create_vn_api(self=<vn_test.VNFixture object>, vn_name='ctest-TestRbac-35145938-35002225', project_obj=<vnc_api.gen.resource_client.Project object>) 414 ipam_sn_lst.append(ipam_sn) 415 self.api_vn_obj.add_network_ipam(ipam, VnSubnetsType(ipam_sn_lst)) 416 self.vnc_lib_h.virtual_network_update(self.api_vn_obj) 417 else: 418 with self.lock: self = <vn_test.VNFixture object> self.vnc_lib_h = <vnc_api_test.TestVncApi object> self.vnc_lib_h.virtual_network_update = functools.partial(<bound method VncApi._object_u...pi object at 0x7fa7d17bf978>>, 'virtual-network') self.api_vn_obj = <vnc_api.gen.resource_client.VirtualNetwork object>
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in wrapper(self=<vnc_api_test.TestVncApi object>, *args=('virtual-network', <vnc_api.gen.resource_client.VirtualNetwork object>), **kwargs={}) 50 retry_on_error=False) 51 self._parse_homepage(homepage) 52 return func(self, *args, **kwargs) 53 return wrapper 54 func = <function VncApi._object_update> self = <vnc_api_test.TestVncApi object> args = ('virtual-network', <vnc_api.gen.resource_client.VirtualNetwork object>) kwargs = {}
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in _object_update(self=<vnc_api_test.TestVncApi object>, res_type='virtual-network', obj=<vnc_api.gen.resource_client.VirtualNetwork object>) 831 self.ref_update( 832 res_type, obj.uuid, ref_name, ref[0], list(ref[1]), 833 'ADD', ref[2]) 834 obj.clear_pending_updates() 835 ref = ('ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ('default-domain', 'default-project', 'default-network-ipam'), ipam_subnets = [subnet = ip_prefix = 54.88.9.192...None, dhcp_relay_server = []], host_routes = None)
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in wrapper(self=<vnc_api_test.TestVncApi object>, *args=('virtual-network', 'c04afeee-de1f-4550-af08-13ab7d71e377', 'network_ipam_refs', 'ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ['default-domain', 'default-project', 'default-network-ipam'], 'ADD', ipam_subnets = [subnet = ip_prefix = 54.88.9.192...None, dhcp_relay_server = []], host_routes = None), **kwargs={}) 50 retry_on_error=False) 51 self._parse_homepage(homepage) 52 return func(self, *args, **kwargs) 53 return wrapper 54 func = <function VncApi.ref_update> self = <vnc_api_test.TestVncApi object> args = ('virtual-network', 'c04afeee-de1f-4550-af08-13ab7d71e377', 'network_ipam_refs', 'ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ['default-domain', 'default-project', 'default-network-ipam'], 'ADD', ipam_subnets = [subnet = ip_prefix = 54.88.9.192...None, dhcp_relay_server = []], host_routes = None) kwargs = {}
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in ref_update(self=<vnc_api_test.TestVncApi object>, obj_type='virtual-network', obj_uuid='c04afeee-de1f-4550-af08-13ab7d71e377', ref_type='network-ipam', ref_uuid='ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ref_fq_name=['default-domain', 'default-project', 'default-network-ipam'], operation='ADD', attr=ipam_subnets = [subnet = ip_prefix = 54.88.9.192...None, dhcp_relay_server = []], host_routes = None) 1362 if he.status_code == 404: 1363 return None 1364 raise he 1365 1366 return json.loads(content)['uuid'] he undefined
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in ref_update(self=<vnc_api_test.TestVncApi object>, obj_type='virtual-network', obj_uuid='c04afeee-de1f-4550-af08-13ab7d71e377', ref_type='network-ipam', ref_uuid='ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ref_fq_name=['default-domain', 'default-project', 'default-network-ipam'], operation='ADD', attr=ipam_subnets = [subnet = ip_prefix = 54.88.9.192...None, dhcp_relay_server = []], host_routes = None) 1358 uri = self._action_uri['ref-update'] 1359 try: 1360 content = self._request_server(OP_POST, uri, data=json_body) 1361 except HttpError as he: 1362 if he.status_code == 404: content undefined self = <vnc_api_test.TestVncApi object> self._request_server = <bound method VncApi._request_server of <vnc_api_test.TestVncApi object>> global OP_POST = 1 uri = '/ref-update' data undefined json_body = '{"type": "virtual-network", "uuid": "c04afeee-de... "dhcp_relay_server": []}], "host_routes": null}}'
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in _request_server(self=<vnc_api_test.TestVncApi object>, op=1, url='/ref-update', data='{"type": "virtual-network", "uuid": "c04afeee-de... "dhcp_relay_server": []}], "host_routes": null}}', retry_on_error=True, retry_after_authn=False, retry_count=30) 1126 return self._request( 1127 op, url, data=data, retry_on_error=retry_on_error, 1128 retry_after_authn=retry_after_authn, retry_count=retry_count) 1129 # end _request_server 1130 retry_after_authn = False retry_count = 30
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in _request(self=<vnc_api_test.TestVncApi object>, op=1, url='/ref-update', data='{"type": "virtual-network", "uuid": "c04afeee-de... "dhcp_relay_server": []}], "host_routes": null}}', retry_on_error=True, retry_after_authn=False, retry_count=30) 1206 raise AuthFailed(status, content) 1207 else: # Unknown Error 1208 raise HttpError(status, content) 1209 # end while True 1210 global HttpError = <class 'vnc_api.exceptions.HttpError'> status = 500 content = "'NoneType' object is not iterable" HttpError: HTTP Status: 500 Content: 'NoneType' object is not iterable __cause__ = None __class__ = <class 'vnc_api.exceptions.HttpError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of HttpError object> __dict__ = {'content': "'NoneType' object is not iterable", 'status_code': 500} __dir__ = <built-in method __dir__ of HttpError object> __doc__ = None __eq__ = <method-wrapper '__eq__' of HttpError object> __format__ = <built-in method __format__ of HttpError object> __ge__ = <method-wrapper '__ge__' of HttpError object> __getattribute__ = <method-wrapper '__getattribute__' of HttpError object> __gt__ = <method-wrapper '__gt__' of HttpError object> __hash__ = <method-wrapper '__hash__' of HttpError object> __init__ = <bound method HttpError.__init__ of HttpError(500, "'NoneType' object is not iterable")> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of HttpError object> __lt__ = <method-wrapper '__lt__' of HttpError object> __module__ = 'vnc_api.exceptions' __ne__ = <method-wrapper '__ne__' of HttpError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of HttpError object> __reduce_ex__ = <built-in method __reduce_ex__ of HttpError object> __repr__ = <method-wrapper '__repr__' of HttpError object> __setattr__ = <method-wrapper '__setattr__' of HttpError object> __setstate__ = <built-in method __setstate__ of HttpError object> __sizeof__ = <built-in method __sizeof__ of HttpError object> __str__ = <bound method HttpError.__str__ of HttpError(500, "'NoneType' object is not iterable")> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = (500, "'NoneType' object is not iterable") content = "'NoneType' object is not iterable" status_code = 500 with_traceback = <built-in method with_traceback of HttpError object>
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/serial_scripts/rbac/test_rbac.py", line 50, in test_perms2_global_share vn = self.create_vn(connections=u1_p1_conn, shared=True, verify=False) File "/contrail-test/serial_scripts/rbac/base.py", line 217, in create_vn option=option, **kwargs) File "/contrail-test/serial_scripts/rbac/base.py", line 354, in create_fixture return self.useFixture(fixturecls(**kwargs)) File "/usr/local/lib/python3.6/site-packages/testtools/testcase.py", line 756, in useFixture reraise(*exc_info) File "/usr/local/lib/python3.6/site-packages/testtools/_compat3x.py", line 16, in reraise raise exc_obj.with_traceback(exc_tb) File "/usr/local/lib/python3.6/site-packages/testtools/testcase.py", line 731, in useFixture fixture.setUp() File "/contrail-test/fixtures/vn_test.py", line 439, in setUp self.create() File "/contrail-test/fixtures/vn_test.py", line 450, in create self._create_vn_api(self.vn_name, self.project_obj) File "/contrail-test/fixtures/vn_test.py", line 416, in _create_vn_api self.vnc_lib_h.virtual_network_update(self.api_vn_obj) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 833, in _object_update 'ADD', ref[2]) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1364, in ref_update raise he File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1360, in ref_update content = self._request_server(OP_POST, uri, data=json_body) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1128, in _request_server retry_after_authn=retry_after_authn, retry_count=retry_count) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1208, in _request raise HttpError(status, content) vnc_api.exceptions.HttpError: HTTP Status: 500 Content: 'NoneType' object is not iterable
| 74.924 |
Log File
|
test_perms2_owner[ci_sanity,sanity,suite1] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: HttpError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:41:55 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=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...owner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8>, *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 = <function TestRbacBasic.test_perms2_owner> self = <serial_scripts.rbac.test_rbac_basic.TestRbacBas...owner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8> args = () kwargs = {}
/contrail-test/serial_scripts/rbac/test_rbac_basic.py in test_perms2_owner(self=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...owner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8>) 223 ] 224 domain_rbac = self.create_rbac_acl(rules=vn_rules, parent_type='domain') 225 vn = self.create_vn(connections=u1_p1_conn, verify=False) 226 assert vn, 'VN creation failed' 227 vn2 = self.create_vn(connections=u1_p2_conn, verify=False) vn undefined self = <serial_scripts.rbac.test_rbac_basic.TestRbacBas...owner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8> self.create_vn = <bound method BaseRbac.create_vn of <serial_scri...wner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8>> connections undefined u1_p1_conn = <common.connections.ContrailConnections object> verify undefined
/contrail-test/serial_scripts/rbac/base.py in create_vn(self=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...owner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8>, connections=<common.connections.ContrailConnections object>, verify=False, option='contrail', **kwargs={}) 215 connections = connections or self.connections 216 vn_fixture = self.create_fixture(VNFixture, connections=connections, 217 option=option, **kwargs) 218 if vn_fixture and verify: 219 #WA of verifying using admin creds since RI etal system objects option = 'contrail' kwargs = {}
/contrail-test/serial_scripts/rbac/base.py in create_fixture(self=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...owner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8>, fixturecls=<class 'vn_test.VNFixture'>, **kwargs={'connections': <common.connections.ContrailConnections object>, 'option': 'contrail'}) 352 def create_fixture(self, fixturecls, **kwargs): 353 try: 354 return self.useFixture(fixturecls(**kwargs)) 355 except (PermissionDenied, neutron_forbidden): 356 return None self = <serial_scripts.rbac.test_rbac_basic.TestRbacBas...owner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8> self.useFixture = <bound method TestCase.useFixture of <serial_scr...wner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8>> fixturecls = <class 'vn_test.VNFixture'> kwargs = {'connections': <common.connections.ContrailConnections object>, 'option': 'contrail'}
/usr/local/lib/python3.6/site-packages/testtools/testcase.py in useFixture(self=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...owner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8>, fixture=<vn_test.VNFixture object>) 754 # Gather_details worked, so raise the exception setUp 755 # encountered. 756 reraise(*exc_info) 757 else: 758 self.addCleanup(fixture.cleanUp) global reraise = <function reraise> exc_info = (<class 'vnc_api.exceptions.HttpError'>, HttpError(500, "'NoneType' object is not iterable"), <traceback object>)
/usr/local/lib/python3.6/site-packages/testtools/_compat3x.py in reraise(exc_class=<class 'vnc_api.exceptions.HttpError'>, exc_obj=HttpError(500, "'NoneType' object is not iterable"), exc_tb=<traceback object>, _marker=<object object>) 13 14 def reraise(exc_class, exc_obj, exc_tb, _marker=object()): 15 """Re-raise an exception received from sys.exc_info() or similar.""" 16 raise exc_obj.with_traceback(exc_tb) 17 exc_obj = HttpError(500, "'NoneType' object is not iterable") exc_obj.with_traceback = <built-in method with_traceback of HttpError object> exc_tb = <traceback object>
/usr/local/lib/python3.6/site-packages/testtools/testcase.py in useFixture(self=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...owner[ci_sanity,sanity,suite1] id=0x7fa7d2e3f0b8>, fixture=<vn_test.VNFixture object>) 729 """ 730 try: 731 fixture.setUp() 732 except MultipleExceptions as e: 733 if (fixtures is not None and fixture = <vn_test.VNFixture object> fixture.setUp = <bound method VNFixture.setUp of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in setUp(self=<vn_test.VNFixture object>) 437 def setUp(self): 438 super(VNFixture, self).setUp() 439 self.create() 440 441 def create(self): self = <vn_test.VNFixture object> self.create = <bound method VNFixture.create of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in create(self=<vn_test.VNFixture object>) 448 self.webui.create_vn(self) 449 elif (self.option == 'contrail'): 450 self._create_vn_api(self.vn_name, self.project_obj) 451 else: 452 self._create_vn_orch() self = <vn_test.VNFixture object> self._create_vn_api = <bound method VNFixture._create_vn_api of <vn_test.VNFixture object>> self.vn_name = 'ctest-TestRbacBasic-22714793-28260739' self.project_obj = <vnc_api.gen.resource_client.Project object>
/contrail-test/fixtures/vn_test.py in _create_vn_api(self=<vn_test.VNFixture object>, vn_name='ctest-TestRbacBasic-22714793-28260739', project_obj=<vnc_api.gen.resource_client.Project object>) 414 ipam_sn_lst.append(ipam_sn) 415 self.api_vn_obj.add_network_ipam(ipam, VnSubnetsType(ipam_sn_lst)) 416 self.vnc_lib_h.virtual_network_update(self.api_vn_obj) 417 else: 418 with self.lock: self = <vn_test.VNFixture object> self.vnc_lib_h = <vnc_api_test.TestVncApi object> self.vnc_lib_h.virtual_network_update = functools.partial(<bound method VncApi._object_u...pi object at 0x7fa7d13e7dd8>>, 'virtual-network') self.api_vn_obj = <vnc_api.gen.resource_client.VirtualNetwork object>
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in wrapper(self=<vnc_api_test.TestVncApi object>, *args=('virtual-network', <vnc_api.gen.resource_client.VirtualNetwork object>), **kwargs={}) 50 retry_on_error=False) 51 self._parse_homepage(homepage) 52 return func(self, *args, **kwargs) 53 return wrapper 54 func = <function VncApi._object_update> self = <vnc_api_test.TestVncApi object> args = ('virtual-network', <vnc_api.gen.resource_client.VirtualNetwork object>) kwargs = {}
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in _object_update(self=<vnc_api_test.TestVncApi object>, res_type='virtual-network', obj=<vnc_api.gen.resource_client.VirtualNetwork object>) 831 self.ref_update( 832 res_type, obj.uuid, ref_name, ref[0], list(ref[1]), 833 'ADD', ref[2]) 834 obj.clear_pending_updates() 835 ref = ('ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ('default-domain', 'default-project', 'default-network-ipam'), ipam_subnets = [subnet = ip_prefix = 186.6.151.6...None, dhcp_relay_server = []], host_routes = None)
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in wrapper(self=<vnc_api_test.TestVncApi object>, *args=('virtual-network', 'e3565ac0-ae2a-4361-9eb3-d1a8e9b46e0d', 'network_ipam_refs', 'ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ['default-domain', 'default-project', 'default-network-ipam'], 'ADD', ipam_subnets = [subnet = ip_prefix = 186.6.151.6...None, dhcp_relay_server = []], host_routes = None), **kwargs={}) 50 retry_on_error=False) 51 self._parse_homepage(homepage) 52 return func(self, *args, **kwargs) 53 return wrapper 54 func = <function VncApi.ref_update> self = <vnc_api_test.TestVncApi object> args = ('virtual-network', 'e3565ac0-ae2a-4361-9eb3-d1a8e9b46e0d', 'network_ipam_refs', 'ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ['default-domain', 'default-project', 'default-network-ipam'], 'ADD', ipam_subnets = [subnet = ip_prefix = 186.6.151.6...None, dhcp_relay_server = []], host_routes = None) kwargs = {}
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in ref_update(self=<vnc_api_test.TestVncApi object>, obj_type='virtual-network', obj_uuid='e3565ac0-ae2a-4361-9eb3-d1a8e9b46e0d', ref_type='network-ipam', ref_uuid='ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ref_fq_name=['default-domain', 'default-project', 'default-network-ipam'], operation='ADD', attr=ipam_subnets = [subnet = ip_prefix = 186.6.151.6...None, dhcp_relay_server = []], host_routes = None) 1362 if he.status_code == 404: 1363 return None 1364 raise he 1365 1366 return json.loads(content)['uuid'] he undefined
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in ref_update(self=<vnc_api_test.TestVncApi object>, obj_type='virtual-network', obj_uuid='e3565ac0-ae2a-4361-9eb3-d1a8e9b46e0d', ref_type='network-ipam', ref_uuid='ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ref_fq_name=['default-domain', 'default-project', 'default-network-ipam'], operation='ADD', attr=ipam_subnets = [subnet = ip_prefix = 186.6.151.6...None, dhcp_relay_server = []], host_routes = None) 1358 uri = self._action_uri['ref-update'] 1359 try: 1360 content = self._request_server(OP_POST, uri, data=json_body) 1361 except HttpError as he: 1362 if he.status_code == 404: content undefined self = <vnc_api_test.TestVncApi object> self._request_server = <bound method VncApi._request_server of <vnc_api_test.TestVncApi object>> global OP_POST = 1 uri = '/ref-update' data undefined json_body = '{"type": "virtual-network", "uuid": "e3565ac0-ae... "dhcp_relay_server": []}], "host_routes": null}}'
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in _request_server(self=<vnc_api_test.TestVncApi object>, op=1, url='/ref-update', data='{"type": "virtual-network", "uuid": "e3565ac0-ae... "dhcp_relay_server": []}], "host_routes": null}}', retry_on_error=True, retry_after_authn=False, retry_count=30) 1126 return self._request( 1127 op, url, data=data, retry_on_error=retry_on_error, 1128 retry_after_authn=retry_after_authn, retry_count=retry_count) 1129 # end _request_server 1130 retry_after_authn = False retry_count = 30
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in _request(self=<vnc_api_test.TestVncApi object>, op=1, url='/ref-update', data='{"type": "virtual-network", "uuid": "e3565ac0-ae... "dhcp_relay_server": []}], "host_routes": null}}', retry_on_error=True, retry_after_authn=False, retry_count=30) 1206 raise AuthFailed(status, content) 1207 else: # Unknown Error 1208 raise HttpError(status, content) 1209 # end while True 1210 global HttpError = <class 'vnc_api.exceptions.HttpError'> status = 500 content = "'NoneType' object is not iterable" HttpError: HTTP Status: 500 Content: 'NoneType' object is not iterable __cause__ = None __class__ = <class 'vnc_api.exceptions.HttpError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of HttpError object> __dict__ = {'content': "'NoneType' object is not iterable", 'status_code': 500} __dir__ = <built-in method __dir__ of HttpError object> __doc__ = None __eq__ = <method-wrapper '__eq__' of HttpError object> __format__ = <built-in method __format__ of HttpError object> __ge__ = <method-wrapper '__ge__' of HttpError object> __getattribute__ = <method-wrapper '__getattribute__' of HttpError object> __gt__ = <method-wrapper '__gt__' of HttpError object> __hash__ = <method-wrapper '__hash__' of HttpError object> __init__ = <bound method HttpError.__init__ of HttpError(500, "'NoneType' object is not iterable")> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of HttpError object> __lt__ = <method-wrapper '__lt__' of HttpError object> __module__ = 'vnc_api.exceptions' __ne__ = <method-wrapper '__ne__' of HttpError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of HttpError object> __reduce_ex__ = <built-in method __reduce_ex__ of HttpError object> __repr__ = <method-wrapper '__repr__' of HttpError object> __setattr__ = <method-wrapper '__setattr__' of HttpError object> __setstate__ = <built-in method __setstate__ of HttpError object> __sizeof__ = <built-in method __sizeof__ of HttpError object> __str__ = <bound method HttpError.__str__ of HttpError(500, "'NoneType' object is not iterable")> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = (500, "'NoneType' object is not iterable") content = "'NoneType' object is not iterable" status_code = 500 with_traceback = <built-in method with_traceback of HttpError object>
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/serial_scripts/rbac/test_rbac_basic.py", line 225, in test_perms2_owner vn = self.create_vn(connections=u1_p1_conn, verify=False) File "/contrail-test/serial_scripts/rbac/base.py", line 217, in create_vn option=option, **kwargs) File "/contrail-test/serial_scripts/rbac/base.py", line 354, in create_fixture return self.useFixture(fixturecls(**kwargs)) File "/usr/local/lib/python3.6/site-packages/testtools/testcase.py", line 756, in useFixture reraise(*exc_info) File "/usr/local/lib/python3.6/site-packages/testtools/_compat3x.py", line 16, in reraise raise exc_obj.with_traceback(exc_tb) File "/usr/local/lib/python3.6/site-packages/testtools/testcase.py", line 731, in useFixture fixture.setUp() File "/contrail-test/fixtures/vn_test.py", line 439, in setUp self.create() File "/contrail-test/fixtures/vn_test.py", line 450, in create self._create_vn_api(self.vn_name, self.project_obj) File "/contrail-test/fixtures/vn_test.py", line 416, in _create_vn_api self.vnc_lib_h.virtual_network_update(self.api_vn_obj) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 833, in _object_update 'ADD', ref[2]) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1364, in ref_update raise he File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1360, in ref_update content = self._request_server(OP_POST, uri, data=json_body) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1128, in _request_server retry_after_authn=retry_after_authn, retry_count=retry_count) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1208, in _request raise HttpError(status, content) vnc_api.exceptions.HttpError: HTTP Status: 500 Content: 'NoneType' object is not iterable
| 74.868 |
Log File
|
test_rbac_acl_different_roles[ci_sanity,sanity,suite1] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: HttpError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:43:07 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=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...roles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0>, *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 = <function TestRbacBasic.test_rbac_acl_different_roles> self = <serial_scripts.rbac.test_rbac_basic.TestRbacBas...roles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0> args = () kwargs = {}
/contrail-test/serial_scripts/rbac/test_rbac_basic.py in test_rbac_acl_different_roles(self=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...roles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0>) 45 ] 46 proj_rbac = self.create_rbac_acl(rules=vn_rules) 47 vn = self.create_vn(connections=user1_conn) 48 assert vn, 'VN creation failed' 49 assert not self.create_st(connections=user1_conn), 'ST creation should have failed' vn undefined self = <serial_scripts.rbac.test_rbac_basic.TestRbacBas...roles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0> self.create_vn = <bound method BaseRbac.create_vn of <serial_scri...oles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0>> connections undefined user1_conn = <common.connections.ContrailConnections object>
/contrail-test/serial_scripts/rbac/base.py in create_vn(self=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...roles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0>, connections=<common.connections.ContrailConnections object>, verify=True, option='contrail', **kwargs={}) 215 connections = connections or self.connections 216 vn_fixture = self.create_fixture(VNFixture, connections=connections, 217 option=option, **kwargs) 218 if vn_fixture and verify: 219 #WA of verifying using admin creds since RI etal system objects option = 'contrail' kwargs = {}
/contrail-test/serial_scripts/rbac/base.py in create_fixture(self=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...roles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0>, fixturecls=<class 'vn_test.VNFixture'>, **kwargs={'connections': <common.connections.ContrailConnections object>, 'option': 'contrail'}) 352 def create_fixture(self, fixturecls, **kwargs): 353 try: 354 return self.useFixture(fixturecls(**kwargs)) 355 except (PermissionDenied, neutron_forbidden): 356 return None self = <serial_scripts.rbac.test_rbac_basic.TestRbacBas...roles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0> self.useFixture = <bound method TestCase.useFixture of <serial_scr...oles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0>> fixturecls = <class 'vn_test.VNFixture'> kwargs = {'connections': <common.connections.ContrailConnections object>, 'option': 'contrail'}
/usr/local/lib/python3.6/site-packages/testtools/testcase.py in useFixture(self=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...roles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0>, fixture=<vn_test.VNFixture object>) 754 # Gather_details worked, so raise the exception setUp 755 # encountered. 756 reraise(*exc_info) 757 else: 758 self.addCleanup(fixture.cleanUp) global reraise = <function reraise> exc_info = (<class 'vnc_api.exceptions.HttpError'>, HttpError(500, "'NoneType' object is not iterable"), <traceback object>)
/usr/local/lib/python3.6/site-packages/testtools/_compat3x.py in reraise(exc_class=<class 'vnc_api.exceptions.HttpError'>, exc_obj=HttpError(500, "'NoneType' object is not iterable"), exc_tb=<traceback object>, _marker=<object object>) 13 14 def reraise(exc_class, exc_obj, exc_tb, _marker=object()): 15 """Re-raise an exception received from sys.exc_info() or similar.""" 16 raise exc_obj.with_traceback(exc_tb) 17 exc_obj = HttpError(500, "'NoneType' object is not iterable") exc_obj.with_traceback = <built-in method with_traceback of HttpError object> exc_tb = <traceback object>
/usr/local/lib/python3.6/site-packages/testtools/testcase.py in useFixture(self=<serial_scripts.rbac.test_rbac_basic.TestRbacBas...roles[ci_sanity,sanity,suite1] id=0x7fa7d2e3f9b0>, fixture=<vn_test.VNFixture object>) 729 """ 730 try: 731 fixture.setUp() 732 except MultipleExceptions as e: 733 if (fixtures is not None and fixture = <vn_test.VNFixture object> fixture.setUp = <bound method VNFixture.setUp of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in setUp(self=<vn_test.VNFixture object>) 437 def setUp(self): 438 super(VNFixture, self).setUp() 439 self.create() 440 441 def create(self): self = <vn_test.VNFixture object> self.create = <bound method VNFixture.create of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in create(self=<vn_test.VNFixture object>) 448 self.webui.create_vn(self) 449 elif (self.option == 'contrail'): 450 self._create_vn_api(self.vn_name, self.project_obj) 451 else: 452 self._create_vn_orch() self = <vn_test.VNFixture object> self._create_vn_api = <bound method VNFixture._create_vn_api of <vn_test.VNFixture object>> self.vn_name = 'ctest-TestRbacBasic-35440749-87220322' self.project_obj = <vnc_api.gen.resource_client.Project object>
/contrail-test/fixtures/vn_test.py in _create_vn_api(self=<vn_test.VNFixture object>, vn_name='ctest-TestRbacBasic-35440749-87220322', project_obj=<vnc_api.gen.resource_client.Project object>) 414 ipam_sn_lst.append(ipam_sn) 415 self.api_vn_obj.add_network_ipam(ipam, VnSubnetsType(ipam_sn_lst)) 416 self.vnc_lib_h.virtual_network_update(self.api_vn_obj) 417 else: 418 with self.lock: self = <vn_test.VNFixture object> self.vnc_lib_h = <vnc_api_test.TestVncApi object> self.vnc_lib_h.virtual_network_update = functools.partial(<bound method VncApi._object_u...pi object at 0x7fa7d13e1828>>, 'virtual-network') self.api_vn_obj = <vnc_api.gen.resource_client.VirtualNetwork object>
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in wrapper(self=<vnc_api_test.TestVncApi object>, *args=('virtual-network', <vnc_api.gen.resource_client.VirtualNetwork object>), **kwargs={}) 50 retry_on_error=False) 51 self._parse_homepage(homepage) 52 return func(self, *args, **kwargs) 53 return wrapper 54 func = <function VncApi._object_update> self = <vnc_api_test.TestVncApi object> args = ('virtual-network', <vnc_api.gen.resource_client.VirtualNetwork object>) kwargs = {}
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in _object_update(self=<vnc_api_test.TestVncApi object>, res_type='virtual-network', obj=<vnc_api.gen.resource_client.VirtualNetwork object>) 831 self.ref_update( 832 res_type, obj.uuid, ref_name, ref[0], list(ref[1]), 833 'ADD', ref[2]) 834 obj.clear_pending_updates() 835 ref = ('ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ('default-domain', 'default-project', 'default-network-ipam'), ipam_subnets = [subnet = ip_prefix = 42.103.18.1...None, dhcp_relay_server = []], host_routes = None)
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in wrapper(self=<vnc_api_test.TestVncApi object>, *args=('virtual-network', '37d4c02f-b304-436b-a3aa-5fa5b4b750aa', 'network_ipam_refs', 'ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ['default-domain', 'default-project', 'default-network-ipam'], 'ADD', ipam_subnets = [subnet = ip_prefix = 42.103.18.1...None, dhcp_relay_server = []], host_routes = None), **kwargs={}) 50 retry_on_error=False) 51 self._parse_homepage(homepage) 52 return func(self, *args, **kwargs) 53 return wrapper 54 func = <function VncApi.ref_update> self = <vnc_api_test.TestVncApi object> args = ('virtual-network', '37d4c02f-b304-436b-a3aa-5fa5b4b750aa', 'network_ipam_refs', 'ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ['default-domain', 'default-project', 'default-network-ipam'], 'ADD', ipam_subnets = [subnet = ip_prefix = 42.103.18.1...None, dhcp_relay_server = []], host_routes = None) kwargs = {}
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in ref_update(self=<vnc_api_test.TestVncApi object>, obj_type='virtual-network', obj_uuid='37d4c02f-b304-436b-a3aa-5fa5b4b750aa', ref_type='network-ipam', ref_uuid='ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ref_fq_name=['default-domain', 'default-project', 'default-network-ipam'], operation='ADD', attr=ipam_subnets = [subnet = ip_prefix = 42.103.18.1...None, dhcp_relay_server = []], host_routes = None) 1362 if he.status_code == 404: 1363 return None 1364 raise he 1365 1366 return json.loads(content)['uuid'] he undefined
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in ref_update(self=<vnc_api_test.TestVncApi object>, obj_type='virtual-network', obj_uuid='37d4c02f-b304-436b-a3aa-5fa5b4b750aa', ref_type='network-ipam', ref_uuid='ba76b1cc-bdef-4caf-8d84-2e6ccd4ebc6d', ref_fq_name=['default-domain', 'default-project', 'default-network-ipam'], operation='ADD', attr=ipam_subnets = [subnet = ip_prefix = 42.103.18.1...None, dhcp_relay_server = []], host_routes = None) 1358 uri = self._action_uri['ref-update'] 1359 try: 1360 content = self._request_server(OP_POST, uri, data=json_body) 1361 except HttpError as he: 1362 if he.status_code == 404: content undefined self = <vnc_api_test.TestVncApi object> self._request_server = <bound method VncApi._request_server of <vnc_api_test.TestVncApi object>> global OP_POST = 1 uri = '/ref-update' data undefined json_body = '{"type": "virtual-network", "uuid": "37d4c02f-b3... "dhcp_relay_server": []}], "host_routes": null}}'
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in _request_server(self=<vnc_api_test.TestVncApi object>, op=1, url='/ref-update', data='{"type": "virtual-network", "uuid": "37d4c02f-b3... "dhcp_relay_server": []}], "host_routes": null}}', retry_on_error=True, retry_after_authn=False, retry_count=30) 1126 return self._request( 1127 op, url, data=data, retry_on_error=retry_on_error, 1128 retry_after_authn=retry_after_authn, retry_count=retry_count) 1129 # end _request_server 1130 retry_after_authn = False retry_count = 30
/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py in _request(self=<vnc_api_test.TestVncApi object>, op=1, url='/ref-update', data='{"type": "virtual-network", "uuid": "37d4c02f-b3... "dhcp_relay_server": []}], "host_routes": null}}', retry_on_error=True, retry_after_authn=False, retry_count=30) 1206 raise AuthFailed(status, content) 1207 else: # Unknown Error 1208 raise HttpError(status, content) 1209 # end while True 1210 global HttpError = <class 'vnc_api.exceptions.HttpError'> status = 500 content = "'NoneType' object is not iterable" HttpError: HTTP Status: 500 Content: 'NoneType' object is not iterable __cause__ = None __class__ = <class 'vnc_api.exceptions.HttpError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of HttpError object> __dict__ = {'content': "'NoneType' object is not iterable", 'status_code': 500} __dir__ = <built-in method __dir__ of HttpError object> __doc__ = None __eq__ = <method-wrapper '__eq__' of HttpError object> __format__ = <built-in method __format__ of HttpError object> __ge__ = <method-wrapper '__ge__' of HttpError object> __getattribute__ = <method-wrapper '__getattribute__' of HttpError object> __gt__ = <method-wrapper '__gt__' of HttpError object> __hash__ = <method-wrapper '__hash__' of HttpError object> __init__ = <bound method HttpError.__init__ of HttpError(500, "'NoneType' object is not iterable")> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of HttpError object> __lt__ = <method-wrapper '__lt__' of HttpError object> __module__ = 'vnc_api.exceptions' __ne__ = <method-wrapper '__ne__' of HttpError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of HttpError object> __reduce_ex__ = <built-in method __reduce_ex__ of HttpError object> __repr__ = <method-wrapper '__repr__' of HttpError object> __setattr__ = <method-wrapper '__setattr__' of HttpError object> __setstate__ = <built-in method __setstate__ of HttpError object> __sizeof__ = <built-in method __sizeof__ of HttpError object> __str__ = <bound method HttpError.__str__ of HttpError(500, "'NoneType' object is not iterable")> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = (500, "'NoneType' object is not iterable") content = "'NoneType' object is not iterable" status_code = 500 with_traceback = <built-in method with_traceback of HttpError object>
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/serial_scripts/rbac/test_rbac_basic.py", line 47, in test_rbac_acl_different_roles vn = self.create_vn(connections=user1_conn) File "/contrail-test/serial_scripts/rbac/base.py", line 217, in create_vn option=option, **kwargs) File "/contrail-test/serial_scripts/rbac/base.py", line 354, in create_fixture return self.useFixture(fixturecls(**kwargs)) File "/usr/local/lib/python3.6/site-packages/testtools/testcase.py", line 756, in useFixture reraise(*exc_info) File "/usr/local/lib/python3.6/site-packages/testtools/_compat3x.py", line 16, in reraise raise exc_obj.with_traceback(exc_tb) File "/usr/local/lib/python3.6/site-packages/testtools/testcase.py", line 731, in useFixture fixture.setUp() File "/contrail-test/fixtures/vn_test.py", line 439, in setUp self.create() File "/contrail-test/fixtures/vn_test.py", line 450, in create self._create_vn_api(self.vn_name, self.project_obj) File "/contrail-test/fixtures/vn_test.py", line 416, in _create_vn_api self.vnc_lib_h.virtual_network_update(self.api_vn_obj) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 833, in _object_update 'ADD', ref[2]) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1364, in ref_update raise he File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1360, in ref_update content = self._request_server(OP_POST, uri, data=json_body) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1128, in _request_server retry_after_authn=retry_after_authn, retry_count=retry_count) File "/usr/local/lib/python3.6/site-packages/vnc_api/vnc_api.py", line 1208, in _request raise HttpError(status, content) vnc_api.exceptions.HttpError: HTTP Status: 500 Content: 'NoneType' object is not iterable
| 4.893 |
Log File
|
test_contrail_status[cb_sanity,ci_sanity,dev_sanity_dpdk,sanity] | Success | | 0.844 | |
test_communication_between_two_sriov_vm[ci_sanity] | Skipped | Skipped as test is not supported if sriov_cluster=False | 0.006 | |
test_communication_between_two_sriov_vm_with_large_mtu[ci_sanity] | Skipped | Skipped as test is not supported if sriov_cluster=False | 0.006 | |
test_virtual_function_exhaustion_and_resue[ci_sanity] | Skipped | Skipped as test is not supported if sriov_cluster=False | 0.005 | |
Name | Status | Type | Time(s) | LogFile |
test_contrail_status[cb_sanity,ci_sanity,dev_sanity_dpdk,sanity] | Success | | 0.950 | |
test_verify_object_logs[ci_sanity,dev_sanity_dpdk,sanity,suite1] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: KeyError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:37:53 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=<scripts.analytics.test_analytics_basic.Analytic...dev_sanity_dpdk,sanity,suite1] id=0x7f9f14977ba8>, *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 = <function AnalyticsBasicTestSanity.test_verify_object_logs> self = <scripts.analytics.test_analytics_basic.Analytic...dev_sanity_dpdk,sanity,suite1] id=0x7f9f14977ba8> args = () kwargs = {}
/contrail-test/scripts/analytics/test_analytics_basic.py in test_verify_object_logs(self=<scripts.analytics.test_analytics_basic.Analytic...dev_sanity_dpdk,sanity,suite1] id=0x7f9f14977ba8>) 30 vn_fixture= self.useFixture(VNFixture(connections=self.connections, 31 vn_name=vn_name, subnets=vn_subnets)) 32 vn_fixture.verify_on_setup() 33 vm1_fixture = self.create_vm(vn_fixture=vn_fixture, image_name='cirros') 34 assert vm1_fixture.wait_till_vm_is_active() vn_fixture = <vn_test.VNFixture object> vn_fixture.verify_on_setup = <bound method VNFixture.verify_on_setup of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in verify_on_setup(self=<vn_test.VNFixture object>) 574 def verify_on_setup(self): 575 result = True 576 if not self.verify_vn_in_api_server(): 577 result = result and False 578 self.logger.error( self = <vn_test.VNFixture object> self.verify_vn_in_api_server = <bound method retry.<locals>.deco_retry.<locals>.f_retry of <vn_test.VNFixture object>>
/contrail-test/tcutils/util.py in f_retry(*args=(<vn_test.VNFixture object>,), **kwargs={}) 82 mtries, mdelay = tries, delay # make mutable 83 84 result = f(*args, **kwargs) # first attempt 85 rv = result 86 final = False result undefined f = <function VNFixture.verify_vn_in_api_server> args = (<vn_test.VNFixture object>,) kwargs = {}
/contrail-test/fixtures/vn_test.py in verify_vn_in_api_server(self=<vn_test.VNFixture object>) 638 639 subnets = list() 640 for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: 641 subnets.extend(ipam['attr']['ipam_subnets']) 642 for vn_subnet in self.vn_subnets: ipam undefined self = <vn_test.VNFixture object> self.api_s_vn_obj = {'virtual-network': {'uuid': '1ca09c3e-0c99-475d...2/project/7a9ed906-4cfe-4c86-b202-d13ce2fb25e5'}} KeyError: 'network_ipam_refs' __cause__ = None __class__ = <class 'KeyError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of KeyError object> __dict__ = {} __dir__ = <built-in method __dir__ of KeyError object> __doc__ = 'Mapping key not found.' __eq__ = <method-wrapper '__eq__' of KeyError object> __format__ = <built-in method __format__ of KeyError object> __ge__ = <method-wrapper '__ge__' of KeyError object> __getattribute__ = <method-wrapper '__getattribute__' of KeyError object> __gt__ = <method-wrapper '__gt__' of KeyError object> __hash__ = <method-wrapper '__hash__' of KeyError object> __init__ = <method-wrapper '__init__' of KeyError object> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of KeyError object> __lt__ = <method-wrapper '__lt__' of KeyError object> __ne__ = <method-wrapper '__ne__' of KeyError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of KeyError object> __reduce_ex__ = <built-in method __reduce_ex__ of KeyError object> __repr__ = <method-wrapper '__repr__' of KeyError object> __setattr__ = <method-wrapper '__setattr__' of KeyError object> __setstate__ = <built-in method __setstate__ of KeyError object> __sizeof__ = <built-in method __sizeof__ of KeyError object> __str__ = <method-wrapper '__str__' of KeyError object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> args = ('network_ipam_refs',) with_traceback = <built-in method with_traceback of KeyError object>
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/analytics/test_analytics_basic.py", line 32, in test_verify_object_logs vn_fixture.verify_on_setup() File "/contrail-test/fixtures/vn_test.py", line 576, in verify_on_setup if not self.verify_vn_in_api_server(): File "/contrail-test/tcutils/util.py", line 84, in f_retry result = f(*args, **kwargs) # first attempt File "/contrail-test/fixtures/vn_test.py", line 640, in verify_vn_in_api_server for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: KeyError: 'network_ipam_refs'
| 3.369 |
Log File
|
test_db_manage[cb_sanity,ci_sanity,dev_sanity_dpdk,sanity] | Success | | 6.450 | |
test_floating_ip[cb_sanity,ci_contrail_go_kolla_ocata_sanity,ci_sanity,quick_sanity,sanity,suite1,vrouter_gw] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: KeyError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:38:08 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=<scripts.floatingip.test_floatingip_basic.Floati...nity,sanity,suite1,vrouter_gw] id=0x7f9f14771c50>, *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 = <function FloatingipBasicTestSanity.test_floating_ip> self = <scripts.floatingip.test_floatingip_basic.Floati...nity,sanity,suite1,vrouter_gw] id=0x7f9f14771c50> args = () kwargs = {}
/contrail-test/scripts/floatingip/test_floatingip_basic.py in test_floating_ip(self=<scripts.floatingip.test_floatingip_basic.Floati...nity,sanity,suite1,vrouter_gw] id=0x7f9f14771c50>) 56 subnets=fvn_subnets)) 57 58 assert fvn_fixture.verify_on_setup() 59 60 vn1_fixture = self.useFixture( fvn_fixture = <vn_test.VNFixture object> fvn_fixture.verify_on_setup = <bound method VNFixture.verify_on_setup of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in verify_on_setup(self=<vn_test.VNFixture object>) 574 def verify_on_setup(self): 575 result = True 576 if not self.verify_vn_in_api_server(): 577 result = result and False 578 self.logger.error( self = <vn_test.VNFixture object> self.verify_vn_in_api_server = <bound method retry.<locals>.deco_retry.<locals>.f_retry of <vn_test.VNFixture object>>
/contrail-test/tcutils/util.py in f_retry(*args=(<vn_test.VNFixture object>,), **kwargs={}) 82 mtries, mdelay = tries, delay # make mutable 83 84 result = f(*args, **kwargs) # first attempt 85 rv = result 86 final = False result undefined f = <function VNFixture.verify_vn_in_api_server> args = (<vn_test.VNFixture object>,) kwargs = {}
/contrail-test/fixtures/vn_test.py in verify_vn_in_api_server(self=<vn_test.VNFixture object>) 638 639 subnets = list() 640 for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: 641 subnets.extend(ipam['attr']['ipam_subnets']) 642 for vn_subnet in self.vn_subnets: ipam undefined self = <vn_test.VNFixture object> self.api_s_vn_obj = {'virtual-network': {'uuid': '0eb514b6-be44-4f5c...2/project/6799bd3d-0fbb-4f8f-8e62-aa90e17e4f67'}} KeyError: 'network_ipam_refs' __cause__ = None __class__ = <class 'KeyError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of KeyError object> __dict__ = {} __dir__ = <built-in method __dir__ of KeyError object> __doc__ = 'Mapping key not found.' __eq__ = <method-wrapper '__eq__' of KeyError object> __format__ = <built-in method __format__ of KeyError object> __ge__ = <method-wrapper '__ge__' of KeyError object> __getattribute__ = <method-wrapper '__getattribute__' of KeyError object> __gt__ = <method-wrapper '__gt__' of KeyError object> __hash__ = <method-wrapper '__hash__' of KeyError object> __init__ = <method-wrapper '__init__' of KeyError object> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of KeyError object> __lt__ = <method-wrapper '__lt__' of KeyError object> __ne__ = <method-wrapper '__ne__' of KeyError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of KeyError object> __reduce_ex__ = <built-in method __reduce_ex__ of KeyError object> __repr__ = <method-wrapper '__repr__' of KeyError object> __setattr__ = <method-wrapper '__setattr__' of KeyError object> __setstate__ = <built-in method __setstate__ of KeyError object> __sizeof__ = <built-in method __sizeof__ of KeyError object> __str__ = <method-wrapper '__str__' of KeyError object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> args = ('network_ipam_refs',) with_traceback = <built-in method with_traceback of KeyError object>
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/floatingip/test_floatingip_basic.py", line 58, in test_floating_ip assert fvn_fixture.verify_on_setup() File "/contrail-test/fixtures/vn_test.py", line 576, in verify_on_setup if not self.verify_vn_in_api_server(): File "/contrail-test/tcutils/util.py", line 84, in f_retry result = f(*args, **kwargs) # first attempt File "/contrail-test/fixtures/vn_test.py", line 640, in verify_vn_in_api_server for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: KeyError: 'network_ipam_refs'
| 2.482 |
Log File
|
test_heat_stacks_list[cb_sanity,ci_contrail_go_kolla_ocata_sanity,ci_sanity] | Success | | 0.706 | |
test_router_crud[ci_sanity,dev_sanity_dpdk,sanity] | Success | | 9.839 | |
test_ports_bindings[ci_sanity,dev_sanity_dpdk,sanity] | Success | | 2.852 | |
test_ports_specific_subnet_ip[ci_sanity,dev_sanity_dpdk,sanity] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: IndexError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:38:37 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=<scripts.neutron.test_ports.TestPorts.test_ports...sanity,dev_sanity_dpdk,sanity] id=0x7f9f143cef60>, *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 = <function TestPorts.test_ports_specific_subnet_ip> self = <scripts.neutron.test_ports.TestPorts.test_ports...sanity,dev_sanity_dpdk,sanity] id=0x7f9f143cef60> args = () kwargs = {}
/contrail-test/scripts/neutron/test_ports.py in test_ports_specific_subnet_ip(self=<scripts.neutron.test_ports.TestPorts.test_ports...sanity,dev_sanity_dpdk,sanity] id=0x7f9f143cef60>) 157 vn1_vm2_name = get_random_name('vn1-vm2') 158 vn1_fixture = self.create_vn(vn1_name, [vn1_subnet_1, vn1_subnet_2]) 159 vn1_subnet1_id = vn1_fixture.vn_subnet_objs[0]['id'] 160 vn1_subnet2_id = vn1_fixture.vn_subnet_objs[1]['id'] 161 vn1_subnet1_ip = get_an_ip(vn1_fixture.vn_subnet_objs[0]['cidr'], 5) vn1_subnet1_id undefined vn1_fixture = <vn_test.VNFixture object> vn1_fixture.vn_subnet_objs = [] IndexError: list index out of range __cause__ = None __class__ = <class 'IndexError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of IndexError object> __dict__ = {} __dir__ = <built-in method __dir__ of IndexError object> __doc__ = 'Sequence index out of range.' __eq__ = <method-wrapper '__eq__' of IndexError object> __format__ = <built-in method __format__ of IndexError object> __ge__ = <method-wrapper '__ge__' of IndexError object> __getattribute__ = <method-wrapper '__getattribute__' of IndexError object> __gt__ = <method-wrapper '__gt__' of IndexError object> __hash__ = <method-wrapper '__hash__' of IndexError object> __init__ = <method-wrapper '__init__' of IndexError object> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of IndexError object> __lt__ = <method-wrapper '__lt__' of IndexError object> __ne__ = <method-wrapper '__ne__' of IndexError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of IndexError object> __reduce_ex__ = <built-in method __reduce_ex__ of IndexError object> __repr__ = <method-wrapper '__repr__' of IndexError object> __setattr__ = <method-wrapper '__setattr__' of IndexError object> __setstate__ = <built-in method __setstate__ of IndexError object> __sizeof__ = <built-in method __sizeof__ of IndexError object> __str__ = <method-wrapper '__str__' of IndexError object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> args = ('list index out of range',) with_traceback = <built-in method with_traceback of IndexError object>
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_ports.py", line 159, in test_ports_specific_subnet_ip vn1_subnet1_id = vn1_fixture.vn_subnet_objs[0]['id'] IndexError: list index out of range
| 1.575 |
Log File
|
test_basic_router_behavior[ci_sanity,dev_sanity_dpdk,sanity] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: stdout: {{{ [localhost] local: mkdir -p /contrail-test/images [localhost] local: 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 [localhost] local: gunzip -f /contrail-test/images/cirros-0.3.0-x86_64-disk.vmdk.gz [localhost] local: rm -f /contrail-test/images/cirros-0.3.0-x86_64-disk.vmdk }}}
Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: 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=<scripts.neutron.test_routers.TestRouters.test_b...sanity,dev_sanity_dpdk,sanity] id=0x7f9f143e7c88>, *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 = <function TestRouters.test_basic_router_behavior> self = <scripts.neutron.test_routers.TestRouters.test_b...sanity,dev_sanity_dpdk,sanity] id=0x7f9f143e7c88> args = () kwargs = {}
/contrail-test/scripts/neutron/test_routers.py in test_basic_router_behavior(self=<scripts.neutron.test_routers.TestRouters.test_b...sanity,dev_sanity_dpdk,sanity] id=0x7f9f143e7c88>) 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=<scripts.neutron.test_routers.TestRouters.test_b...sanity,dev_sanity_dpdk,sanity] id=0x7f9f143e7c88>, vn_fixture=<vn_test.VNFixture object>, 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=<class 'scripts.neutron.test_routers.TestRouters'>, vn_fixture=<vn_test.VNFixture object>, 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 = <VMFixture: ctest-vn1-vm1-88048865> vm_obj.setUp = <bound method VMFixture.setUp of <VMFixture: ctest-vn1-vm1-88048865>>
/contrail-test/fixtures/vm_test.py in setUp(self=<VMFixture: ctest-vn1-vm1-88048865>) 191 def setUp(self): 192 super(VMFixture, self).setUp() 193 self.create() 194 195 def create(self): self = <VMFixture: ctest-vn1-vm1-88048865> self.create = <bound method VMFixture.create of <VMFixture: ctest-vn1-vm1-88048865>>
/contrail-test/fixtures/vm_test.py in create(self=<VMFixture: ctest-vn1-vm1-88048865>) 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 = <VMFixture: ctest-vn1-vm1-88048865> self.fixed_ips = []
/contrail-test/fixtures/openstack.py in create_vm(self=<openstack.OpenstackOrchestrator object>, 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 = <openstack.OpenstackOrchestrator object> self.nova_h = <nova_test.NovaHelper object> self.nova_h.create_vm = <bound method NovaHelper.create_vm of <nova_test.NovaHelper object>> 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=<nova_test.NovaHelper object>, 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=<Flavor: contrail_flavor_tiny>, 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=<novaclient.v2.servers.ServerManager object>, name='ctest-vn1-vm1-88048865', image=<RequestIdProxy at 0x7f9f1212b088 for image>, flavor=<Flavor: contrail_flavor_tiny>, 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 = <novaclient.v2.servers.ServerManager object> self._boot = <bound method ServerManager._boot of <novaclient.v2.servers.ServerManager object>> response_key = 'server' boot_args = ['ctest-vn1-vm1-88048865', <RequestIdProxy at 0x7f9f1212b088 for image>, <Flavor: contrail_flavor_tiny>] 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=<novaclient.v2.servers.ServerManager object>, response_key='server', name='ctest-vn1-vm1-88048865', image=<RequestIdProxy at 0x7f9f1212b088 for image>, flavor=<Flavor: contrail_flavor_tiny>, 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=<novaclient.v2.servers.ServerManager object>, 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 = <novaclient.v2.servers.ServerManager object> self.api = <novaclient.v2.client.Client object> self.api.client = <novaclient.client.SessionClient object> self.api.client.post = <bound method Adapter.post of <novaclient.client.SessionClient object>> url = '/servers'
/usr/local/lib/python3.6/site-packages/keystoneauth1/adapter.py in post(self=<novaclient.client.SessionClient object>, 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 = <novaclient.client.SessionClient object> self.request = <bound method SessionClient.request of <novaclient.client.SessionClient object>> 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=<novaclient.client.SessionClient object>, 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 = <module 'novaclient.exceptions' from '/usr/local...ython3.6/site-packages/novaclient/exceptions.py'> exceptions.from_response = <function from_response> resp = <Response [400]> 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__ = <class 'novaclient.exceptions.BadRequest'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of BadRequest object> __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__ = <built-in method __dir__ of BadRequest object> __doc__ = '\n HTTP 400 - Bad request: you sent some malformed data.\n ' __eq__ = <method-wrapper '__eq__' of BadRequest object> __format__ = <built-in method __format__ of BadRequest object> __ge__ = <method-wrapper '__ge__' of BadRequest object> __getattribute__ = <method-wrapper '__getattribute__' of BadRequest object> __gt__ = <method-wrapper '__gt__' of BadRequest object> __hash__ = <method-wrapper '__hash__' of BadRequest object> __init__ = <bound method ClientException.__init__ of BadRequest()> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of BadRequest object> __lt__ = <method-wrapper '__lt__' of BadRequest object> __module__ = 'novaclient.exceptions' __ne__ = <method-wrapper '__ne__' of BadRequest object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of BadRequest object> __reduce_ex__ = <built-in method __reduce_ex__ of BadRequest object> __repr__ = <method-wrapper '__repr__' of BadRequest object> __setattr__ = <method-wrapper '__setattr__' of BadRequest object> __setstate__ = <built-in method __setstate__ of BadRequest object> __sizeof__ = <built-in method __sizeof__ of BadRequest object> __str__ = <bound method ClientException.__str__ of BadRequest()> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __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 = <built-in method with_traceback of BadRequest object>
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)
| 5.301 |
Log File
|
test_basic_snat_behavior_without_external_connectivity[ci_sanity,dev_sanity_dpdk,sanity,suite1] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: BadRequest Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:38:56 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=<scripts.neutron.test_routers_basic.TestRoutersB...dev_sanity_dpdk,sanity,suite1] id=0x7f9f143f71d0>, *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 = <function TestRoutersBasic.test_basic_snat_behavior_without_external_connectivity> self = <scripts.neutron.test_routers_basic.TestRoutersB...dev_sanity_dpdk,sanity,suite1] id=0x7f9f143f71d0> args = () kwargs = {}
/contrail-test/scripts/neutron/test_routers_basic.py in test_basic_snat_behavior_without_external_connectivity(self=<scripts.neutron.test_routers_basic.TestRoutersB...dev_sanity_dpdk,sanity,suite1] id=0x7f9f143f71d0>) 38 router_external=True) 39 40 vm1_fixture = self.create_vm(vn1_fixture, image_name='cirros') 41 vm2_fixture = self.create_vm(ext_vn_fixture, image_name='cirros') 42 router_name = get_random_name('router1') vm1_fixture undefined self = <scripts.neutron.test_routers_basic.TestRoutersB...dev_sanity_dpdk,sanity,suite1] id=0x7f9f143f71d0> self.create_vm = <bound method GenericTestBase.create_vm of <scri...ev_sanity_dpdk,sanity,suite1] id=0x7f9f143f71d0>> vn1_fixture = <vn_test.VNFixture object> image_name undefined
/contrail-test/common/base.py in create_vm(self=<scripts.neutron.test_routers_basic.TestRoutersB...dev_sanity_dpdk,sanity,suite1] id=0x7f9f143f71d0>, vn_fixture=<vn_test.VNFixture object>, vm_name=None, 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=<class 'scripts.neutron.test_routers_basic.TestRoutersBasic'>, vn_fixture=<vn_test.VNFixture object>, vm_name=None, 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 = <VMFixture: ctest-TestRoutersBasic-14777185-94159069> vm_obj.setUp = <bound method VMFixture.setUp of <VMFixture: ctest-TestRoutersBasic-14777185-94159069>>
/contrail-test/fixtures/vm_test.py in setUp(self=<VMFixture: ctest-TestRoutersBasic-14777185-94159069>) 191 def setUp(self): 192 super(VMFixture, self).setUp() 193 self.create() 194 195 def create(self): self = <VMFixture: ctest-TestRoutersBasic-14777185-94159069> self.create = <bound method VMFixture.create of <VMFixture: ctest-TestRoutersBasic-14777185-94159069>>
/contrail-test/fixtures/vm_test.py in create(self=<VMFixture: ctest-TestRoutersBasic-14777185-94159069>) 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 = <VMFixture: ctest-TestRoutersBasic-14777185-94159069> self.fixed_ips = []
/contrail-test/fixtures/openstack.py in create_vm(self=<openstack.OpenstackOrchestrator object>, vm_name='ctest-TestRoutersBasic-14777185-94159069', image_name='cirros', vn_objs=[{'network': {'id': 'bad02bf5-bb0b-43ba-bd30-2870...port_security_enabled': True, 'description': ''}}], **kwargs={'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': '3676bf03-9597-4a67-949a-5bd7d43934ab', '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 = <openstack.OpenstackOrchestrator object> self.nova_h = <nova_test.NovaHelper object> self.nova_h.create_vm = <bound method NovaHelper.create_vm of <nova_test.NovaHelper object>> vm_name = 'ctest-TestRoutersBasic-14777185-94159069' image_name = 'cirros' vn_ids = ['bad02bf5-bb0b-43ba-bd30-287082e32fcc'] kwargs = {'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': '3676bf03-9597-4a67-949a-5bd7d43934ab', 'sg_ids': [], 'userdata': None, 'zone': None}
/contrail-test/fixtures/nova_test.py in create_vm(self=<nova_test.NovaHelper object>, project_uuid='3676bf03-9597-4a67-949a-5bd7d43934ab', image_name='cirros', vm_name='ctest-TestRoutersBasic-14777185-94159069', vn_ids=['bad02bf5-bb0b-43ba-bd30-287082e32fcc'], node_name='cn-jenkins-deploy-platform-ansible-os-3773-1', sg_ids=[], count=1, userdata=None, flavor=<Flavor: contrail_flavor_tiny>, 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=<novaclient.v2.servers.ServerManager object>, name='ctest-TestRoutersBasic-14777185-94159069', image=<RequestIdProxy at 0x7f9f11ff6208 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, reservation_id=False, min_count=1, max_count=1, security_groups=[], userdata=None, key_name='ctest_ctest-TestRoutersBasic-14777185ctest-TestRoutersBasic-14777185key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': 'bad02bf5-bb0b-43ba-bd30-287082e32fcc'}], 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 = <novaclient.v2.servers.ServerManager object> self._boot = <bound method ServerManager._boot of <novaclient.v2.servers.ServerManager object>> response_key = 'server' boot_args = ['ctest-TestRoutersBasic-14777185-94159069', <RequestIdProxy at 0x7f9f11ff6208 for image>, <Flavor: contrail_flavor_tiny>] 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-TestRoutersBasic-14777185ctest-TestRoutersBasic-14777185key1', ...}
/usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py in _boot(self=<novaclient.v2.servers.ServerManager object>, response_key='server', name='ctest-TestRoutersBasic-14777185-94159069', image=<RequestIdProxy at 0x7f9f11ff6208 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, userdata=None, reservation_id=False, return_raw=False, min_count=1, max_count=1, security_groups=[], key_name='ctest_ctest-TestRoutersBasic-14777185ctest-TestRoutersBasic-14777185key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': 'bad02bf5-bb0b-43ba-bd30-287082e32fcc'}], 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=<novaclient.v2.servers.ServerManager object>, 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-TestRoutersBasic-14777185ctest-TestRoutersBasic-14777185key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRoutersBasic-14777185-94159069', 'networks': [{'uuid': 'bad02bf5-bb0b-43ba-bd30-287082e32fcc'}]}}, 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-TestRoutersBasic-14777185ctest-TestRoutersBasic-14777185key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRoutersBasic-14777185-94159069', 'networks': [{'uuid': 'bad02bf5-bb0b-43ba-bd30-287082e32fcc'}]}} self = <novaclient.v2.servers.ServerManager object> self.api = <novaclient.v2.client.Client object> self.api.client = <novaclient.client.SessionClient object> self.api.client.post = <bound method Adapter.post of <novaclient.client.SessionClient object>> url = '/servers'
/usr/local/lib/python3.6/site-packages/keystoneauth1/adapter.py in post(self=<novaclient.client.SessionClient object>, 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-TestRoutersBasic-14777185ctest-TestRoutersBasic-14777185key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRoutersBasic-14777185-94159069', 'networks': [{'uuid': 'bad02bf5-bb0b-43ba-bd30-287082e32fcc'}]}}}) 390 391 def post(self, url, **kwargs): 392 return self.request(url, 'POST', **kwargs) 393 394 def put(self, url, **kwargs): self = <novaclient.client.SessionClient object> self.request = <bound method SessionClient.request of <novaclient.client.SessionClient object>> 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-TestRoutersBasic-14777185ctest-TestRoutersBasic-14777185key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRoutersBasic-14777185-94159069', 'networks': [{'uuid': 'bad02bf5-bb0b-43ba-bd30-287082e32fcc'}]}}}
/usr/local/lib/python3.6/site-packages/novaclient/client.py in request(self=<novaclient.client.SessionClient object>, 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-TestRoutersBasic-14777185ctest-TestRoutersBasic-14777185key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRoutersBasic-14777185-94159069', 'networks': [{'uuid': 'bad02bf5-bb0b-43ba-bd30-287082e32fcc'}]}}, 'headers': {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'python-novaclient', 'X-Auth-Token': 'gAAAAABolNab3gcDyW9tAcPM30ZrFmNlY4ObFh_7kBxviXx6...qaF3WNsqTxdceWOZD3y8OYgT0LNB1eXB_3GmwWFo_TSn-K6c8'}}) 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 = <module 'novaclient.exceptions' from '/usr/local...ython3.6/site-packages/novaclient/exceptions.py'> exceptions.from_response = <function from_response> resp = <Response [400]> body = {'badRequest': {'code': 400, 'message': 'Network bad02bf5-bb0b-43ba-bd30-287082e32fcc requires a subnet in order to boot instances on.'}} url = '/servers' method = 'POST' BadRequest: Network bad02bf5-bb0b-43ba-bd30-287082e32fcc requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-289ecc78-47c1-424d-aee4-277d69263401) __cause__ = None __class__ = <class 'novaclient.exceptions.BadRequest'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of BadRequest object> __dict__ = {'code': 400, 'details': None, 'message': 'Network bad02bf5-bb0b-43ba-bd30-287082e32fcc requires a subnet in order to boot instances on.', 'method': 'POST', 'request_id': 'req-289ecc78-47c1-424d-aee4-277d69263401', 'url': '/servers'} __dir__ = <built-in method __dir__ of BadRequest object> __doc__ = '\n HTTP 400 - Bad request: you sent some malformed data.\n ' __eq__ = <method-wrapper '__eq__' of BadRequest object> __format__ = <built-in method __format__ of BadRequest object> __ge__ = <method-wrapper '__ge__' of BadRequest object> __getattribute__ = <method-wrapper '__getattribute__' of BadRequest object> __gt__ = <method-wrapper '__gt__' of BadRequest object> __hash__ = <method-wrapper '__hash__' of BadRequest object> __init__ = <bound method ClientException.__init__ of BadRequest()> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of BadRequest object> __lt__ = <method-wrapper '__lt__' of BadRequest object> __module__ = 'novaclient.exceptions' __ne__ = <method-wrapper '__ne__' of BadRequest object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of BadRequest object> __reduce_ex__ = <built-in method __reduce_ex__ of BadRequest object> __repr__ = <method-wrapper '__repr__' of BadRequest object> __setattr__ = <method-wrapper '__setattr__' of BadRequest object> __setstate__ = <built-in method __setstate__ of BadRequest object> __sizeof__ = <built-in method __sizeof__ of BadRequest object> __str__ = <bound method ClientException.__str__ of BadRequest()> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = () code = 400 details = None http_status = 400 message = 'Network bad02bf5-bb0b-43ba-bd30-287082e32fcc requires a subnet in order to boot instances on.' method = 'POST' request_id = 'req-289ecc78-47c1-424d-aee4-277d69263401' url = '/servers' with_traceback = <built-in method with_traceback of BadRequest object>
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_basic.py", line 40, in test_basic_snat_behavior_without_external_connectivity vm1_fixture = self.create_vm(vn1_fixture, 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 bad02bf5-bb0b-43ba-bd30-287082e32fcc requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-289ecc78-47c1-424d-aee4-277d69263401)
| 4.620 |
Log File
|
test_basic_policy_allow_deny[cb_sanity,ci_contrail_go_kolla_ocata_sanity,ci_sanity,quick_sanity,sanity,suite1] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: KeyError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:39:05 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=<scripts.policy.test_policy.TestBasicPolicyIpv4v...ty,quick_sanity,sanity,suite1] id=0x7f9f168115c0>, *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 = <function TestBasicPolicy.test_basic_policy_allow_deny> self = <scripts.policy.test_policy.TestBasicPolicyIpv4v...ty,quick_sanity,sanity,suite1] id=0x7f9f168115c0> args = () kwargs = {}
/contrail-test/scripts/policy/test_policy_basic.py in test_basic_policy_allow_deny(self=<scripts.policy.test_policy.TestBasicPolicyIpv4v...ty,quick_sanity,sanity,suite1] id=0x7f9f168115c0>) 109 policy_fixture = self.setup_policy_between_vns(vn1_fixture, 110 vn2_fixture, rules) 111 assert vn1_fixture.verify_on_setup() 112 assert vn2_fixture.verify_on_setup() 113 vn1_fixture = <vn_test.VNFixture object> vn1_fixture.verify_on_setup = <bound method VNFixture.verify_on_setup of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in verify_on_setup(self=<vn_test.VNFixture object>) 574 def verify_on_setup(self): 575 result = True 576 if not self.verify_vn_in_api_server(): 577 result = result and False 578 self.logger.error( self = <vn_test.VNFixture object> self.verify_vn_in_api_server = <bound method retry.<locals>.deco_retry.<locals>.f_retry of <vn_test.VNFixture object>>
/contrail-test/tcutils/util.py in f_retry(*args=(<vn_test.VNFixture object>,), **kwargs={}) 82 mtries, mdelay = tries, delay # make mutable 83 84 result = f(*args, **kwargs) # first attempt 85 rv = result 86 final = False result undefined f = <function VNFixture.verify_vn_in_api_server> args = (<vn_test.VNFixture object>,) kwargs = {}
/contrail-test/fixtures/vn_test.py in verify_vn_in_api_server(self=<vn_test.VNFixture object>) 638 639 subnets = list() 640 for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: 641 subnets.extend(ipam['attr']['ipam_subnets']) 642 for vn_subnet in self.vn_subnets: ipam undefined self = <vn_test.VNFixture object> self.api_s_vn_obj = {'virtual-network': {'uuid': '12f67c4a-4919-4f2e...2/project/d0f78462-1445-4745-881d-d57a39c77ace'}} KeyError: 'network_ipam_refs' __cause__ = None __class__ = <class 'KeyError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of KeyError object> __dict__ = {} __dir__ = <built-in method __dir__ of KeyError object> __doc__ = 'Mapping key not found.' __eq__ = <method-wrapper '__eq__' of KeyError object> __format__ = <built-in method __format__ of KeyError object> __ge__ = <method-wrapper '__ge__' of KeyError object> __getattribute__ = <method-wrapper '__getattribute__' of KeyError object> __gt__ = <method-wrapper '__gt__' of KeyError object> __hash__ = <method-wrapper '__hash__' of KeyError object> __init__ = <method-wrapper '__init__' of KeyError object> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of KeyError object> __lt__ = <method-wrapper '__lt__' of KeyError object> __ne__ = <method-wrapper '__ne__' of KeyError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of KeyError object> __reduce_ex__ = <built-in method __reduce_ex__ of KeyError object> __repr__ = <method-wrapper '__repr__' of KeyError object> __setattr__ = <method-wrapper '__setattr__' of KeyError object> __setstate__ = <built-in method __setstate__ of KeyError object> __sizeof__ = <built-in method __sizeof__ of KeyError object> __str__ = <method-wrapper '__str__' of KeyError object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> args = ('network_ipam_refs',) with_traceback = <built-in method with_traceback of KeyError object>
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/policy/test_policy_basic.py", line 111, in test_basic_policy_allow_deny assert vn1_fixture.verify_on_setup() File "/contrail-test/fixtures/vn_test.py", line 576, in verify_on_setup if not self.verify_vn_in_api_server(): File "/contrail-test/tcutils/util.py", line 84, in f_retry result = f(*args, **kwargs) # first attempt File "/contrail-test/fixtures/vn_test.py", line 640, in verify_vn_in_api_server for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: KeyError: 'network_ipam_refs'
| 4.915 |
Log File
|
test_remove_policy_with_ref[ci_sanity,sanity] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: TestFailed Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:39:14 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=<scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8>, *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 = <function TestBasicPolicyNegativeIpv4v6.test_remove_policy_with_ref> self = <scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8> args = () kwargs = {}
/contrail-test/scripts/policy/test_policy.py in test_remove_policy_with_ref(self=<scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8>) 623 @preposttest_wrapper 624 def test_remove_policy_with_ref(self): 625 super(TestBasicPolicyNegativeIpv4v6, self).test_remove_policy_with_ref() 626 627 class TestBasicPolicyModifyIpv4v6(test_policy_basic.TestBasicPolicyModify): builtinsuper = <class 'super'> global TestBasicPolicyNegativeIpv4v6 = <class 'scripts.policy.test_policy.TestBasicPolicyNegativeIpv4v6'> self = <scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8> ).test_remove_policy_with_ref = <bound method TestBasicPolicyNegativeIpv4v6.test...cy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8>>
/contrail-test/tcutils/wrappers.py in wrapper(self=<scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8>, *args=(), **kwargs={}) 174 if 'ci_image' in list(os.environ.keys()): 175 os.environ['stop_execution_flag'] = 'set' 176 raise TestFailed("\n ".join(errmsg)) 177 elif testskip: 178 log.info('') global TestFailed = <class 'tcutils.cores.TestFailed'> "\n ".join undefined errmsg = ["Test failed: KeyError\nPython 3.6.8: /usr/bin/pyt...ork_ipam_refs']:\nKeyError: 'network_ipam_refs'\n\n\n"] TestFailed: Test failed: KeyError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:39:14 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=<scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8>, *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 = <function TestBasicPolicyNegative.test_remove_policy_with_ref> self = <scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8> args = () kwargs = {}
/contrail-test/scripts/policy/test_policy_basic.py in test_remove_policy_with_ref(self=<scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8>) 224 vn1_fixture.bind_policies( 225 [policy_fixture.policy_fq_name], vn1_fixture.vn_id) 226 assert vn1_fixture.verify_on_setup() 227 ret = policy_fixture.verify_on_setup() 228 if ret['result'] == False: vn1_fixture = <vn_test.VNFixture object> vn1_fixture.verify_on_setup = <bound method VNFixture.verify_on_setup of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in verify_on_setup(self=<vn_test.VNFixture object>) 574 def verify_on_setup(self): 575 result = True 576 if not self.verify_vn_in_api_server(): 577 result = result and False 578 self.logger.error( self = <vn_test.VNFixture object> self.verify_vn_in_api_server = <bound method retry.<locals>.deco_retry.<locals>.f_retry of <vn_test.VNFixture object>>
/contrail-test/tcutils/util.py in f_retry(*args=(<vn_test.VNFixture object>,), **kwargs={}) 82 mtries, mdelay = tries, delay # make mutable 83 84 result = f(*args, **kwargs) # first attempt 85 rv = result 86 final = False result undefined f = <function VNFixture.verify_vn_in_api_server> args = (<vn_test.VNFixture object>,) kwargs = {}
/contrail-test/fixtures/vn_test.py in verify_vn_in_api_server(self=<vn_test.VNFixture object>) 638 639 subnets = list() 640 for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: 641 subnets.extend(ipam['attr']['ipam_subnets']) 642 for vn_subnet in self.vn_subnets: ipam undefined self = <vn_test.VNFixture object> self.api_s_vn_obj = {'virtual-network': {'uuid': '6211a6a7-ea0b-4c32...2/project/e0af6d2e-7fe3-4dc6-bfe5-d179aad69d11'}} KeyError: 'network_ipam_refs' __cause__ = None __class__ = <class 'KeyError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of KeyError object> __dict__ = {} __dir__ = <built-in method __dir__ of KeyError object> __doc__ = 'Mapping key not found.' __eq__ = <method-wrapper '__eq__' of KeyError object> __format__ = <built-in method __format__ of KeyError object> __ge__ = <method-wrapper '__ge__' of KeyError object> __getattribute__ = <method-wrapper '__getattribute__' of KeyError object> __gt__ = <method-wrapper '__gt__' of KeyError object> __hash__ = <method-wrapper '__hash__' of KeyError object> __init__ = <method-wrapper '__init__' of KeyError object> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of KeyError object> __lt__ = <method-wrapper '__lt__' of KeyError object> __ne__ = <method-wrapper '__ne__' of KeyError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of KeyError object> __reduce_ex__ = <built-in method __reduce_ex__ of KeyError object> __repr__ = <method-wrapper '__repr__' of KeyError object> __setattr__ = <method-wrapper '__setattr__' of KeyError object> __setstate__ = <built-in method __setstate__ of KeyError object> __sizeof__ = <built-in method __sizeof__ of KeyError object> __str__ = <method-wrapper '__str__' of KeyError object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> args = ('network_ipam_refs',) with_traceback = <built-in method with_traceback of KeyError object>
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/policy/test_policy_basic.py", line 226, in test_remove_policy_with_ref assert vn1_fixture.verify_on_setup() File "/contrail-test/fixtures/vn_test.py", line 576, in verify_on_setup if not self.verify_vn_in_api_server(): File "/contrail-test/tcutils/util.py", line 84, in f_retry result = f(*args, **kwargs) # first attempt File "/contrail-test/fixtures/vn_test.py", line 640, in verify_vn_in_api_server for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: KeyError: 'network_ipam_refs'
__cause__ = None __class__ = <class 'tcutils.cores.TestFailed'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of TestFailed object> __dict__ = {} __dir__ = <built-in method __dir__ of TestFailed object> __doc__ = None __eq__ = <method-wrapper '__eq__' of TestFailed object> __format__ = <built-in method __format__ of TestFailed object> __ge__ = <method-wrapper '__ge__' of TestFailed object> __getattribute__ = <method-wrapper '__getattribute__' of TestFailed object> __gt__ = <method-wrapper '__gt__' of TestFailed object> __hash__ = <method-wrapper '__hash__' of TestFailed object> __init__ = <method-wrapper '__init__' of TestFailed object> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of TestFailed object> __lt__ = <method-wrapper '__lt__' of TestFailed object> __module__ = 'tcutils.cores' __ne__ = <method-wrapper '__ne__' of TestFailed object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of TestFailed object> __reduce_ex__ = <built-in method __reduce_ex__ of TestFailed object> __repr__ = <method-wrapper '__repr__' of TestFailed object> __setattr__ = <method-wrapper '__setattr__' of TestFailed object> __setstate__ = <built-in method __setstate__ of TestFailed object> __sizeof__ = <built-in method __sizeof__ of TestFailed object> __str__ = <method-wrapper '__str__' of TestFailed object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = ("Test failed: KeyError\nPython 3.6.8: /usr/bin/pyt...ork_ipam_refs']:\nKeyError: 'network_ipam_refs'\n\n\n",) with_traceback = <built-in method with_traceback of TestFailed object>
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/policy/test_policy.py", line 625, in test_remove_policy_with_ref super(TestBasicPolicyNegativeIpv4v6, self).test_remove_policy_with_ref() File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: KeyError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:39:14 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=<scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8>, *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 = <function TestBasicPolicyNegative.test_remove_policy_with_ref> self = <scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8> args = () kwargs = {}
/contrail-test/scripts/policy/test_policy_basic.py in test_remove_policy_with_ref(self=<scripts.policy.test_policy.TestBasicPolicyNegat...icy_with_ref[ci_sanity,sanity] id=0x7f9f143c04a8>) 224 vn1_fixture.bind_policies( 225 [policy_fixture.policy_fq_name], vn1_fixture.vn_id) 226 assert vn1_fixture.verify_on_setup() 227 ret = policy_fixture.verify_on_setup() 228 if ret['result'] == False: vn1_fixture = <vn_test.VNFixture object> vn1_fixture.verify_on_setup = <bound method VNFixture.verify_on_setup of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in verify_on_setup(self=<vn_test.VNFixture object>) 574 def verify_on_setup(self): 575 result = True 576 if not self.verify_vn_in_api_server(): 577 result = result and False 578 self.logger.error( self = <vn_test.VNFixture object> self.verify_vn_in_api_server = <bound method retry.<locals>.deco_retry.<locals>.f_retry of <vn_test.VNFixture object>>
/contrail-test/tcutils/util.py in f_retry(*args=(<vn_test.VNFixture object>,), **kwargs={}) 82 mtries, mdelay = tries, delay # make mutable 83 84 result = f(*args, **kwargs) # first attempt 85 rv = result 86 final = False result undefined f = <function VNFixture.verify_vn_in_api_server> args = (<vn_test.VNFixture object>,) kwargs = {}
/contrail-test/fixtures/vn_test.py in verify_vn_in_api_server(self=<vn_test.VNFixture object>) 638 639 subnets = list() 640 for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: 641 subnets.extend(ipam['attr']['ipam_subnets']) 642 for vn_subnet in self.vn_subnets: ipam undefined self = <vn_test.VNFixture object> self.api_s_vn_obj = {'virtual-network': {'uuid': '6211a6a7-ea0b-4c32...2/project/e0af6d2e-7fe3-4dc6-bfe5-d179aad69d11'}} KeyError: 'network_ipam_refs' __cause__ = None __class__ = <class 'KeyError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of KeyError object> __dict__ = {} __dir__ = <built-in method __dir__ of KeyError object> __doc__ = 'Mapping key not found.' __eq__ = <method-wrapper '__eq__' of KeyError object> __format__ = <built-in method __format__ of KeyError object> __ge__ = <method-wrapper '__ge__' of KeyError object> __getattribute__ = <method-wrapper '__getattribute__' of KeyError object> __gt__ = <method-wrapper '__gt__' of KeyError object> __hash__ = <method-wrapper '__hash__' of KeyError object> __init__ = <method-wrapper '__init__' of KeyError object> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of KeyError object> __lt__ = <method-wrapper '__lt__' of KeyError object> __ne__ = <method-wrapper '__ne__' of KeyError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of KeyError object> __reduce_ex__ = <built-in method __reduce_ex__ of KeyError object> __repr__ = <method-wrapper '__repr__' of KeyError object> __setattr__ = <method-wrapper '__setattr__' of KeyError object> __setstate__ = <built-in method __setstate__ of KeyError object> __sizeof__ = <built-in method __sizeof__ of KeyError object> __str__ = <method-wrapper '__str__' of KeyError object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> args = ('network_ipam_refs',) with_traceback = <built-in method with_traceback of KeyError object>
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/policy/test_policy_basic.py", line 226, in test_remove_policy_with_ref assert vn1_fixture.verify_on_setup() File "/contrail-test/fixtures/vn_test.py", line 576, in verify_on_setup if not self.verify_vn_in_api_server(): File "/contrail-test/tcutils/util.py", line 84, in f_retry result = f(*args, **kwargs) # first attempt File "/contrail-test/fixtures/vn_test.py", line 640, in verify_vn_in_api_server for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: KeyError: 'network_ipam_refs'
| 3.988 |
Log File
|
test_basic_policy_allow_deny[cb_sanity,ci_contrail_go_kolla_ocata_sanity,ci_sanity,quick_sanity,sanity,suite1] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: KeyError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:39:23 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=<scripts.policy.test_policy_basic.TestBasicPolic...ty,quick_sanity,sanity,suite1] id=0x7f9f1684a4a8>, *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 = <function TestBasicPolicy.test_basic_policy_allow_deny> self = <scripts.policy.test_policy_basic.TestBasicPolic...ty,quick_sanity,sanity,suite1] id=0x7f9f1684a4a8> args = () kwargs = {}
/contrail-test/scripts/policy/test_policy_basic.py in test_basic_policy_allow_deny(self=<scripts.policy.test_policy_basic.TestBasicPolic...ty,quick_sanity,sanity,suite1] id=0x7f9f1684a4a8>) 109 policy_fixture = self.setup_policy_between_vns(vn1_fixture, 110 vn2_fixture, rules) 111 assert vn1_fixture.verify_on_setup() 112 assert vn2_fixture.verify_on_setup() 113 vn1_fixture = <vn_test.VNFixture object> vn1_fixture.verify_on_setup = <bound method VNFixture.verify_on_setup of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in verify_on_setup(self=<vn_test.VNFixture object>) 574 def verify_on_setup(self): 575 result = True 576 if not self.verify_vn_in_api_server(): 577 result = result and False 578 self.logger.error( self = <vn_test.VNFixture object> self.verify_vn_in_api_server = <bound method retry.<locals>.deco_retry.<locals>.f_retry of <vn_test.VNFixture object>>
/contrail-test/tcutils/util.py in f_retry(*args=(<vn_test.VNFixture object>,), **kwargs={}) 82 mtries, mdelay = tries, delay # make mutable 83 84 result = f(*args, **kwargs) # first attempt 85 rv = result 86 final = False result undefined f = <function VNFixture.verify_vn_in_api_server> args = (<vn_test.VNFixture object>,) kwargs = {}
/contrail-test/fixtures/vn_test.py in verify_vn_in_api_server(self=<vn_test.VNFixture object>) 638 639 subnets = list() 640 for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: 641 subnets.extend(ipam['attr']['ipam_subnets']) 642 for vn_subnet in self.vn_subnets: ipam undefined self = <vn_test.VNFixture object> self.api_s_vn_obj = {'virtual-network': {'uuid': 'f5762a80-c846-49ee...2/project/fd139c8c-d29f-47f3-b5f7-8b8c991bc252'}} KeyError: 'network_ipam_refs' __cause__ = None __class__ = <class 'KeyError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of KeyError object> __dict__ = {} __dir__ = <built-in method __dir__ of KeyError object> __doc__ = 'Mapping key not found.' __eq__ = <method-wrapper '__eq__' of KeyError object> __format__ = <built-in method __format__ of KeyError object> __ge__ = <method-wrapper '__ge__' of KeyError object> __getattribute__ = <method-wrapper '__getattribute__' of KeyError object> __gt__ = <method-wrapper '__gt__' of KeyError object> __hash__ = <method-wrapper '__hash__' of KeyError object> __init__ = <method-wrapper '__init__' of KeyError object> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of KeyError object> __lt__ = <method-wrapper '__lt__' of KeyError object> __ne__ = <method-wrapper '__ne__' of KeyError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of KeyError object> __reduce_ex__ = <built-in method __reduce_ex__ of KeyError object> __repr__ = <method-wrapper '__repr__' of KeyError object> __setattr__ = <method-wrapper '__setattr__' of KeyError object> __setstate__ = <built-in method __setstate__ of KeyError object> __sizeof__ = <built-in method __sizeof__ of KeyError object> __str__ = <method-wrapper '__str__' of KeyError object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> args = ('network_ipam_refs',) with_traceback = <built-in method with_traceback of KeyError object>
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/policy/test_policy_basic.py", line 111, in test_basic_policy_allow_deny assert vn1_fixture.verify_on_setup() File "/contrail-test/fixtures/vn_test.py", line 576, in verify_on_setup if not self.verify_vn_in_api_server(): File "/contrail-test/tcutils/util.py", line 84, in f_retry result = f(*args, **kwargs) # first attempt File "/contrail-test/fixtures/vn_test.py", line 640, in verify_vn_in_api_server for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: KeyError: 'network_ipam_refs'
| 4.713 |
Log File
|
test_rp_interface[ci_sanity,sanity] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: BadRequest Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:39:31 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=<scripts.routing_policy.test_routing_policy.Test...rp_interface[ci_sanity,sanity] id=0x7f9f16601da0>, *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 = <function TestRP.test_rp_interface> self = <scripts.routing_policy.test_routing_policy.Test...rp_interface[ci_sanity,sanity] id=0x7f9f16601da0> args = () kwargs = {}
/contrail-test/scripts/routing_policy/test_routing_policy.py in test_rp_interface(self=<scripts.routing_policy.test_routing_policy.Test...rp_interface[ci_sanity,sanity] id=0x7f9f16601da0>) 38 3. Attach policy to VN and confirm if policy takes hold. 39 ''' 40 ret_dict = self.config_basic() 41 vn_fixture = ret_dict['vn_fixture'] 42 test_vm = ret_dict['test_vm'] ret_dict undefined self = <scripts.routing_policy.test_routing_policy.Test...rp_interface[ci_sanity,sanity] id=0x7f9f16601da0> self.config_basic = <bound method RPBase.config_basic of <scripts.ro...p_interface[ci_sanity,sanity] id=0x7f9f16601da0>>
/contrail-test/scripts/routing_policy/base.py in config_basic(self=<scripts.routing_policy.test_routing_policy.Test...rp_interface[ci_sanity,sanity] id=0x7f9f16601da0>) 41 vn2_fixture.add_route_target(vn2_fixture.ri_name, self.inputs.router_asn, rt_value) 42 test_vm = self.create_vm(vn_fixture, 'test_vm', 43 image_name='cirros') 44 test2_vm = self.create_vm(vn2_fixture, 'test2_vm', image_name='cirros') 45 assert test_vm.wait_till_vm_is_up() image_name undefined
/contrail-test/common/base.py in create_vm(self=<scripts.routing_policy.test_routing_policy.Test...rp_interface[ci_sanity,sanity] id=0x7f9f16601da0>, vn_fixture=<vn_test.VNFixture object>, vm_name='test_vm', 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=<class 'scripts.routing_policy.test_routing_policy.TestRP'>, vn_fixture=<vn_test.VNFixture object>, vm_name='test_vm', 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 = <VMFixture: test_vm> vm_obj.setUp = <bound method VMFixture.setUp of <VMFixture: test_vm>>
/contrail-test/fixtures/vm_test.py in setUp(self=<VMFixture: test_vm>) 191 def setUp(self): 192 super(VMFixture, self).setUp() 193 self.create() 194 195 def create(self): self = <VMFixture: test_vm> self.create = <bound method VMFixture.create of <VMFixture: test_vm>>
/contrail-test/fixtures/vm_test.py in create(self=<VMFixture: test_vm>) 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 = <VMFixture: test_vm> self.fixed_ips = []
/contrail-test/fixtures/openstack.py in create_vm(self=<openstack.OpenstackOrchestrator object>, vm_name='test_vm', image_name='cirros', vn_objs=[{'network': {'id': '9e0ea609-36d0-4ecb-aebd-5919...port_security_enabled': True, 'description': ''}}], **kwargs={'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': 'e38085b1-5916-4a06-9872-753ea9eaa56f', '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 = <openstack.OpenstackOrchestrator object> self.nova_h = <nova_test.NovaHelper object> self.nova_h.create_vm = <bound method NovaHelper.create_vm of <nova_test.NovaHelper object>> vm_name = 'test_vm' image_name = 'cirros' vn_ids = ['9e0ea609-36d0-4ecb-aebd-59190a61e957'] kwargs = {'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': 'e38085b1-5916-4a06-9872-753ea9eaa56f', 'sg_ids': [], 'userdata': None, 'zone': None}
/contrail-test/fixtures/nova_test.py in create_vm(self=<nova_test.NovaHelper object>, project_uuid='e38085b1-5916-4a06-9872-753ea9eaa56f', image_name='cirros', vm_name='test_vm', vn_ids=['9e0ea609-36d0-4ecb-aebd-59190a61e957'], node_name='cn-jenkins-deploy-platform-ansible-os-3773-1', sg_ids=[], count=1, userdata=None, flavor=<Flavor: contrail_flavor_tiny>, 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=<novaclient.v2.servers.ServerManager object>, name='test_vm', image=<RequestIdProxy at 0x7f9f13d03a88 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, reservation_id=False, min_count=1, max_count=1, security_groups=[], userdata=None, key_name='ctest_ctest-TestRP-04205290ctest-TestRP-04205290key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': '9e0ea609-36d0-4ecb-aebd-59190a61e957'}], 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 = <novaclient.v2.servers.ServerManager object> self._boot = <bound method ServerManager._boot of <novaclient.v2.servers.ServerManager object>> response_key = 'server' boot_args = ['test_vm', <RequestIdProxy at 0x7f9f13d03a88 for image>, <Flavor: contrail_flavor_tiny>] 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-TestRP-04205290ctest-TestRP-04205290key1', ...}
/usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py in _boot(self=<novaclient.v2.servers.ServerManager object>, response_key='server', name='test_vm', image=<RequestIdProxy at 0x7f9f13d03a88 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, userdata=None, reservation_id=False, return_raw=False, min_count=1, max_count=1, security_groups=[], key_name='ctest_ctest-TestRP-04205290ctest-TestRP-04205290key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': '9e0ea609-36d0-4ecb-aebd-59190a61e957'}], 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=<novaclient.v2.servers.ServerManager object>, 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-TestRP-04205290ctest-TestRP-04205290key1', 'max_count': 1, 'min_count': 1, 'name': 'test_vm', 'networks': [{'uuid': '9e0ea609-36d0-4ecb-aebd-59190a61e957'}]}}, 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-TestRP-04205290ctest-TestRP-04205290key1', 'max_count': 1, 'min_count': 1, 'name': 'test_vm', 'networks': [{'uuid': '9e0ea609-36d0-4ecb-aebd-59190a61e957'}]}} self = <novaclient.v2.servers.ServerManager object> self.api = <novaclient.v2.client.Client object> self.api.client = <novaclient.client.SessionClient object> self.api.client.post = <bound method Adapter.post of <novaclient.client.SessionClient object>> url = '/servers'
/usr/local/lib/python3.6/site-packages/keystoneauth1/adapter.py in post(self=<novaclient.client.SessionClient object>, 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-TestRP-04205290ctest-TestRP-04205290key1', 'max_count': 1, 'min_count': 1, 'name': 'test_vm', 'networks': [{'uuid': '9e0ea609-36d0-4ecb-aebd-59190a61e957'}]}}}) 390 391 def post(self, url, **kwargs): 392 return self.request(url, 'POST', **kwargs) 393 394 def put(self, url, **kwargs): self = <novaclient.client.SessionClient object> self.request = <bound method SessionClient.request of <novaclient.client.SessionClient object>> 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-TestRP-04205290ctest-TestRP-04205290key1', 'max_count': 1, 'min_count': 1, 'name': 'test_vm', 'networks': [{'uuid': '9e0ea609-36d0-4ecb-aebd-59190a61e957'}]}}}
/usr/local/lib/python3.6/site-packages/novaclient/client.py in request(self=<novaclient.client.SessionClient object>, 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-TestRP-04205290ctest-TestRP-04205290key1', 'max_count': 1, 'min_count': 1, 'name': 'test_vm', 'networks': [{'uuid': '9e0ea609-36d0-4ecb-aebd-59190a61e957'}]}}, 'headers': {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'python-novaclient', 'X-Auth-Token': 'gAAAAABolNa_Ggr_jEgA68HTx3vIp-k1767lmICFVP_yzrxO...rHMLy1gGkuvgTHmKENnaOynLqcmBU9KomxLg3gfJ1TC6QcATE'}}) 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 = <module 'novaclient.exceptions' from '/usr/local...ython3.6/site-packages/novaclient/exceptions.py'> exceptions.from_response = <function from_response> resp = <Response [400]> body = {'badRequest': {'code': 400, 'message': 'Network 9e0ea609-36d0-4ecb-aebd-59190a61e957 requires a subnet in order to boot instances on.'}} url = '/servers' method = 'POST' BadRequest: Network 9e0ea609-36d0-4ecb-aebd-59190a61e957 requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-de0b0a27-07dc-4d9f-aa12-c7f63a4287c7) __cause__ = None __class__ = <class 'novaclient.exceptions.BadRequest'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of BadRequest object> __dict__ = {'code': 400, 'details': None, 'message': 'Network 9e0ea609-36d0-4ecb-aebd-59190a61e957 requires a subnet in order to boot instances on.', 'method': 'POST', 'request_id': 'req-de0b0a27-07dc-4d9f-aa12-c7f63a4287c7', 'url': '/servers'} __dir__ = <built-in method __dir__ of BadRequest object> __doc__ = '\n HTTP 400 - Bad request: you sent some malformed data.\n ' __eq__ = <method-wrapper '__eq__' of BadRequest object> __format__ = <built-in method __format__ of BadRequest object> __ge__ = <method-wrapper '__ge__' of BadRequest object> __getattribute__ = <method-wrapper '__getattribute__' of BadRequest object> __gt__ = <method-wrapper '__gt__' of BadRequest object> __hash__ = <method-wrapper '__hash__' of BadRequest object> __init__ = <bound method ClientException.__init__ of BadRequest()> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of BadRequest object> __lt__ = <method-wrapper '__lt__' of BadRequest object> __module__ = 'novaclient.exceptions' __ne__ = <method-wrapper '__ne__' of BadRequest object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of BadRequest object> __reduce_ex__ = <built-in method __reduce_ex__ of BadRequest object> __repr__ = <method-wrapper '__repr__' of BadRequest object> __setattr__ = <method-wrapper '__setattr__' of BadRequest object> __setstate__ = <built-in method __setstate__ of BadRequest object> __sizeof__ = <built-in method __sizeof__ of BadRequest object> __str__ = <bound method ClientException.__str__ of BadRequest()> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = () code = 400 details = None http_status = 400 message = 'Network 9e0ea609-36d0-4ecb-aebd-59190a61e957 requires a subnet in order to boot instances on.' method = 'POST' request_id = 'req-de0b0a27-07dc-4d9f-aa12-c7f63a4287c7' url = '/servers' with_traceback = <built-in method with_traceback of BadRequest object>
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/routing_policy/test_routing_policy.py", line 40, in test_rp_interface ret_dict = self.config_basic() File "/contrail-test/scripts/routing_policy/base.py", line 43, in config_basic 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 9e0ea609-36d0-4ecb-aebd-59190a61e957 requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-de0b0a27-07dc-4d9f-aa12-c7f63a4287c7)
| 3.467 |
Log File
|
test_svc_in_network_datapath[ci_sanity] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: KeyError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:39:38 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=<scripts.svc_firewall.test_svc_fw.TestSvcRegr.te...in_network_datapath[ci_sanity] id=0x7f9f13e2ca20>, *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 = <function TestSvcRegr.test_svc_in_network_datapath> self = <scripts.svc_firewall.test_svc_fw.TestSvcRegr.te...in_network_datapath[ci_sanity] id=0x7f9f13e2ca20> args = () kwargs = {}
/contrail-test/scripts/svc_firewall/test_svc_fw.py in test_svc_in_network_datapath(self=<scripts.svc_firewall.test_svc_fw.TestSvcRegr.te...in_network_datapath[ci_sanity] id=0x7f9f13e2ca20>) 24 def test_svc_in_network_datapath(self): 25 return self.verify_svc_chain(svc_img_name='cirros_in_net', service_mode='in-network', 26 create_svms=True) 27 28 create_svms undefined
/contrail-test/common/servicechain/verify.py in verify_svc_chain(self=<scripts.svc_firewall.test_svc_fw.TestSvcRegr.te...in_network_datapath[ci_sanity] id=0x7f9f13e2ca20>, *args=(), **kwargs={'create_svms': True, 'service_mode': 'in-network', 'svc_img_name': 'cirros_in_net'}) 318 def verify_svc_chain(self, *args, **kwargs): 319 svc_chain_info = kwargs.get('svc_chain_info') 320 ret_dict = svc_chain_info or self.config_svc_chain(*args, **kwargs) 321 proto = kwargs.get('proto', 'any') 322 left_vn_fq_name = ret_dict.get('left_vn_fixture').vn_fq_name ret_dict undefined svc_chain_info = None self = <scripts.svc_firewall.test_svc_fw.TestSvcRegr.te...in_network_datapath[ci_sanity] id=0x7f9f13e2ca20> self.config_svc_chain = <bound method ConfigSvcChain.config_svc_chain of...n_network_datapath[ci_sanity] id=0x7f9f13e2ca20>> args = () kwargs = {'create_svms': True, 'service_mode': 'in-network', 'svc_img_name': 'cirros_in_net'}
/contrail-test/common/servicechain/config.py in config_svc_chain(self=<scripts.svc_firewall.test_svc_fw.TestSvcRegr.te...in_network_datapath[ci_sanity] id=0x7f9f13e2ca20>, service_mode='in-network', service_type='firewall', max_inst=1, proto='any', svc_chain_type='parallel', src_ports=[0, 65535], dst_ports=[0, 65535], svc_img_name='cirros_in_net', st_version=2, mgmt_vn_name=None, mgmt_vn_subnets=[], mgmt_vn_fixture=None, left_vn_name=None, left_vn_subnets=[], left_vn_fixture=None, right_vn_name=None, right_vn_subnets=[], right_vn_fixture=None, left_lr_child_vn_fixture=None, right_lr_child_vn_fixture=None, left_vm_name=None, left_vm_fixture=None, right_vm_name=None, right_vm_fixture=None, image_name='cirros', policy_fixture=None, st_fixture=None, si_fixture=None, port_tuples_props=None, static_route=None, svm_fixtures=[], create_svms=True, evpn=False, modify_rules=False, policy_action='pass', hosts=[], **kwargs={}) 444 mgmt_vn_fixture, 445 'mgmt_vn', 446 **kwargs) 447 448 # Left kwargs = {}
/contrail-test/common/servicechain/config.py in _get_vn_for_config(self=<scripts.svc_firewall.test_svc_fw.TestSvcRegr.te...in_network_datapath[ci_sanity] id=0x7f9f13e2ca20>, vn_name='ctest-mgmt_vn-95448772', vn_subnets=['223.49.172.0/26'], vn_fixture=None, vn_name_prefix='mgmt_vn', **kwargs={}) 355 vn_subnets = vn_subnets or \ 356 [get_random_cidr(af=self.inputs.get_af())] 357 vn_fixture = vn_fixture or self.config_vn(vn_name, vn_subnets, **kwargs) 358 vn_fq_name = vn_fixture.vn_fq_name 359 return (vn_name, vn_subnets, vn_fixture, vn_fq_name) vn_fixture = None self = <scripts.svc_firewall.test_svc_fw.TestSvcRegr.te...in_network_datapath[ci_sanity] id=0x7f9f13e2ca20> self.config_vn = <bound method ConfigSvcChain.config_vn of <scrip...n_network_datapath[ci_sanity] id=0x7f9f13e2ca20>> vn_name = 'ctest-mgmt_vn-95448772' vn_subnets = ['223.49.172.0/26'] kwargs = {}
/contrail-test/common/servicechain/config.py in config_vn(self=<scripts.svc_firewall.test_svc_fw.TestSvcRegr.te...in_network_datapath[ci_sanity] id=0x7f9f13e2ca20>, vn_name='ctest-mgmt_vn-95448772', vn_net=['223.49.172.0/26'], **kwargs={}) 137 project_name=self.inputs.project_name, connections=self.connections, 138 vn_name=vn_name, inputs=self.inputs, subnets=vn_net, **kwargs)) 139 assert vn_fixture.verify_on_setup() 140 return vn_fixture 141 vn_fixture = <vn_test.VNFixture object> vn_fixture.verify_on_setup = <bound method VNFixture.verify_on_setup of <vn_test.VNFixture object>>
/contrail-test/fixtures/vn_test.py in verify_on_setup(self=<vn_test.VNFixture object>) 574 def verify_on_setup(self): 575 result = True 576 if not self.verify_vn_in_api_server(): 577 result = result and False 578 self.logger.error( self = <vn_test.VNFixture object> self.verify_vn_in_api_server = <bound method retry.<locals>.deco_retry.<locals>.f_retry of <vn_test.VNFixture object>>
/contrail-test/tcutils/util.py in f_retry(*args=(<vn_test.VNFixture object>,), **kwargs={}) 82 mtries, mdelay = tries, delay # make mutable 83 84 result = f(*args, **kwargs) # first attempt 85 rv = result 86 final = False result undefined f = <function VNFixture.verify_vn_in_api_server> args = (<vn_test.VNFixture object>,) kwargs = {}
/contrail-test/fixtures/vn_test.py in verify_vn_in_api_server(self=<vn_test.VNFixture object>) 638 639 subnets = list() 640 for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: 641 subnets.extend(ipam['attr']['ipam_subnets']) 642 for vn_subnet in self.vn_subnets: ipam undefined self = <vn_test.VNFixture object> self.api_s_vn_obj = {'virtual-network': {'uuid': '56423ae2-7eba-4ea3...2/project/399fec2f-8139-4d11-8507-8fc65a70d8d4'}} KeyError: 'network_ipam_refs' __cause__ = None __class__ = <class 'KeyError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of KeyError object> __dict__ = {} __dir__ = <built-in method __dir__ of KeyError object> __doc__ = 'Mapping key not found.' __eq__ = <method-wrapper '__eq__' of KeyError object> __format__ = <built-in method __format__ of KeyError object> __ge__ = <method-wrapper '__ge__' of KeyError object> __getattribute__ = <method-wrapper '__getattribute__' of KeyError object> __gt__ = <method-wrapper '__gt__' of KeyError object> __hash__ = <method-wrapper '__hash__' of KeyError object> __init__ = <method-wrapper '__init__' of KeyError object> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of KeyError object> __lt__ = <method-wrapper '__lt__' of KeyError object> __ne__ = <method-wrapper '__ne__' of KeyError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of KeyError object> __reduce_ex__ = <built-in method __reduce_ex__ of KeyError object> __repr__ = <method-wrapper '__repr__' of KeyError object> __setattr__ = <method-wrapper '__setattr__' of KeyError object> __setstate__ = <built-in method __setstate__ of KeyError object> __sizeof__ = <built-in method __sizeof__ of KeyError object> __str__ = <method-wrapper '__str__' of KeyError object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> args = ('network_ipam_refs',) with_traceback = <built-in method with_traceback of KeyError object>
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/svc_firewall/test_svc_fw.py", line 26, in test_svc_in_network_datapath create_svms=True) File "/contrail-test/common/servicechain/verify.py", line 320, in verify_svc_chain ret_dict = svc_chain_info or self.config_svc_chain(*args, **kwargs) File "/contrail-test/common/servicechain/config.py", line 446, in config_svc_chain **kwargs) File "/contrail-test/common/servicechain/config.py", line 357, in _get_vn_for_config vn_fixture = vn_fixture or self.config_vn(vn_name, vn_subnets, **kwargs) File "/contrail-test/common/servicechain/config.py", line 139, in config_vn assert vn_fixture.verify_on_setup() File "/contrail-test/fixtures/vn_test.py", line 576, in verify_on_setup if not self.verify_vn_in_api_server(): File "/contrail-test/tcutils/util.py", line 84, in f_retry result = f(*args, **kwargs) # first attempt File "/contrail-test/fixtures/vn_test.py", line 640, in verify_vn_in_api_server for ipam in self.api_s_vn_obj['virtual-network']['network_ipam_refs']: KeyError: 'network_ipam_refs'
| 2.377 |
Log File
|
test_vdns_ping_same_vn[ci_sanity,sanity,suite1] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: stderr: {{{ /contrail-test/tcutils/control/cn_introspect_utils.py:40: FutureWarning: The behavior of this method will change in future versions. Use specific 'len(elem)' or 'elem is not None' test instead. if not p: }}}
Traceback (most recent call last): File "/contrail-test/tcutils/util.py", line 1041, in wrapper return f(self, *func_args, **func_kwargs) File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: BadRequest Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:39:48 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=<scripts.vdns.test_vdns_basic.TestvDNSBasic0.tes...me_vn[ci_sanity,sanity,suite1] id=0x7f9f13dedb70>, *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 = <function TestvDNSBasic0.test_vdns_ping_same_vn> self = <scripts.vdns.test_vdns_basic.TestvDNSBasic0.tes...me_vn[ci_sanity,sanity,suite1] id=0x7f9f13dedb70> args = () kwargs = {}
/contrail-test/scripts/vdns/test_vdns_basic.py in test_vdns_ping_same_vn(self=<scripts.vdns.test_vdns_basic.TestvDNSBasic0.tes...me_vn[ci_sanity,sanity,suite1] id=0x7f9f13dedb70>) 93 vn_name=vn_fixt.vn_name, project_id=proj_fixt.uuid) 94 vm_fixture[vm_name] = self.useFixture( 95 VMFixture(project_name=self.inputs.project_name, connections=self.connections, vn_obj=vn_quantum_obj, vm_name=vm_name,image_name='ubuntu-traffic')) 96 assert vm_fixture[vm_name].wait_till_vm_is_up(), ('VM %s' 97 ' failed to come up' % (vm_name)) global VMFixture = <class 'vm_test.VMFixture'> project_name undefined self = <scripts.vdns.test_vdns_basic.TestvDNSBasic0.tes...me_vn[ci_sanity,sanity,suite1] id=0x7f9f13dedb70> self.inputs = <common.contrail_test_init.ContrailTestInit object> self.inputs.project_name = 'ctest-TestvDNSBasic0-47453128' connections undefined self.connections = <common.connections.ContrailConnections object> vn_obj undefined vn_quantum_obj = {'network': {'id': '4d338350-c54a-4921-befa-4892...port_security_enabled': True, 'description': ''}} vm_name = 'ctest-vm1-test-93089562' image_name undefined
/usr/local/lib/python3.6/site-packages/testtools/testcase.py in useFixture(self=<scripts.vdns.test_vdns_basic.TestvDNSBasic0.tes...me_vn[ci_sanity,sanity,suite1] id=0x7f9f13dedb70>, fixture=<VMFixture: ctest-vm1-test-93089562>) 754 # Gather_details worked, so raise the exception setUp 755 # encountered. 756 reraise(*exc_info) 757 else: 758 self.addCleanup(fixture.cleanUp) global reraise = <function reraise> exc_info = (<class 'novaclient.exceptions.BadRequest'>, BadRequest(), <traceback object>)
/usr/local/lib/python3.6/site-packages/testtools/_compat3x.py in reraise(exc_class=<class 'novaclient.exceptions.BadRequest'>, exc_obj=BadRequest(), exc_tb=<traceback object>, _marker=<object object>) 13 14 def reraise(exc_class, exc_obj, exc_tb, _marker=object()): 15 """Re-raise an exception received from sys.exc_info() or similar.""" 16 raise exc_obj.with_traceback(exc_tb) 17 exc_obj = BadRequest() exc_obj.with_traceback = <built-in method with_traceback of BadRequest object> exc_tb = <traceback object>
/usr/local/lib/python3.6/site-packages/testtools/testcase.py in useFixture(self=<scripts.vdns.test_vdns_basic.TestvDNSBasic0.tes...me_vn[ci_sanity,sanity,suite1] id=0x7f9f13dedb70>, fixture=<VMFixture: ctest-vm1-test-93089562>) 729 """ 730 try: 731 fixture.setUp() 732 except MultipleExceptions as e: 733 if (fixtures is not None and fixture = <VMFixture: ctest-vm1-test-93089562> fixture.setUp = <bound method VMFixture.setUp of <VMFixture: ctest-vm1-test-93089562>>
/contrail-test/fixtures/vm_test.py in setUp(self=<VMFixture: ctest-vm1-test-93089562>) 191 def setUp(self): 192 super(VMFixture, self).setUp() 193 self.create() 194 195 def create(self): self = <VMFixture: ctest-vm1-test-93089562> self.create = <bound method VMFixture.create of <VMFixture: ctest-vm1-test-93089562>>
/contrail-test/fixtures/vm_test.py in create(self=<VMFixture: ctest-vm1-test-93089562>) 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 = <VMFixture: ctest-vm1-test-93089562> self.fixed_ips = []
/contrail-test/fixtures/openstack.py in create_vm(self=<openstack.OpenstackOrchestrator object>, vm_name='ctest-vm1-test-93089562', image_name='cirros', vn_objs=[{'network': {'id': '4d338350-c54a-4921-befa-4892...port_security_enabled': True, 'description': ''}}], **kwargs={'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': [], 'project_uuid': 'beeb2156-6513-45c3-a9f7-51c698601183', '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 = <openstack.OpenstackOrchestrator object> self.nova_h = <nova_test.NovaHelper object> self.nova_h.create_vm = <bound method NovaHelper.create_vm of <nova_test.NovaHelper object>> vm_name = 'ctest-vm1-test-93089562' image_name = 'cirros' vn_ids = ['4d338350-c54a-4921-befa-489251374b92'] kwargs = {'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': [], 'project_uuid': 'beeb2156-6513-45c3-a9f7-51c698601183', 'sg_ids': [], 'userdata': None, 'zone': None}
/contrail-test/fixtures/nova_test.py in create_vm(self=<nova_test.NovaHelper object>, project_uuid='beeb2156-6513-45c3-a9f7-51c698601183', image_name='cirros', vm_name='ctest-vm1-test-93089562', vn_ids=['4d338350-c54a-4921-befa-489251374b92'], node_name='cn-jenkins-deploy-platform-ansible-os-3773-1', sg_ids=[], count=1, userdata=None, flavor=<Flavor: contrail_flavor_tiny>, port_ids=[], 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=<novaclient.v2.servers.ServerManager object>, name='ctest-vm1-test-93089562', image=<RequestIdProxy at 0x7f9f11996108 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, reservation_id=False, min_count=1, max_count=1, security_groups=[], userdata=None, key_name='ctest_ctest-TestvDNSBasic0-47453128ctest-TestvDNSBasic0-47453128key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': '4d338350-c54a-4921-befa-489251374b92'}], 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 = <novaclient.v2.servers.ServerManager object> self._boot = <bound method ServerManager._boot of <novaclient.v2.servers.ServerManager object>> response_key = 'server' boot_args = ['ctest-vm1-test-93089562', <RequestIdProxy at 0x7f9f11996108 for image>, <Flavor: contrail_flavor_tiny>] 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-TestvDNSBasic0-47453128ctest-TestvDNSBasic0-47453128key1', ...}
/usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py in _boot(self=<novaclient.v2.servers.ServerManager object>, response_key='server', name='ctest-vm1-test-93089562', image=<RequestIdProxy at 0x7f9f11996108 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, userdata=None, reservation_id=False, return_raw=False, min_count=1, max_count=1, security_groups=[], key_name='ctest_ctest-TestvDNSBasic0-47453128ctest-TestvDNSBasic0-47453128key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': '4d338350-c54a-4921-befa-489251374b92'}], 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=<novaclient.v2.servers.ServerManager object>, 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-TestvDNSBasic0-47453128ctest-TestvDNSBasic0-47453128key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-vm1-test-93089562', 'networks': [{'uuid': '4d338350-c54a-4921-befa-489251374b92'}]}}, 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-TestvDNSBasic0-47453128ctest-TestvDNSBasic0-47453128key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-vm1-test-93089562', 'networks': [{'uuid': '4d338350-c54a-4921-befa-489251374b92'}]}} self = <novaclient.v2.servers.ServerManager object> self.api = <novaclient.v2.client.Client object> self.api.client = <novaclient.client.SessionClient object> self.api.client.post = <bound method Adapter.post of <novaclient.client.SessionClient object>> url = '/servers'
/usr/local/lib/python3.6/site-packages/keystoneauth1/adapter.py in post(self=<novaclient.client.SessionClient object>, 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-TestvDNSBasic0-47453128ctest-TestvDNSBasic0-47453128key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-vm1-test-93089562', 'networks': [{'uuid': '4d338350-c54a-4921-befa-489251374b92'}]}}}) 390 391 def post(self, url, **kwargs): 392 return self.request(url, 'POST', **kwargs) 393 394 def put(self, url, **kwargs): self = <novaclient.client.SessionClient object> self.request = <bound method SessionClient.request of <novaclient.client.SessionClient object>> 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-TestvDNSBasic0-47453128ctest-TestvDNSBasic0-47453128key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-vm1-test-93089562', 'networks': [{'uuid': '4d338350-c54a-4921-befa-489251374b92'}]}}}
/usr/local/lib/python3.6/site-packages/novaclient/client.py in request(self=<novaclient.client.SessionClient object>, 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-TestvDNSBasic0-47453128ctest-TestvDNSBasic0-47453128key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-vm1-test-93089562', 'networks': [{'uuid': '4d338350-c54a-4921-befa-489251374b92'}]}}, 'headers': {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'python-novaclient', 'X-Auth-Token': 'gAAAAABolNbPpV0iGoHW5CXxQQRKeIZoHjyk2vguyin3Froo...GRVKJtLYOcXR35-qXS4fP0BK1kLCMgiKq00gF7uL8pVpO_VhU'}}) 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 = <module 'novaclient.exceptions' from '/usr/local...ython3.6/site-packages/novaclient/exceptions.py'> exceptions.from_response = <function from_response> resp = <Response [400]> body = {'badRequest': {'code': 400, 'message': 'Network 4d338350-c54a-4921-befa-489251374b92 requires a subnet in order to boot instances on.'}} url = '/servers' method = 'POST' BadRequest: Network 4d338350-c54a-4921-befa-489251374b92 requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-d91d7b01-277a-4cb0-b568-19506bee3cb1) __cause__ = None __class__ = <class 'novaclient.exceptions.BadRequest'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of BadRequest object> __dict__ = {'code': 400, 'details': None, 'message': 'Network 4d338350-c54a-4921-befa-489251374b92 requires a subnet in order to boot instances on.', 'method': 'POST', 'request_id': 'req-d91d7b01-277a-4cb0-b568-19506bee3cb1', 'url': '/servers'} __dir__ = <built-in method __dir__ of BadRequest object> __doc__ = '\n HTTP 400 - Bad request: you sent some malformed data.\n ' __eq__ = <method-wrapper '__eq__' of BadRequest object> __format__ = <built-in method __format__ of BadRequest object> __ge__ = <method-wrapper '__ge__' of BadRequest object> __getattribute__ = <method-wrapper '__getattribute__' of BadRequest object> __gt__ = <method-wrapper '__gt__' of BadRequest object> __hash__ = <method-wrapper '__hash__' of BadRequest object> __init__ = <bound method ClientException.__init__ of BadRequest()> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of BadRequest object> __lt__ = <method-wrapper '__lt__' of BadRequest object> __module__ = 'novaclient.exceptions' __ne__ = <method-wrapper '__ne__' of BadRequest object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of BadRequest object> __reduce_ex__ = <built-in method __reduce_ex__ of BadRequest object> __repr__ = <method-wrapper '__repr__' of BadRequest object> __setattr__ = <method-wrapper '__setattr__' of BadRequest object> __setstate__ = <built-in method __setstate__ of BadRequest object> __sizeof__ = <built-in method __sizeof__ of BadRequest object> __str__ = <bound method ClientException.__str__ of BadRequest()> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = () code = 400 details = None http_status = 400 message = 'Network 4d338350-c54a-4921-befa-489251374b92 requires a subnet in order to boot instances on.' method = 'POST' request_id = 'req-d91d7b01-277a-4cb0-b568-19506bee3cb1' url = '/servers' with_traceback = <built-in method with_traceback of BadRequest object>
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/vdns/test_vdns_basic.py", line 95, in test_vdns_ping_same_vn VMFixture(project_name=self.inputs.project_name, connections=self.connections, vn_obj=vn_quantum_obj, vm_name=vm_name,image_name='ubuntu-traffic')) File "/usr/local/lib/python3.6/site-packages/testtools/testcase.py", line 756, in useFixture reraise(*exc_info) File "/usr/local/lib/python3.6/site-packages/testtools/_compat3x.py", line 16, in reraise raise exc_obj.with_traceback(exc_tb) File "/usr/local/lib/python3.6/site-packages/testtools/testcase.py", line 731, in useFixture fixture.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 4d338350-c54a-4921-befa-489251374b92 requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-d91d7b01-277a-4cb0-b568-19506bee3cb1)
| 5.068 |
Log File
|
test_vm_file_trf_scp_tests[ci_contrail_go_kolla_ocata_sanity,ci_sanity,quick_sanity,vrouter_gw] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/util.py", line 1041, in wrapper return f(self, *func_args, **func_kwargs) File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: BadRequest Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:39:56 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=<scripts.vm_regression.test_vm.TestBasicVMVNx.te...anity,quick_sanity,vrouter_gw] id=0x7f9f13d59780>, *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 = <function TestBasicVMVNx.test_vm_file_trf_scp_tests> self = <scripts.vm_regression.test_vm.TestBasicVMVNx.te...anity,quick_sanity,vrouter_gw] id=0x7f9f13d59780> args = () kwargs = {}
/contrail-test/scripts/vm_regression/test_vm.py in test_vm_file_trf_scp_tests(self=<scripts.vm_regression.test_vm.TestBasicVMVNx.te...anity,quick_sanity,vrouter_gw] id=0x7f9f13d59780>) 2862 vm1_fixture = self.create_vm(vn_fixture=vn_fixture, 2863 image_name='ubuntu-sshpass', 2864 orch=self.orchestrator) 2865 vm2_fixture = self.create_vm(vn_fixture=vn_fixture, 2866 image_name='ubuntu-sshpass') orch undefined self = <scripts.vm_regression.test_vm.TestBasicVMVNx.te...anity,quick_sanity,vrouter_gw] id=0x7f9f13d59780> self.orchestrator = <openstack.OpenstackOrchestrator object>
/contrail-test/common/base.py in create_vm(self=<scripts.vm_regression.test_vm.TestBasicVMVNx.te...anity,quick_sanity,vrouter_gw] id=0x7f9f13d59780>, vn_fixture=<vn_test.VNFixture object>, vm_name=None, image_name='ubuntu-sshpass', port_ids=None, **kwargs={'orch': <openstack.OpenstackOrchestrator object>}) 279 image_name=image_name, 280 port_ids=port_ids, 281 **kwargs) 282 if cleanup: 283 self.addCleanup(vm_fixture.cleanUp) kwargs = {'orch': <openstack.OpenstackOrchestrator object>}
/contrail-test/common/base.py in create_only_vm(cls=<class 'scripts.vm_regression.test_vm.TestBasicVMVNx'>, vn_fixture=<vn_test.VNFixture object>, vm_name=None, image_name='ubuntu-sshpass', **kwargs={'orch': <openstack.OpenstackOrchestrator object>, '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 = <VMFixture: ctest-TestBasicVMVNx-16520211-85155220> vm_obj.setUp = <bound method VMFixture.setUp of <VMFixture: ctest-TestBasicVMVNx-16520211-85155220>>
/contrail-test/fixtures/vm_test.py in setUp(self=<VMFixture: ctest-TestBasicVMVNx-16520211-85155220>) 191 def setUp(self): 192 super(VMFixture, self).setUp() 193 self.create() 194 195 def create(self): self = <VMFixture: ctest-TestBasicVMVNx-16520211-85155220> self.create = <bound method VMFixture.create of <VMFixture: ctest-TestBasicVMVNx-16520211-85155220>>
/contrail-test/fixtures/vm_test.py in create(self=<VMFixture: ctest-TestBasicVMVNx-16520211-85155220>) 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 = <VMFixture: ctest-TestBasicVMVNx-16520211-85155220> self.fixed_ips = []
/contrail-test/fixtures/openstack.py in create_vm(self=<openstack.OpenstackOrchestrator object>, vm_name='ctest-TestBasicVMVNx-16520211-85155220', image_name='cirros', vn_objs=[{'network': {'id': 'c5a327e6-b47d-46b5-97f5-7184...port_security_enabled': True, 'description': ''}}], **kwargs={'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': 'df55f6f0-a604-4d59-9b38-e14c98e05997', '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 = <openstack.OpenstackOrchestrator object> self.nova_h = <nova_test.NovaHelper object> self.nova_h.create_vm = <bound method NovaHelper.create_vm of <nova_test.NovaHelper object>> vm_name = 'ctest-TestBasicVMVNx-16520211-85155220' image_name = 'cirros' vn_ids = ['c5a327e6-b47d-46b5-97f5-718475a401eb'] kwargs = {'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': 'df55f6f0-a604-4d59-9b38-e14c98e05997', 'sg_ids': [], 'userdata': None, 'zone': None}
/contrail-test/fixtures/nova_test.py in create_vm(self=<nova_test.NovaHelper object>, project_uuid='df55f6f0-a604-4d59-9b38-e14c98e05997', image_name='cirros', vm_name='ctest-TestBasicVMVNx-16520211-85155220', vn_ids=['c5a327e6-b47d-46b5-97f5-718475a401eb'], node_name='cn-jenkins-deploy-platform-ansible-os-3773-1', sg_ids=[], count=1, userdata=None, flavor=<Flavor: contrail_flavor_tiny>, 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=<novaclient.v2.servers.ServerManager object>, name='ctest-TestBasicVMVNx-16520211-85155220', image=<RequestIdProxy at 0x7f9f118ed0c8 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, reservation_id=False, min_count=1, max_count=1, security_groups=[], userdata=None, key_name='ctest_ctest-TestBasicVMVNx-16520211ctest-TestBasicVMVNx-16520211key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': 'c5a327e6-b47d-46b5-97f5-718475a401eb'}], 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 = <novaclient.v2.servers.ServerManager object> self._boot = <bound method ServerManager._boot of <novaclient.v2.servers.ServerManager object>> response_key = 'server' boot_args = ['ctest-TestBasicVMVNx-16520211-85155220', <RequestIdProxy at 0x7f9f118ed0c8 for image>, <Flavor: contrail_flavor_tiny>] 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-TestBasicVMVNx-16520211ctest-TestBasicVMVNx-16520211key1', ...}
/usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py in _boot(self=<novaclient.v2.servers.ServerManager object>, response_key='server', name='ctest-TestBasicVMVNx-16520211-85155220', image=<RequestIdProxy at 0x7f9f118ed0c8 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, userdata=None, reservation_id=False, return_raw=False, min_count=1, max_count=1, security_groups=[], key_name='ctest_ctest-TestBasicVMVNx-16520211ctest-TestBasicVMVNx-16520211key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': 'c5a327e6-b47d-46b5-97f5-718475a401eb'}], 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=<novaclient.v2.servers.ServerManager object>, 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-TestBasicVMVNx-16520211ctest-TestBasicVMVNx-16520211key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVNx-16520211-85155220', 'networks': [{'uuid': 'c5a327e6-b47d-46b5-97f5-718475a401eb'}]}}, 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-TestBasicVMVNx-16520211ctest-TestBasicVMVNx-16520211key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVNx-16520211-85155220', 'networks': [{'uuid': 'c5a327e6-b47d-46b5-97f5-718475a401eb'}]}} self = <novaclient.v2.servers.ServerManager object> self.api = <novaclient.v2.client.Client object> self.api.client = <novaclient.client.SessionClient object> self.api.client.post = <bound method Adapter.post of <novaclient.client.SessionClient object>> url = '/servers'
/usr/local/lib/python3.6/site-packages/keystoneauth1/adapter.py in post(self=<novaclient.client.SessionClient object>, 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-TestBasicVMVNx-16520211ctest-TestBasicVMVNx-16520211key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVNx-16520211-85155220', 'networks': [{'uuid': 'c5a327e6-b47d-46b5-97f5-718475a401eb'}]}}}) 390 391 def post(self, url, **kwargs): 392 return self.request(url, 'POST', **kwargs) 393 394 def put(self, url, **kwargs): self = <novaclient.client.SessionClient object> self.request = <bound method SessionClient.request of <novaclient.client.SessionClient object>> 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-TestBasicVMVNx-16520211ctest-TestBasicVMVNx-16520211key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVNx-16520211-85155220', 'networks': [{'uuid': 'c5a327e6-b47d-46b5-97f5-718475a401eb'}]}}}
/usr/local/lib/python3.6/site-packages/novaclient/client.py in request(self=<novaclient.client.SessionClient object>, 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-TestBasicVMVNx-16520211ctest-TestBasicVMVNx-16520211key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVNx-16520211-85155220', 'networks': [{'uuid': 'c5a327e6-b47d-46b5-97f5-718475a401eb'}]}}, 'headers': {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'python-novaclient', 'X-Auth-Token': 'gAAAAABolNbZ1-33xpAinc_ukJuiA282qWEC2v0Bg34WnWrY...cyVSQj1WkuXC6ieiTHO5qe5a2p4qDm46zttZLg47GNOpABnhY'}}) 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 = <module 'novaclient.exceptions' from '/usr/local...ython3.6/site-packages/novaclient/exceptions.py'> exceptions.from_response = <function from_response> resp = <Response [400]> body = {'badRequest': {'code': 400, 'message': 'Network c5a327e6-b47d-46b5-97f5-718475a401eb requires a subnet in order to boot instances on.'}} url = '/servers' method = 'POST' BadRequest: Network c5a327e6-b47d-46b5-97f5-718475a401eb requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-8a02fce3-ac76-40e8-9051-b7d01fa63379) __cause__ = None __class__ = <class 'novaclient.exceptions.BadRequest'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of BadRequest object> __dict__ = {'code': 400, 'details': None, 'message': 'Network c5a327e6-b47d-46b5-97f5-718475a401eb requires a subnet in order to boot instances on.', 'method': 'POST', 'request_id': 'req-8a02fce3-ac76-40e8-9051-b7d01fa63379', 'url': '/servers'} __dir__ = <built-in method __dir__ of BadRequest object> __doc__ = '\n HTTP 400 - Bad request: you sent some malformed data.\n ' __eq__ = <method-wrapper '__eq__' of BadRequest object> __format__ = <built-in method __format__ of BadRequest object> __ge__ = <method-wrapper '__ge__' of BadRequest object> __getattribute__ = <method-wrapper '__getattribute__' of BadRequest object> __gt__ = <method-wrapper '__gt__' of BadRequest object> __hash__ = <method-wrapper '__hash__' of BadRequest object> __init__ = <bound method ClientException.__init__ of BadRequest()> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of BadRequest object> __lt__ = <method-wrapper '__lt__' of BadRequest object> __module__ = 'novaclient.exceptions' __ne__ = <method-wrapper '__ne__' of BadRequest object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of BadRequest object> __reduce_ex__ = <built-in method __reduce_ex__ of BadRequest object> __repr__ = <method-wrapper '__repr__' of BadRequest object> __setattr__ = <method-wrapper '__setattr__' of BadRequest object> __setstate__ = <built-in method __setstate__ of BadRequest object> __sizeof__ = <built-in method __sizeof__ of BadRequest object> __str__ = <bound method ClientException.__str__ of BadRequest()> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = () code = 400 details = None http_status = 400 message = 'Network c5a327e6-b47d-46b5-97f5-718475a401eb requires a subnet in order to boot instances on.' method = 'POST' request_id = 'req-8a02fce3-ac76-40e8-9051-b7d01fa63379' url = '/servers' with_traceback = <built-in method with_traceback of BadRequest object>
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/vm_regression/test_vm.py", line 2864, in test_vm_file_trf_scp_tests orch=self.orchestrator) 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 c5a327e6-b47d-46b5-97f5-718475a401eb requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-8a02fce3-ac76-40e8-9051-b7d01fa63379)
| 2.869 |
Log File
|
test_generic_link_local_service[cb_sanity,ci_contrail_go_kolla_ocata_sanity,ci_sanity,dev_sanity_dpdk,sanity,suite1] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: BadRequest Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:40:03 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=<scripts.vm_regression.test_vm_basic.TestBasicVM...dev_sanity_dpdk,sanity,suite1] id=0x7f9f13d59978>, *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 = <function TestBasicVMVN.test_generic_link_local_service> self = <scripts.vm_regression.test_vm_basic.TestBasicVM...dev_sanity_dpdk,sanity,suite1] id=0x7f9f13d59978> args = () kwargs = {}
/contrail-test/scripts/vm_regression/test_vm_basic.py in test_generic_link_local_service(self=<scripts.vm_regression.test_vm_basic.TestBasicVM...dev_sanity_dpdk,sanity,suite1] id=0x7f9f13d59978>) 275 vn_name=vn_name, inputs=self.inputs, subnets=vn_subnets)) 276 vn_obj = vn_fixture.obj 277 vm1_fixture = self.create_vm(vn_ids=[vn_fixture.uuid], image_name='cirros') 278 279 lls_service_name = 'introspect' vm1_fixture undefined self = <scripts.vm_regression.test_vm_basic.TestBasicVM...dev_sanity_dpdk,sanity,suite1] id=0x7f9f13d59978> self.create_vm = <bound method GenericTestBase.create_vm of <scri...ev_sanity_dpdk,sanity,suite1] id=0x7f9f13d59978>> vn_ids undefined vn_fixture = <vn_test.VNFixture object> vn_fixture.uuid = 'fd78c59a-2610-4652-8631-0511fcb89324' image_name undefined
/contrail-test/common/base.py in create_vm(self=<scripts.vm_regression.test_vm_basic.TestBasicVM...dev_sanity_dpdk,sanity,suite1] id=0x7f9f13d59978>, vn_fixture=None, vm_name=None, image_name='cirros', port_ids=None, **kwargs={'vn_ids': ['fd78c59a-2610-4652-8631-0511fcb89324']}) 279 image_name=image_name, 280 port_ids=port_ids, 281 **kwargs) 282 if cleanup: 283 self.addCleanup(vm_fixture.cleanUp) kwargs = {'vn_ids': ['fd78c59a-2610-4652-8631-0511fcb89324']}
/contrail-test/common/base.py in create_only_vm(cls=<class 'scripts.vm_regression.test_vm_basic.TestBasicVMVN'>, vn_fixture=None, vm_name=None, image_name='cirros', **kwargs={'port_ids': None, 'vn_ids': ['fd78c59a-2610-4652-8631-0511fcb89324']}) 252 image_name=image_name, 253 **kwargs) 254 vm_obj.setUp() 255 return vm_obj 256 # end create_only_vm vm_obj = <VMFixture: ctest-TestBasicVMVN-89398966-10484464> vm_obj.setUp = <bound method VMFixture.setUp of <VMFixture: ctest-TestBasicVMVN-89398966-10484464>>
/contrail-test/fixtures/vm_test.py in setUp(self=<VMFixture: ctest-TestBasicVMVN-89398966-10484464>) 191 def setUp(self): 192 super(VMFixture, self).setUp() 193 self.create() 194 195 def create(self): self = <VMFixture: ctest-TestBasicVMVN-89398966-10484464> self.create = <bound method VMFixture.create of <VMFixture: ctest-TestBasicVMVN-89398966-10484464>>
/contrail-test/fixtures/vm_test.py in create(self=<VMFixture: ctest-TestBasicVMVN-89398966-10484464>) 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 = <VMFixture: ctest-TestBasicVMVN-89398966-10484464> self.fixed_ips = []
/contrail-test/fixtures/openstack.py in create_vm(self=<openstack.OpenstackOrchestrator object>, vm_name='ctest-TestBasicVMVN-89398966-10484464', image_name='cirros', vn_objs=[{'network': {'id': 'fd78c59a-2610-4652-8631-0511...port_security_enabled': True, 'description': ''}}], **kwargs={'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': '26992612-9c82-48f8-a1db-700953faa645', '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 = <openstack.OpenstackOrchestrator object> self.nova_h = <nova_test.NovaHelper object> self.nova_h.create_vm = <bound method NovaHelper.create_vm of <nova_test.NovaHelper object>> vm_name = 'ctest-TestBasicVMVN-89398966-10484464' image_name = 'cirros' vn_ids = ['fd78c59a-2610-4652-8631-0511fcb89324'] kwargs = {'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': '26992612-9c82-48f8-a1db-700953faa645', 'sg_ids': [], 'userdata': None, 'zone': None}
/contrail-test/fixtures/nova_test.py in create_vm(self=<nova_test.NovaHelper object>, project_uuid='26992612-9c82-48f8-a1db-700953faa645', image_name='cirros', vm_name='ctest-TestBasicVMVN-89398966-10484464', vn_ids=['fd78c59a-2610-4652-8631-0511fcb89324'], node_name='cn-jenkins-deploy-platform-ansible-os-3773-1', sg_ids=[], count=1, userdata=None, flavor=<Flavor: contrail_flavor_tiny>, 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=<novaclient.v2.servers.ServerManager object>, name='ctest-TestBasicVMVN-89398966-10484464', image=<RequestIdProxy at 0x7f9f11643108 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, reservation_id=False, min_count=1, max_count=1, security_groups=[], userdata=None, key_name='ctest_ctest-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': 'fd78c59a-2610-4652-8631-0511fcb89324'}], 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 = <novaclient.v2.servers.ServerManager object> self._boot = <bound method ServerManager._boot of <novaclient.v2.servers.ServerManager object>> response_key = 'server' boot_args = ['ctest-TestBasicVMVN-89398966-10484464', <RequestIdProxy at 0x7f9f11643108 for image>, <Flavor: contrail_flavor_tiny>] 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', ...}
/usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py in _boot(self=<novaclient.v2.servers.ServerManager object>, response_key='server', name='ctest-TestBasicVMVN-89398966-10484464', image=<RequestIdProxy at 0x7f9f11643108 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, userdata=None, reservation_id=False, return_raw=False, min_count=1, max_count=1, security_groups=[], key_name='ctest_ctest-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': 'fd78c59a-2610-4652-8631-0511fcb89324'}], 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=<novaclient.v2.servers.ServerManager object>, 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVN-89398966-10484464', 'networks': [{'uuid': 'fd78c59a-2610-4652-8631-0511fcb89324'}]}}, 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVN-89398966-10484464', 'networks': [{'uuid': 'fd78c59a-2610-4652-8631-0511fcb89324'}]}} self = <novaclient.v2.servers.ServerManager object> self.api = <novaclient.v2.client.Client object> self.api.client = <novaclient.client.SessionClient object> self.api.client.post = <bound method Adapter.post of <novaclient.client.SessionClient object>> url = '/servers'
/usr/local/lib/python3.6/site-packages/keystoneauth1/adapter.py in post(self=<novaclient.client.SessionClient object>, 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVN-89398966-10484464', 'networks': [{'uuid': 'fd78c59a-2610-4652-8631-0511fcb89324'}]}}}) 390 391 def post(self, url, **kwargs): 392 return self.request(url, 'POST', **kwargs) 393 394 def put(self, url, **kwargs): self = <novaclient.client.SessionClient object> self.request = <bound method SessionClient.request of <novaclient.client.SessionClient object>> 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVN-89398966-10484464', 'networks': [{'uuid': 'fd78c59a-2610-4652-8631-0511fcb89324'}]}}}
/usr/local/lib/python3.6/site-packages/novaclient/client.py in request(self=<novaclient.client.SessionClient object>, 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVN-89398966-10484464', 'networks': [{'uuid': 'fd78c59a-2610-4652-8631-0511fcb89324'}]}}, 'headers': {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'python-novaclient', 'X-Auth-Token': 'gAAAAABolNbgxtHZKXvMQBCDppIF926QHpfsL2JOvRamUkJy...XWEXOTzupFv4wrWsQIpLNgllsFfFbHF3IO59UsqN2yP-K62uI'}}) 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 = <module 'novaclient.exceptions' from '/usr/local...ython3.6/site-packages/novaclient/exceptions.py'> exceptions.from_response = <function from_response> resp = <Response [400]> body = {'badRequest': {'code': 400, 'message': 'Network fd78c59a-2610-4652-8631-0511fcb89324 requires a subnet in order to boot instances on.'}} url = '/servers' method = 'POST' BadRequest: Network fd78c59a-2610-4652-8631-0511fcb89324 requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-158fb43d-ccd2-4667-8544-e8209e88e617) __cause__ = None __class__ = <class 'novaclient.exceptions.BadRequest'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of BadRequest object> __dict__ = {'code': 400, 'details': None, 'message': 'Network fd78c59a-2610-4652-8631-0511fcb89324 requires a subnet in order to boot instances on.', 'method': 'POST', 'request_id': 'req-158fb43d-ccd2-4667-8544-e8209e88e617', 'url': '/servers'} __dir__ = <built-in method __dir__ of BadRequest object> __doc__ = '\n HTTP 400 - Bad request: you sent some malformed data.\n ' __eq__ = <method-wrapper '__eq__' of BadRequest object> __format__ = <built-in method __format__ of BadRequest object> __ge__ = <method-wrapper '__ge__' of BadRequest object> __getattribute__ = <method-wrapper '__getattribute__' of BadRequest object> __gt__ = <method-wrapper '__gt__' of BadRequest object> __hash__ = <method-wrapper '__hash__' of BadRequest object> __init__ = <bound method ClientException.__init__ of BadRequest()> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of BadRequest object> __lt__ = <method-wrapper '__lt__' of BadRequest object> __module__ = 'novaclient.exceptions' __ne__ = <method-wrapper '__ne__' of BadRequest object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of BadRequest object> __reduce_ex__ = <built-in method __reduce_ex__ of BadRequest object> __repr__ = <method-wrapper '__repr__' of BadRequest object> __setattr__ = <method-wrapper '__setattr__' of BadRequest object> __setstate__ = <built-in method __setstate__ of BadRequest object> __sizeof__ = <built-in method __sizeof__ of BadRequest object> __str__ = <bound method ClientException.__str__ of BadRequest()> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = () code = 400 details = None http_status = 400 message = 'Network fd78c59a-2610-4652-8631-0511fcb89324 requires a subnet in order to boot instances on.' method = 'POST' request_id = 'req-158fb43d-ccd2-4667-8544-e8209e88e617' url = '/servers' with_traceback = <built-in method with_traceback of BadRequest object>
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/vm_regression/test_vm_basic.py", line 277, in test_generic_link_local_service vm1_fixture = self.create_vm(vn_ids=[vn_fixture.uuid], 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 fd78c59a-2610-4652-8631-0511fcb89324 requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-158fb43d-ccd2-4667-8544-e8209e88e617)
| 2.154 |
Log File
|
test_metadata_service[cb_sanity,ci_sanity,sanity,suite1] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: BadRequest Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:40:05 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=<scripts.vm_regression.test_vm_basic.TestBasicVM...anity,ci_sanity,sanity,suite1] id=0x7f9f13d59860>, *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 = <function TestBasicVMVN.test_metadata_service> self = <scripts.vm_regression.test_vm_basic.TestBasicVM...anity,ci_sanity,sanity,suite1] id=0x7f9f13d59860> args = () kwargs = {}
/contrail-test/scripts/vm_regression/test_vm_basic.py in test_metadata_service(self=<scripts.vm_regression.test_vm_basic.TestBasicVM...anity,ci_sanity,sanity,suite1] id=0x7f9f13d59860>) 54 vm1_fixture = self.create_vm(vn_fixture=vn_fixture, 55 image_name='cirros', 56 userdata='/tmp/metadata_script.txt') 57 assert vm1_fixture.wait_till_vm_is_up() 58 userdata undefined
/contrail-test/common/base.py in create_vm(self=<scripts.vm_regression.test_vm_basic.TestBasicVM...anity,ci_sanity,sanity,suite1] id=0x7f9f13d59860>, vn_fixture=<vn_test.VNFixture object>, vm_name=None, image_name='cirros', port_ids=None, **kwargs={'userdata': '/tmp/metadata_script.txt'}) 279 image_name=image_name, 280 port_ids=port_ids, 281 **kwargs) 282 if cleanup: 283 self.addCleanup(vm_fixture.cleanUp) kwargs = {'userdata': '/tmp/metadata_script.txt'}
/contrail-test/common/base.py in create_only_vm(cls=<class 'scripts.vm_regression.test_vm_basic.TestBasicVMVN'>, vn_fixture=<vn_test.VNFixture object>, vm_name=None, image_name='cirros', **kwargs={'port_ids': None, 'userdata': '/tmp/metadata_script.txt'}) 252 image_name=image_name, 253 **kwargs) 254 vm_obj.setUp() 255 return vm_obj 256 # end create_only_vm vm_obj = <VMFixture: ctest-TestBasicVMVN-89398966-79103397> vm_obj.setUp = <bound method VMFixture.setUp of <VMFixture: ctest-TestBasicVMVN-89398966-79103397>>
/contrail-test/fixtures/vm_test.py in setUp(self=<VMFixture: ctest-TestBasicVMVN-89398966-79103397>) 191 def setUp(self): 192 super(VMFixture, self).setUp() 193 self.create() 194 195 def create(self): self = <VMFixture: ctest-TestBasicVMVN-89398966-79103397> self.create = <bound method VMFixture.create of <VMFixture: ctest-TestBasicVMVN-89398966-79103397>>
/contrail-test/fixtures/vm_test.py in create(self=<VMFixture: ctest-TestBasicVMVN-89398966-79103397>) 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 = <VMFixture: ctest-TestBasicVMVN-89398966-79103397> self.fixed_ips = []
/contrail-test/fixtures/openstack.py in create_vm(self=<openstack.OpenstackOrchestrator object>, vm_name='ctest-TestBasicVMVN-89398966-79103397', image_name='cirros', vn_objs=[{'network': {'id': '1ab34e0b-670d-4837-aee7-b291...port_security_enabled': True, 'description': ''}}], **kwargs={'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': '26992612-9c82-48f8-a1db-700953faa645', 'sg_ids': [], 'userdata': '/tmp/metadata_script.txt', '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 = <openstack.OpenstackOrchestrator object> self.nova_h = <nova_test.NovaHelper object> self.nova_h.create_vm = <bound method NovaHelper.create_vm of <nova_test.NovaHelper object>> vm_name = 'ctest-TestBasicVMVN-89398966-79103397' image_name = 'cirros' vn_ids = ['1ab34e0b-670d-4837-aee7-b2917261faf9'] kwargs = {'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': None, 'project_uuid': '26992612-9c82-48f8-a1db-700953faa645', 'sg_ids': [], 'userdata': '/tmp/metadata_script.txt', 'zone': None}
/contrail-test/fixtures/nova_test.py in create_vm(self=<nova_test.NovaHelper object>, project_uuid='26992612-9c82-48f8-a1db-700953faa645', image_name='cirros', vm_name='ctest-TestBasicVMVN-89398966-79103397', vn_ids=['1ab34e0b-670d-4837-aee7-b2917261faf9'], node_name='cn-jenkins-deploy-platform-ansible-os-3773-1', sg_ids=[], count=1, userdata='#!/bin/sh\necho "Hello World. The time is now $(date -R)!" | tee /tmp/output.txt\n ', flavor=<Flavor: contrail_flavor_tiny>, 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 = '#!/bin/sh\necho "Hello World. The time is now $(date -R)!" | tee /tmp/output.txt\n '
/usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py in create(self=<novaclient.v2.servers.ServerManager object>, name='ctest-TestBasicVMVN-89398966-79103397', image=<RequestIdProxy at 0x7f9f11659a88 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, reservation_id=False, min_count=1, max_count=1, security_groups=[], userdata='#!/bin/sh\necho "Hello World. The time is now $(date -R)!" | tee /tmp/output.txt\n ', key_name='ctest_ctest-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': '1ab34e0b-670d-4837-aee7-b2917261faf9'}], 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 = <novaclient.v2.servers.ServerManager object> self._boot = <bound method ServerManager._boot of <novaclient.v2.servers.ServerManager object>> response_key = 'server' boot_args = ['ctest-TestBasicVMVN-89398966-79103397', <RequestIdProxy at 0x7f9f11659a88 for image>, <Flavor: contrail_flavor_tiny>] 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', ...}
/usr/local/lib/python3.6/site-packages/novaclient/v2/servers.py in _boot(self=<novaclient.v2.servers.ServerManager object>, response_key='server', name='ctest-TestBasicVMVN-89398966-79103397', image=<RequestIdProxy at 0x7f9f11659a88 for image>, flavor=<Flavor: contrail_flavor_tiny>, meta=None, files=None, userdata='#!/bin/sh\necho "Hello World. The time is now $(date -R)!" | tee /tmp/output.txt\n ', reservation_id=False, return_raw=False, min_count=1, max_count=1, security_groups=[], key_name='ctest_ctest-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', availability_zone='nova:cn-jenkins-deploy-platform-ansible-os-3773-1', block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': '1ab34e0b-670d-4837-aee7-b2917261faf9'}], 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=<novaclient.v2.servers.ServerManager object>, 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVN-89398966-79103397', 'networks': [{'uuid': '1ab34e0b-670d-4837-aee7-b2917261faf9'}], 'user_data': 'IyEvYmluL3NoCmVjaG8gIkhlbGxvIFdvcmxkLiAgVGhlIHRp...8IHRlZSAvdG1wL291dHB1dC50eHQKICAgICAgICAgICAgICAg'}}, 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVN-89398966-79103397', 'networks': [{'uuid': '1ab34e0b-670d-4837-aee7-b2917261faf9'}], 'user_data': 'IyEvYmluL3NoCmVjaG8gIkhlbGxvIFdvcmxkLiAgVGhlIHRp...8IHRlZSAvdG1wL291dHB1dC50eHQKICAgICAgICAgICAgICAg'}} self = <novaclient.v2.servers.ServerManager object> self.api = <novaclient.v2.client.Client object> self.api.client = <novaclient.client.SessionClient object> self.api.client.post = <bound method Adapter.post of <novaclient.client.SessionClient object>> url = '/servers'
/usr/local/lib/python3.6/site-packages/keystoneauth1/adapter.py in post(self=<novaclient.client.SessionClient object>, 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVN-89398966-79103397', 'networks': [{'uuid': '1ab34e0b-670d-4837-aee7-b2917261faf9'}], 'user_data': 'IyEvYmluL3NoCmVjaG8gIkhlbGxvIFdvcmxkLiAgVGhlIHRp...8IHRlZSAvdG1wL291dHB1dC50eHQKICAgICAgICAgICAgICAg'}}}) 390 391 def post(self, url, **kwargs): 392 return self.request(url, 'POST', **kwargs) 393 394 def put(self, url, **kwargs): self = <novaclient.client.SessionClient object> self.request = <bound method SessionClient.request of <novaclient.client.SessionClient object>> 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVN-89398966-79103397', 'networks': [{'uuid': '1ab34e0b-670d-4837-aee7-b2917261faf9'}], 'user_data': 'IyEvYmluL3NoCmVjaG8gIkhlbGxvIFdvcmxkLiAgVGhlIHRp...8IHRlZSAvdG1wL291dHB1dC50eHQKICAgICAgICAgICAgICAg'}}}
/usr/local/lib/python3.6/site-packages/novaclient/client.py in request(self=<novaclient.client.SessionClient object>, 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-TestBasicVMVN-89398966ctest-TestBasicVMVN-89398966key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestBasicVMVN-89398966-79103397', 'networks': [{'uuid': '1ab34e0b-670d-4837-aee7-b2917261faf9'}], 'user_data': 'IyEvYmluL3NoCmVjaG8gIkhlbGxvIFdvcmxkLiAgVGhlIHRp...8IHRlZSAvdG1wL291dHB1dC50eHQKICAgICAgICAgICAgICAg'}}, 'headers': {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'python-novaclient', 'X-Auth-Token': 'gAAAAABolNbgxtHZKXvMQBCDppIF926QHpfsL2JOvRamUkJy...XWEXOTzupFv4wrWsQIpLNgllsFfFbHF3IO59UsqN2yP-K62uI'}}) 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 = <module 'novaclient.exceptions' from '/usr/local...ython3.6/site-packages/novaclient/exceptions.py'> exceptions.from_response = <function from_response> resp = <Response [400]> body = {'badRequest': {'code': 400, 'message': 'Network 1ab34e0b-670d-4837-aee7-b2917261faf9 requires a subnet in order to boot instances on.'}} url = '/servers' method = 'POST' BadRequest: Network 1ab34e0b-670d-4837-aee7-b2917261faf9 requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-896f1bb5-5b00-47ef-aefe-f35506635e03) __cause__ = None __class__ = <class 'novaclient.exceptions.BadRequest'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of BadRequest object> __dict__ = {'code': 400, 'details': None, 'message': 'Network 1ab34e0b-670d-4837-aee7-b2917261faf9 requires a subnet in order to boot instances on.', 'method': 'POST', 'request_id': 'req-896f1bb5-5b00-47ef-aefe-f35506635e03', 'url': '/servers'} __dir__ = <built-in method __dir__ of BadRequest object> __doc__ = '\n HTTP 400 - Bad request: you sent some malformed data.\n ' __eq__ = <method-wrapper '__eq__' of BadRequest object> __format__ = <built-in method __format__ of BadRequest object> __ge__ = <method-wrapper '__ge__' of BadRequest object> __getattribute__ = <method-wrapper '__getattribute__' of BadRequest object> __gt__ = <method-wrapper '__gt__' of BadRequest object> __hash__ = <method-wrapper '__hash__' of BadRequest object> __init__ = <bound method ClientException.__init__ of BadRequest()> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of BadRequest object> __lt__ = <method-wrapper '__lt__' of BadRequest object> __module__ = 'novaclient.exceptions' __ne__ = <method-wrapper '__ne__' of BadRequest object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of BadRequest object> __reduce_ex__ = <built-in method __reduce_ex__ of BadRequest object> __repr__ = <method-wrapper '__repr__' of BadRequest object> __setattr__ = <method-wrapper '__setattr__' of BadRequest object> __setstate__ = <built-in method __setstate__ of BadRequest object> __sizeof__ = <built-in method __sizeof__ of BadRequest object> __str__ = <bound method ClientException.__str__ of BadRequest()> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = () code = 400 details = None http_status = 400 message = 'Network 1ab34e0b-670d-4837-aee7-b2917261faf9 requires a subnet in order to boot instances on.' method = 'POST' request_id = 'req-896f1bb5-5b00-47ef-aefe-f35506635e03' url = '/servers' with_traceback = <built-in method with_traceback of BadRequest object>
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/vm_regression/test_vm_basic.py", line 56, in test_metadata_service userdata='/tmp/metadata_script.txt') 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 1ab34e0b-670d-4837-aee7-b2917261faf9 requires a subnet in order to boot instances on. (HTTP 400) (Request-ID: req-896f1bb5-5b00-47ef-aefe-f35506635e03)
| 1.916 |
Log File
|
test_ping_within_vn_two_vms_two_different_subnets[ci_contrail_go_kolla_ocata_sanity,ci_sanity,sanity,suite1] | Failure | Details
Traceback (most recent call last): testtools.testresult.real._StringException: Traceback (most recent call last): File "/contrail-test/tcutils/wrappers.py", line 176, in wrapper raise TestFailed("\n ".join(errmsg)) tcutils.cores.TestFailed: Test failed: KeyError Python 3.6.8: /usr/bin/python3 Thu Aug 7 16:40:06 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=<scripts.vm_regression.test_vm_basic.TestBasicVM...anity,ci_sanity,sanity,suite1] id=0x7f9f13d59b38>, *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 = <function TestBasicVMVN.test_ping_within_vn_two_vms_two_different_subnets> self = <scripts.vm_regression.test_vm_basic.TestBasicVM...anity,ci_sanity,sanity,suite1] id=0x7f9f13d59b38> args = () kwargs = {}
/contrail-test/scripts/vm_regression/test_vm_basic.py in test_ping_within_vn_two_vms_two_different_subnets(self=<scripts.vm_regression.test_vm_basic.TestBasicVM...anity,ci_sanity,sanity,suite1] id=0x7f9f13d59b38>) 139 140 vm1 = self.create_vm(image_name='cirros', vn_fixture=vn1_fixture, 141 port_ids=[ports['subnet1']['id']]) 142 vm2 = self.create_vm(image_name='cirros', vn_fixture=vn1_fixture, 143 port_ids=[ports['subnet2']['id']]) port_ids undefined ports = {} KeyError: 'subnet1' __cause__ = None __class__ = <class 'KeyError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of KeyError object> __dict__ = {} __dir__ = <built-in method __dir__ of KeyError object> __doc__ = 'Mapping key not found.' __eq__ = <method-wrapper '__eq__' of KeyError object> __format__ = <built-in method __format__ of KeyError object> __ge__ = <method-wrapper '__ge__' of KeyError object> __getattribute__ = <method-wrapper '__getattribute__' of KeyError object> __gt__ = <method-wrapper '__gt__' of KeyError object> __hash__ = <method-wrapper '__hash__' of KeyError object> __init__ = <method-wrapper '__init__' of KeyError object> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of KeyError object> __lt__ = <method-wrapper '__lt__' of KeyError object> __ne__ = <method-wrapper '__ne__' of KeyError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of KeyError object> __reduce_ex__ = <built-in method __reduce_ex__ of KeyError object> __repr__ = <method-wrapper '__repr__' of KeyError object> __setattr__ = <method-wrapper '__setattr__' of KeyError object> __setstate__ = <built-in method __setstate__ of KeyError object> __sizeof__ = <built-in method __sizeof__ of KeyError object> __str__ = <method-wrapper '__str__' of KeyError object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> args = ('subnet1',) with_traceback = <built-in method with_traceback of KeyError object>
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/vm_regression/test_vm_basic.py", line 141, in test_ping_within_vn_two_vms_two_different_subnets port_ids=[ports['subnet1']['id']]) KeyError: 'subnet1'
| 1.888 |
Log File
|