2025-11-04 17:15:49,450 - DEBUG - [10.0.0.50]: Running cmd : hostname 2025-11-04 17:15:49,650 - DEBUG - Output : cn-jenkins-deploy-platform-ansible-os-4618-1 2025-11-04 17:15:49,651 - DEBUG - [10.0.0.50]: Running cmd : hostname -f 2025-11-04 17:15:49,713 - DEBUG - Output : cn-jenkins-deploy-platform-ansible-os-4618-1. 2025-11-04 17:15:49,714 - DEBUG - [10.0.0.50]: Running cmd : docker ps 2>/dev/null | grep -v "/pause\|/usr/bin/pod\|nova_api_\|contrail.*init\|init.*contrail\|provisioner\|placement" | awk '{print $NF}' 2025-11-04 17:15:49,817 - DEBUG - Output : NAMES contrail_test_dqYdsGaG4 vrouter_vrouter-agent_1 vrouter_nodemgr_1 rsyslogd_rsyslogd_1 analytics_snmp_topology_1 analytics_snmp_nodemgr_1 analytics_snmp_snmp-collector_1 analytics_alarm_nodemgr_1 analytics_alarm_alarm-gen_1 analytics_alarm_kafka_1 analytics_nodemgr_1 analytics_api_1 analytics_collector_1 analytics_database_nodemgr_1 analytics_database_query-engine_1 analytics_database_cassandra_1 control_named_1 control_control_1 control_nodemgr_1 control_dns_1 webui_job_1 webui_web_1 config_devicemgr_1 config_api_1 config_dnsmasq_1 config_nodemgr_1 config_svcmonitor_1 config_schema_1 config_database_nodemgr_1 config_database_rabbitmq_1 config_database_cassandra_1 config_database_zookeeper_1 redis_redis_1 barbican_worker barbican_keystone_listener barbican_api horizon heat_engine heat_api_cfn heat_api neutron_server nova_compute nova_libvirt nova_ssh nova_novncproxy nova_conductor nova_api nova_scheduler glance_api keystone keystone_fernet keystone_ssh rabbitmq memcached mariadb cron kolla_toolbox fluentd 2025-11-04 17:15:49,817 - DEBUG - [10.0.0.50]: Running cmd : getent hosts 10.0.0.50 | head -n 1 | awk '{print $2}' 2025-11-04 17:15:49,873 - DEBUG - Output : cn-jenkins-deploy-platform-ansible-os-4618-1. 2025-11-04 17:15:49,873 - DEBUG - [10.0.0.50]: Running cmd : ip -4 -o addr show | awk '{print $4}' 2025-11-04 17:15:49,937 - DEBUG - Output : 127.0.0.1/8 10.0.0.50/24 172.17.0.1/16 10.20.0.17/24 2025-11-04 17:15:49,938 - DEBUG - [10.0.0.50]: Running cmd : ip -4 -o addr show dev vhost0 | awk '{print $4}' 2025-11-04 17:15:50,001 - DEBUG - Output : 10.20.0.17/24 2025-11-04 17:15:50,001 - DEBUG - [10.0.0.50]: Running cmd : getent hosts 10.20.0.17 | head -n 1 | awk '{print $2}' 2025-11-04 17:15:50,065 - DEBUG - Output : cn-jenkins-deploy-platform-ansible-os-4618-1-test 2025-11-04 17:15:50,953 - DEBUG - Not creating keypair since it exists 2025-11-04 17:15:51,009 - INFO - Domain Default found not creating 2025-11-04 17:15:51,525 - INFO - Project ctest-TestRbac-30200034 not found, creating it 2025-11-04 17:15:51,979 - INFO - Created Project:ctest-TestRbac-30200034, ID : 596cc7f6-3081-4f7a-9d48-523d29e0280e 2025-11-04 17:15:53,632 - DEBUG - [10.0.0.50]: Running cmd : docker exec --privileged -it analytics_api_1 /bin/bash -c 'crudini --get /etc/contrail/contrail-analytics-api.conf DEFAULTS aaa_mode' 2025-11-04 17:15:53,718 - DEBUG - Output : /bin/bash: line 1: crudini: command not found 2025-11-04 17:15:56,233 - INFO - ================================================================================ 2025-11-04 17:15:56,234 - INFO - STARTING TEST : test_perms2_global_share 2025-11-04 17:15:56,234 - INFO - TEST DESCRIPTION : Test perms2 global shared property of an object steps: 1. Add user1 as role1 in project1 and project2 2. Add *.* role1:CRUD to domain acl 3. Create a Shared virtual-network in project1 4. Verify global shared flag is set on VN's perms2 4. Using shared VN try to launch a VM in project2 2025-11-04 17:15:56,359 - DEBUG - Skipping xmpp flap check 2025-11-04 17:15:56,359 - DEBUG - Requesting: http://10.0.0.50:8082/aaa-mode 2025-11-04 17:15:56,753 - DEBUG - Requesting: http://10.0.0.50:8082/aaa-mode 2025-11-04 17:15:56,787 - INFO - Initial checks done. Running the testcase now 2025-11-04 17:15:56,787 - INFO - 2025-11-04 17:15:57,627 - INFO - Project ctest-TestRbac-04978895 not found, creating it 2025-11-04 17:15:58,498 - INFO - Created Project:ctest-TestRbac-04978895, ID : c8da9964-d1ba-4536-b0a6-181f0a7f89fc 2025-11-04 17:15:58,937 - INFO - Project ctest-TestRbac-97419616 not found, creating it 2025-11-04 17:15:59,398 - INFO - Created Project:ctest-TestRbac-97419616, ID : effc73d7-6868-49ed-a697-56006c8d37f5 2025-11-04 17:16:01,486 - DEBUG - Requesting: http://10.0.0.50:8082/api-access-list/6cebb4a8-c88b-45bf-bb38-54dbf85afb21 2025-11-04 17:16:01,871 - DEBUG - Requesting: http://10.0.0.50:8082/api-access-list/6cebb4a8-c88b-45bf-bb38-54dbf85afb21 2025-11-04 17:16:01,947 - DEBUG - API access-list (6cebb4a8-c88b-45bf-bb38-54dbf85afb21) found in api server 2025-11-04 17:16:01,947 - INFO - API access-list 6cebb4a8-c88b-45bf-bb38-54dbf85afb21 verify on api server passed 2025-11-04 17:16:02,618 - INFO - Created VN ctest-TestRbac-04978895-84292898, UUID :2bb099e5-a2c4-48b2-8c3c-8457dfc13ade 2025-11-04 17:16:02,983 - DEBUG - Requesting: http://10.0.0.50:8082/virtual-network/2bb099e5-a2c4-48b2-8c3c-8457dfc13ade 2025-11-04 17:16:03,361 - DEBUG - Requesting: http://10.0.0.50:8082/virtual-network/2bb099e5-a2c4-48b2-8c3c-8457dfc13ade 2025-11-04 17:16:03,405 - INFO - API Server: Read VN 2bb099e5-a2c4-48b2-8c3c-8457dfc13ade 2025-11-04 17:16:03,405 - DEBUG - Requesting: http://10.0.0.50:8082/virtual-network/2bb099e5-a2c4-48b2-8c3c-8457dfc13ade 2025-11-04 17:16:03,763 - DEBUG - Requesting: http://10.0.0.50:8082/virtual-network/2bb099e5-a2c4-48b2-8c3c-8457dfc13ade 2025-11-04 17:16:03,805 - INFO - API Server: Read VN 2bb099e5-a2c4-48b2-8c3c-8457dfc13ade 2025-11-04 17:16:04,649 - WARNING - Unable to get the list of compute nodes 2025-11-04 17:16:04,666 - INFO - Deleting VN ctest-TestRbac-04978895-84292898 2025-11-04 17:16:04,760 - DEBUG - Requesting: http://10.0.0.50:8082/api-access-list/6cebb4a8-c88b-45bf-bb38-54dbf85afb21 2025-11-04 17:16:04,765 - DEBUG - Response Code: 404 2025-11-04 17:16:04,765 - INFO - API access-list (6cebb4a8-c88b-45bf-bb38-54dbf85afb21) got deleted in api server 2025-11-04 17:16:05,704 - INFO - Deleted project: ctest-TestRbac-97419616, ID : effc73d7-6868-49ed-a697-56006c8d37f5 2025-11-04 17:16:06,469 - INFO - Deleted project: ctest-TestRbac-04978895, ID : c8da9964-d1ba-4536-b0a6-181f0a7f89fc 2025-11-04 17:16:06,591 - ERROR - HTTPForbidden Python 3.9.21: /usr/bin/python3 Tue Nov 4 17:16:04 2025 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /contrail-test/tcutils/wrappers.py in wrapper(self=, *args=(), **kwargs={}) 78 log.info('Initial checks done. Running the testcase now') 79 log.info('') 80 result = function(self, *args, **kwargs) 81 if self.inputs.upgrade: 82 pid = os.getpid() result = None function = self = args = () kwargs = {} /contrail-test/serial_scripts/rbac/test_rbac.py in test_perms2_global_share(self=) 60 assert self.get_vn_from_analytics(u1_p2_conn, vn.vn_fq_name) 61 assert vn.vn_fq_name in self.list_vn_from_analytics(u1_p2_conn) 62 vm = self.create_vm(connections=u1_p2_conn, vn_fixture=vn) 63 assert vm, 'VM creation failed on shared VN' 64 vm undefined self = self.create_vm = > connections undefined u1_p2_conn = vn_fixture undefined vn = /contrail-test/serial_scripts/rbac/base.py in create_vm(self=, vn_fixture=, connections=, verify=True) 227 def create_vm(self, vn_fixture, connections=None, verify=True): 228 connections = connections or self.connections 229 vm_fixture = self.create_fixture(VMFixture, connections=connections, 230 vn_obj=vn_fixture.obj, 231 image_name='cirros', vm_fixture undefined self = self.create_fixture = > global VMFixture = connections = vn_obj undefined vn_fixture = vn_fixture.obj = {'network': {'id': '2bb099e5-a2c4-48b2-8c3c-8457...network-ipam']}], 'port_security_enabled': True}} image_name undefined admin_connections undefined self.connections = /contrail-test/serial_scripts/rbac/base.py in create_fixture(self=, fixturecls=, **kwargs={'admin_connections': , 'connections': , 'image_name': 'cirros', 'vn_obj': {'network': {'id': '2bb099e5-a2c4-48b2-8c3c-8457...network-ipam']}], 'port_security_enabled': 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 = self.useFixture = > fixturecls = kwargs = {'admin_connections': , 'connections': , 'image_name': 'cirros', 'vn_obj': {'network': {'id': '2bb099e5-a2c4-48b2-8c3c-8457...network-ipam']}], 'port_security_enabled': True}}} /usr/local/lib/python3.9/site-packages/testtools/testcase.py in useFixture(self=, fixture=) 754 # Gather_details worked, so raise the exception setUp 755 # encountered. 756 reraise(*exc_info) 757 else: 758 self.addCleanup(fixture.cleanUp) global reraise = exc_info = (, HTTPForbidden(), ) /usr/local/lib/python3.9/site-packages/testtools/_compat3x.py in reraise(exc_class=, exc_obj=HTTPForbidden(), exc_tb=, _marker=) 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 = HTTPForbidden() exc_obj.with_traceback = exc_tb = /usr/local/lib/python3.9/site-packages/testtools/testcase.py in useFixture(self=, fixture=) 729 """ 730 try: 731 fixture.setUp() 732 except MultipleExceptions as e: 733 if (fixtures is not None and fixture = fixture.setUp = > /contrail-test/fixtures/vm_test.py in setUp(self=) 191 def setUp(self): 192 super(VMFixture, self).setUp() 193 self.create() 194 195 def create(self): self = self.create = > /contrail-test/fixtures/vm_test.py in create(self=) 231 self.port_ids = port_ids 232 233 objs = self.orch.create_vm( 234 project_uuid=self.project_id, 235 image_name=self.image_name, objs undefined self = self.orch = self.orch.create_vm = > project_uuid undefined self.project_id = 'effc73d7-6868-49ed-a697-56006c8d37f5' image_name undefined self.image_name = 'cirros' flavor undefined self.flavor = 'contrail_flavor_tiny' vm_name undefined self.vm_name = 'ctest-TestRbac-97419616-56653869' vn_objs undefined self.vn_objs = [{'network': {'id': '2bb099e5-a2c4-48b2-8c3c-8457...network-ipam']}], 'port_security_enabled': True}}] node_name undefined self.node_name = None zone undefined self.zone = None sg_ids undefined self.sg_ids = [] count undefined self.count = 1 userdata undefined self.userdata = None port_ids undefined self.port_ids = [] fixed_ips undefined self.fixed_ips = [] /contrail-test/fixtures/openstack.py in create_vm(self=, vm_name='ctest-TestRbac-97419616-56653869', image_name='cirros', vn_objs=[{'network': {'id': '2bb099e5-a2c4-48b2-8c3c-8457...network-ipam']}], 'port_security_enabled': True}}], **kwargs={'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': [], 'project_uuid': 'effc73d7-6868-49ed-a697-56006c8d37f5', 'sg_ids': [], 'userdata': None, 'zone': None}) 116 except Exception as e: 117 vn_ids.append(vn.uuid) #For the case of VcenterVN obnect in vrouter gw case 118 return self.nova_h.create_vm(vm_name=vm_name, image_name=image_name, vn_ids=vn_ids, **kwargs) 119 120 def delete_vm(self, vm_obj, **kwargs): self = self.nova_h = self.nova_h.create_vm = > vm_name = 'ctest-TestRbac-97419616-56653869' image_name = 'cirros' vn_ids = ['2bb099e5-a2c4-48b2-8c3c-8457dfc13ade'] kwargs = {'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': [], 'project_uuid': 'effc73d7-6868-49ed-a697-56006c8d37f5', 'sg_ids': [], 'userdata': None, 'zone': None} /contrail-test/fixtures/nova_test.py in create_vm(self=, project_uuid='effc73d7-6868-49ed-a697-56006c8d37f5', image_name='cirros', vm_name='ctest-TestRbac-97419616-56653869', vn_ids=['2bb099e5-a2c4-48b2-8c3c-8457dfc13ade'], node_name=None, sg_ids=[], count=1, userdata=None, flavor='contrail_flavor_tiny', port_ids=[], fixed_ips=[], zone=None) 580 zone, node_name = self.lb_node_zone(zone) 581 582 image = self.get_image(image_name=image_name) 583 if not flavor: 584 flavor = self.get_default_image_flavor(image_name=image_name) image undefined self = self.get_image = > image_name = 'cirros' /contrail-test/fixtures/nova_test.py in get_image(self=, image_name='cirros') 195 try: 196 lock.acquire() 197 got_image = self.find_image(image_name) 198 if not got_image: 199 self._install_image(image_name=image_name) got_image undefined self = self.find_image = > image_name = 'cirros' /contrail-test/fixtures/nova_test.py in find_image(self=, image_name='cirros') 182 183 def find_image(self, image_name): 184 return self.glance_h.get_image(image_name=image_name) 185 # end find_image 186 self = self.glance_h = self.glance_h.get_image = > image_name = 'cirros' /contrail-test/fixtures/glance_test.py in get_image(self=, image_id=None, image_name='cirros', check_active=True) 56 def get_image(self, image_id=None, image_name=None, check_active=True): 57 if not image_id: 58 for image in self.obj.images.list(): 59 if image.name == image_name: 60 image_id = image.id image undefined self = self.obj = self.obj.images = self.obj.images.list = /usr/local/lib/python3.9/site-packages/glanceclient/common/utils.py in __next__(self=) 579 # For Python 3 compatibility 580 def __next__(self): 581 return self._next() 582 583 def __iter__(self): self = self._next = > /usr/local/lib/python3.9/site-packages/glanceclient/common/utils.py in _next(self=) 568 569 def _next(self): 570 obj, resp = next(self._self_wrapped) 571 self._set_request_ids(resp) 572 return obj obj undefined resp undefined builtinnext = self = self._self_wrapped = /usr/local/lib/python3.9/site-packages/glanceclient/v2/images.py in list(self=, **kwargs={}) 182 url = '%s&marker=%s' % (url, kwargs['marker']) 183 184 for image, resp in paginate(url, page_size, limit): 185 yield image, resp 186 image undefined resp undefined paginate = .paginate> url = '/v2/images?limit=20' page_size = 20 limit = None /usr/local/lib/python3.9/site-packages/glanceclient/v2/images.py in paginate(url='/v2/images?limit=20', page_size=20, limit=None) 109 "limit=%s" % limit) 110 111 resp, body = self.http_client.get(next_url, headers=req_id_hdr) 112 # NOTE(rsjethani): Store curent request id so that it can be 113 # used in subsequent requests. Refer bug #1525259 resp undefined body undefined self = self.http_client = self.http_client.get = > next_url = '/v2/images?limit=20' headers undefined req_id_hdr = {'Content-Type': 'application/octet-stream'} /usr/local/lib/python3.9/site-packages/keystoneauth1/adapter.py in get(self=, url='/v2/images?limit=20', **kwargs={'headers': {'Content-Type': 'application/octet-stream'}}) 384 385 def get(self, url, **kwargs): 386 return self.request(url, 'GET', **kwargs) 387 388 def head(self, url, **kwargs): self = self.request = > url = '/v2/images?limit=20' kwargs = {'headers': {'Content-Type': 'application/octet-stream'}} /usr/local/lib/python3.9/site-packages/glanceclient/common/http.py in request(self=, url='/v2/images?limit=20', method='GET', **kwargs={'raise_exc': False, 'stream': True}) 376 raise exc.CommunicationError(message=message) 377 378 return self._handle_response(resp) 379 380 self = self._handle_response = > resp = /usr/local/lib/python3.9/site-packages/glanceclient/common/http.py in _handle_response(self=, resp=) 124 if not resp.ok: 125 LOG.debug("Request returned failure status %s.", resp.status_code) 126 raise exc.from_response(resp, resp.content) 127 elif (resp.status_code == requests.codes.MULTIPLE_CHOICES and 128 resp.request.path_url != '/versions'): global exc = exc.from_response = resp = resp.content = b'\n \n 403 Forbidden</title...ges action.<br /><br />\n\n\n\n </body>\n</html>' HTTPForbidden: HTTP 403 Forbidden: You are not authorized to complete get_images action. __cause__ = None __class__ = <class 'glanceclient.exc.HTTPForbidden'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of HTTPForbidden object> __dict__ = {'details': '403 Forbidden: You are not authorized to complete get_images action.'} __dir__ = <built-in method __dir__ of HTTPForbidden object> __doc__ = None __eq__ = <method-wrapper '__eq__' of HTTPForbidden object> __format__ = <built-in method __format__ of HTTPForbidden object> __ge__ = <method-wrapper '__ge__' of HTTPForbidden object> __getattribute__ = <method-wrapper '__getattribute__' of HTTPForbidden object> __gt__ = <method-wrapper '__gt__' of HTTPForbidden object> __hash__ = <method-wrapper '__hash__' of HTTPForbidden object> __init__ = <bound method HTTPException.__init__ of HTTPForbidden()> __init_subclass__ = <built-in method __init_subclass__ of type object> __le__ = <method-wrapper '__le__' of HTTPForbidden object> __lt__ = <method-wrapper '__lt__' of HTTPForbidden object> __module__ = 'glanceclient.exc' __ne__ = <method-wrapper '__ne__' of HTTPForbidden object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of HTTPForbidden object> __reduce_ex__ = <built-in method __reduce_ex__ of HTTPForbidden object> __repr__ = <method-wrapper '__repr__' of HTTPForbidden object> __setattr__ = <method-wrapper '__setattr__' of HTTPForbidden object> __setstate__ = <built-in method __setstate__ of HTTPForbidden object> __sizeof__ = <built-in method __sizeof__ of HTTPForbidden object> __str__ = <bound method HTTPException.__str__ of HTTPForbidden()> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> __weakref__ = None args = () code = 403 details = '403 Forbidden: You are not authorized to complete get_images action.' with_traceback = <built-in method with_traceback of HTTPForbidden 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 62, in test_perms2_global_share vm = self.create_vm(connections=u1_p2_conn, vn_fixture=vn) File "/contrail-test/serial_scripts/rbac/base.py", line 229, in create_vm vm_fixture = self.create_fixture(VMFixture, connections=connections, File "/contrail-test/serial_scripts/rbac/base.py", line 354, in create_fixture return self.useFixture(fixturecls(**kwargs)) File "/usr/local/lib/python3.9/site-packages/testtools/testcase.py", line 756, in useFixture reraise(*exc_info) File "/usr/local/lib/python3.9/site-packages/testtools/_compat3x.py", line 16, in reraise raise exc_obj.with_traceback(exc_tb) File "/usr/local/lib/python3.9/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 233, in create objs = self.orch.create_vm( 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 582, in create_vm image = self.get_image(image_name=image_name) File "/contrail-test/fixtures/nova_test.py", line 197, in get_image got_image = self.find_image(image_name) File "/contrail-test/fixtures/nova_test.py", line 184, in find_image return self.glance_h.get_image(image_name=image_name) File "/contrail-test/fixtures/glance_test.py", line 58, in get_image for image in self.obj.images.list(): File "/usr/local/lib/python3.9/site-packages/glanceclient/common/utils.py", line 581, in __next__ return self._next() File "/usr/local/lib/python3.9/site-packages/glanceclient/common/utils.py", line 570, in _next obj, resp = next(self._self_wrapped) File "/usr/local/lib/python3.9/site-packages/glanceclient/v2/images.py", line 184, in list for image, resp in paginate(url, page_size, limit): File "/usr/local/lib/python3.9/site-packages/glanceclient/v2/images.py", line 111, in paginate resp, body = self.http_client.get(next_url, headers=req_id_hdr) File "/usr/local/lib/python3.9/site-packages/keystoneauth1/adapter.py", line 386, in get return self.request(url, 'GET', **kwargs) File "/usr/local/lib/python3.9/site-packages/glanceclient/common/http.py", line 378, in request return self._handle_response(resp) File "/usr/local/lib/python3.9/site-packages/glanceclient/common/http.py", line 126, in _handle_response raise exc.from_response(resp, resp.content) glanceclient.exc.HTTPForbidden: HTTP 403 Forbidden: You are not authorized to complete get_images action. 2025-11-04 17:16:06,592 - DEBUG - Skipping xmpp flap check 2025-11-04 17:16:06,592 - INFO - 2025-11-04 17:16:06,592 - INFO - END TEST : test_perms2_global_share : FAILED[0:00:10] 2025-11-04 17:16:06,592 - INFO - -------------------------------------------------------------------------------- 2025-11-04 17:16:08,008 - INFO - Deleted project: ctest-TestRbac-30200034, ID : 596cc7f6-3081-4f7a-9d48-523d29e0280e 2025-11-04 17:16:10,385 - DEBUG - [10.0.0.50]: Running cmd : docker exec --privileged -it analytics_api_1 /bin/bash -c 'crudini --get /etc/contrail/contrail-analytics-api.conf DEFAULTS aaa_mode' 2025-11-04 17:16:10,471 - DEBUG - Output : /bin/bash: line 1: crudini: command not found 2025-11-04 17:16:12,870 - DEBUG - Requesting: http://10.0.0.50:8082/aaa-mode 2025-11-04 17:16:22,486 - DEBUG - Requesting: http://10.0.0.50:8082/aaa-mode 2025-11-04 17:16:34,144 - DEBUG - [10.0.0.50]: Running cmd : docker ps -f status=running --format {{.Names}} 2>/dev/null 2025-11-04 17:16:34,240 - DEBUG - Output : contrail_test_dqYdsGaG4 vrouter_vrouter-agent_1 vrouter_provisioner_1 vrouter_nodemgr_1 rsyslogd_rsyslogd_1 analytics_snmp_topology_1 analytics_snmp_nodemgr_1 analytics_snmp_provisioner_1 analytics_snmp_snmp-collector_1 analytics_alarm_nodemgr_1 analytics_alarm_alarm-gen_1 analytics_alarm_provisioner_1 analytics_alarm_kafka_1 analytics_nodemgr_1 analytics_provisioner_1 analytics_api_1 analytics_collector_1 analytics_database_nodemgr_1 analytics_database_query-engine_1 analytics_database_provisioner_1 analytics_database_cassandra_1 control_named_1 control_control_1 control_nodemgr_1 control_provisioner_1 control_dns_1 webui_job_1 webui_web_1 config_devicemgr_1 config_api_1 config_dnsmasq_1 config_nodemgr_1 config_svcmonitor_1 config_provisioner_1 config_schema_1 config_database_nodemgr_1 config_database_provisioner_1 config_database_rabbitmq_1 config_database_cassandra_1 config_database_zookeeper_1 redis_redis_1 barbican_worker barbican_keystone_listener barbican_api horizon heat_engine heat_api_cfn heat_api neutron_server nova_compute nova_libvirt nova_ssh nova_novncproxy nova_conductor nova_api nova_scheduler placement_api glance_api keystone keystone_fernet keystone_ssh rabbitmq memcached mariadb cron kolla_toolbox fluentd