| 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: Forbidden
Python 3.9.21: /usr/bin/python3
Wed Nov 12 18:17:13 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=0x7f557978b400>, *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=0x7f557978b400>
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=0x7f557978b400>)
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 = <serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7f557978b400>
self.create_vm = <bound method BaseRbac.create_vm of <serial_scri...lobal_share[ci_sanity,sanity] id=0x7f557978b400>>
connections undefined
u1_p2_conn = <common.connections.ContrailConnections object>
vn_fixture undefined
vn = <vn_test.VNFixture object>
/contrail-test/serial_scripts/rbac/base.py in create_vm(self=<serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7f557978b400>, vn_fixture=<vn_test.VNFixture object>, connections=<common.connections.ContrailConnections object>, 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 = <serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7f557978b400>
self.create_fixture = <bound method BaseRbac.create_fixture of <serial...lobal_share[ci_sanity,sanity] id=0x7f557978b400>>
global VMFixture = <class 'vm_test.VMFixture'>
connections = <common.connections.ContrailConnections object>
vn_obj undefined
vn_fixture = <vn_test.VNFixture object>
vn_fixture.obj = {'network': {'id': '5e27bd18-5da9-45db-b53c-5486...network-ipam']}], 'port_security_enabled': True}}
image_name undefined
admin_connections undefined
self.connections = <common.connections.ContrailConnections object>
/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=0x7f557978b400>, fixturecls=<class 'vm_test.VMFixture'>, **kwargs={'admin_connections': <common.connections.ContrailConnections object>, 'connections': <common.connections.ContrailConnections object>, 'image_name': 'cirros', 'vn_obj': {'network': {'id': '5e27bd18-5da9-45db-b53c-5486...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 = <serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7f557978b400>
self.useFixture = <bound method TestCase.useFixture of <serial_scr...lobal_share[ci_sanity,sanity] id=0x7f557978b400>>
fixturecls = <class 'vm_test.VMFixture'>
kwargs = {'admin_connections': <common.connections.ContrailConnections object>, 'connections': <common.connections.ContrailConnections object>, 'image_name': 'cirros', 'vn_obj': {'network': {'id': '5e27bd18-5da9-45db-b53c-5486...network-ipam']}], 'port_security_enabled': True}}}
/usr/local/lib/python3.9/site-packages/testtools/testcase.py in useFixture(self=<serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7f557978b400>, fixture=<VMFixture: ctest-TestRbac-70679904-38978286>)
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.Forbidden'>, Forbidden(), <traceback object>)
/usr/local/lib/python3.9/site-packages/testtools/_compat3x.py in reraise(exc_class=<class 'novaclient.exceptions.Forbidden'>, exc_obj=Forbidden(), 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 = Forbidden()
exc_obj.with_traceback = <built-in method with_traceback of Forbidden object>
exc_tb = <traceback object>
/usr/local/lib/python3.9/site-packages/testtools/testcase.py in useFixture(self=<serial_scripts.rbac.test_rbac.TestRbac.test_per...global_share[ci_sanity,sanity] id=0x7f557978b400>, fixture=<VMFixture: ctest-TestRbac-70679904-38978286>)
729 """
730 try:
731 fixture.setUp()
732 except MultipleExceptions as e:
733 if (fixtures is not None and
fixture = <VMFixture: ctest-TestRbac-70679904-38978286>
fixture.setUp = <bound method VMFixture.setUp of <VMFixture: ctest-TestRbac-70679904-38978286>>
/contrail-test/fixtures/vm_test.py in setUp(self=<VMFixture: ctest-TestRbac-70679904-38978286>)
191 def setUp(self):
192 super(VMFixture, self).setUp()
193 self.create()
194
195 def create(self):
self = <VMFixture: ctest-TestRbac-70679904-38978286>
self.create = <bound method VMFixture.create of <VMFixture: ctest-TestRbac-70679904-38978286>>
/contrail-test/fixtures/vm_test.py in create(self=<VMFixture: ctest-TestRbac-70679904-38978286>)
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 = <VMFixture: ctest-TestRbac-70679904-38978286>
self.orch = <openstack.OpenstackOrchestrator object>
self.orch.create_vm = <bound method OpenstackOrchestrator.create_vm of <openstack.OpenstackOrchestrator object>>
project_uuid undefined
self.project_id = 'f582a0e9-bd0c-4ae6-9f05-c9500d1ac0a5'
image_name undefined
self.image_name = 'cirros'
flavor undefined
self.flavor = 'contrail_flavor_tiny'
vm_name undefined
self.vm_name = 'ctest-TestRbac-70679904-38978286'
vn_objs undefined
self.vn_objs = [{'network': {'id': '5e27bd18-5da9-45db-b53c-5486...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=<openstack.OpenstackOrchestrator object>, vm_name='ctest-TestRbac-70679904-38978286', image_name='cirros', vn_objs=[{'network': {'id': '5e27bd18-5da9-45db-b53c-5486...network-ipam']}], 'port_security_enabled': True}}], **kwargs={'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': [], 'project_uuid': 'f582a0e9-bd0c-4ae6-9f05-c9500d1ac0a5', '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-TestRbac-70679904-38978286'
image_name = 'cirros'
vn_ids = ['5e27bd18-5da9-45db-b53c-548603fc29aa']
kwargs = {'count': 1, 'fixed_ips': [], 'flavor': 'contrail_flavor_tiny', 'node_name': None, 'port_ids': [], 'project_uuid': 'f582a0e9-bd0c-4ae6-9f05-c9500d1ac0a5', 'sg_ids': [], 'userdata': None, 'zone': None}
/contrail-test/fixtures/nova_test.py in create_vm(self=<nova_test.NovaHelper object>, project_uuid='f582a0e9-bd0c-4ae6-9f05-c9500d1ac0a5', image_name='cirros', vm_name='ctest-TestRbac-70679904-38978286', vn_ids=['5e27bd18-5da9-45db-b53c-548603fc29aa'], node_name=None, sg_ids=[], count=1, userdata=None, flavor=<Flavor: contrail_flavor_tiny>, port_ids=[], fixed_ips=[], zone=None)
604
605 zone = zone + ":" + node_name if node_name else zone
606 self.obj.servers.create(name=vm_name, image=image,
607 security_groups=sg_ids,
608 flavor=flavor, nics=nics_list,
self = <nova_test.NovaHelper object>
self.obj = <novaclient.v2.client.Client object>
self.obj.servers = <novaclient.v2.servers.ServerManager object>
self.obj.servers.create = <bound method ServerManager.create of <novaclient.v2.servers.ServerManager object>>
name undefined
vm_name = 'ctest-TestRbac-70679904-38978286'
image = <RequestIdProxy at 0x7f557845cfc0 for image>
security_groups undefined
sg_ids = []
flavor = <Flavor: contrail_flavor_tiny>
nics undefined
nics_list = [{'net-id': '5e27bd18-5da9-45db-b53c-548603fc29aa'}]
config_drive = False
key_name undefined
self.key = 'ctest_ctest-TestRbac-70679904ctest-TestRbac-52355524key1'
availability_zone undefined
zone = None
min_count undefined
count = 1
max_count undefined
userdata = None
/usr/local/lib/python3.9/site-packages/novaclient/v2/servers.py in create(self=<novaclient.v2.servers.ServerManager object>, name='ctest-TestRbac-70679904-38978286', image=<RequestIdProxy at 0x7f557845cfc0 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-TestRbac-70679904ctest-TestRbac-52355524key1', availability_zone=None, block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': '5e27bd18-5da9-45db-b53c-548603fc29aa'}], 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-TestRbac-70679904-38978286', <RequestIdProxy at 0x7f557845cfc0 for image>, <Flavor: contrail_flavor_tiny>]
boot_kwargs = {'access_ip_v4': None, 'access_ip_v6': None, 'admin_pass': None, 'availability_zone': None, 'config_drive': False, 'disk_config': None, 'files': None, 'host': None, 'hypervisor_hostname': None, 'key_name': 'ctest_ctest-TestRbac-70679904ctest-TestRbac-52355524key1', ...}
/usr/local/lib/python3.9/site-packages/novaclient/v2/servers.py in _boot(self=<novaclient.v2.servers.ServerManager object>, response_key='server', name='ctest-TestRbac-70679904-38978286', image=<RequestIdProxy at 0x7f557845cfc0 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-TestRbac-70679904ctest-TestRbac-52355524key1', availability_zone=None, block_device_mapping=None, block_device_mapping_v2=None, nics=[{'net-id': '5e27bd18-5da9-45db-b53c-548603fc29aa'}], 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={})
843 body['server']['hypervisor_hostname'] = hypervisor_hostname
844
845 return self._create('/servers', body, response_key,
846 return_raw=return_raw, **kwargs)
847
self = <novaclient.v2.servers.ServerManager object>
self._create = <bound method Manager._create of <novaclient.v2.servers.ServerManager object>>
body = {'server': {'flavorRef': '66af0a16-388d-4833-92f4-540600f0c8d3', 'imageRef': '5db73bbe-7a3b-4baf-bdc9-03cecb624c98', 'key_name': 'ctest_ctest-TestRbac-70679904ctest-TestRbac-52355524key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRbac-70679904-38978286', 'networks': [{'uuid': '5e27bd18-5da9-45db-b53c-548603fc29aa'}]}}
response_key = 'server'
return_raw = False
kwargs = {}
/usr/local/lib/python3.9/site-packages/novaclient/base.py in _create(self=<novaclient.v2.servers.ServerManager object>, url='/servers', body={'server': {'flavorRef': '66af0a16-388d-4833-92f4-540600f0c8d3', 'imageRef': '5db73bbe-7a3b-4baf-bdc9-03cecb624c98', 'key_name': 'ctest_ctest-TestRbac-70679904ctest-TestRbac-52355524key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRbac-70679904-38978286', 'networks': [{'uuid': '5e27bd18-5da9-45db-b53c-548603fc29aa'}]}}, 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': {'flavorRef': '66af0a16-388d-4833-92f4-540600f0c8d3', 'imageRef': '5db73bbe-7a3b-4baf-bdc9-03cecb624c98', 'key_name': 'ctest_ctest-TestRbac-70679904ctest-TestRbac-52355524key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRbac-70679904-38978286', 'networks': [{'uuid': '5e27bd18-5da9-45db-b53c-548603fc29aa'}]}}
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.9/site-packages/keystoneauth1/adapter.py in post(self=<novaclient.client.SessionClient object>, url='/servers', **kwargs={'body': {'server': {'flavorRef': '66af0a16-388d-4833-92f4-540600f0c8d3', 'imageRef': '5db73bbe-7a3b-4baf-bdc9-03cecb624c98', 'key_name': 'ctest_ctest-TestRbac-70679904ctest-TestRbac-52355524key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRbac-70679904-38978286', 'networks': [{'uuid': '5e27bd18-5da9-45db-b53c-548603fc29aa'}]}}})
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': {'flavorRef': '66af0a16-388d-4833-92f4-540600f0c8d3', 'imageRef': '5db73bbe-7a3b-4baf-bdc9-03cecb624c98', 'key_name': 'ctest_ctest-TestRbac-70679904ctest-TestRbac-52355524key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRbac-70679904-38978286', 'networks': [{'uuid': '5e27bd18-5da9-45db-b53c-548603fc29aa'}]}}}
/usr/local/lib/python3.9/site-packages/novaclient/client.py in request(self=<novaclient.client.SessionClient object>, url='/servers', method='POST', **kwargs={'body': {'server': {'flavorRef': '66af0a16-388d-4833-92f4-540600f0c8d3', 'imageRef': '5db73bbe-7a3b-4baf-bdc9-03cecb624c98', 'key_name': 'ctest_ctest-TestRbac-70679904ctest-TestRbac-52355524key1', 'max_count': 1, 'min_count': 1, 'name': 'ctest-TestRbac-70679904-38978286', 'networks': [{'uuid': '5e27bd18-5da9-45db-b53c-548603fc29aa'}]}}, 'headers': {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'python-novaclient', 'X-Auth-Token': 'gAAAAABpFM8kp4ClLwTeSNPWhVq2g0fMsR-T5bJJHQ4GeNte...fj0ks46JVFC2Q5GAxXrNOjY_9q4pkvr_CFXx9duTzzSNnmUts'}})
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.9/site-packages/novaclient/exceptions.py'>
exceptions.from_response = <function from_response>
resp = <Response [403]>
body = {'forbidden': {'code': 403, 'message': "Policy doesn't allow os_compute_api:servers:create to be performed."}}
url = '/servers'
method = 'POST'
Forbidden: Policy doesn't allow os_compute_api:servers:create to be performed. (HTTP 403) (Request-ID: req-4a668506-ee29-4620-991d-67a5100969a7)
__cause__ = None
__class__ = <class 'novaclient.exceptions.Forbidden'>
__context__ = None
__delattr__ = <method-wrapper '__delattr__' of Forbidden object>
__dict__ = {'code': 403, 'details': None, 'message': "Policy doesn't allow os_compute_api:servers:create to be performed.", 'method': 'POST', 'request_id': 'req-4a668506-ee29-4620-991d-67a5100969a7', 'url': '/servers'}
__dir__ = <built-in method __dir__ of Forbidden object>
__doc__ = "\n HTTP 403 - Forbidden: your credentials don't give you access to this\n resource.\n "
__eq__ = <method-wrapper '__eq__' of Forbidden object>
__format__ = <built-in method __format__ of Forbidden object>
__ge__ = <method-wrapper '__ge__' of Forbidden object>
__getattribute__ = <method-wrapper '__getattribute__' of Forbidden object>
__gt__ = <method-wrapper '__gt__' of Forbidden object>
__hash__ = <method-wrapper '__hash__' of Forbidden object>
__init__ = <bound method ClientException.__init__ of Forbidden()>
__init_subclass__ = <built-in method __init_subclass__ of type object>
__le__ = <method-wrapper '__le__' of Forbidden object>
__lt__ = <method-wrapper '__lt__' of Forbidden object>
__module__ = 'novaclient.exceptions'
__ne__ = <method-wrapper '__ne__' of Forbidden object>
__new__ = <built-in method __new__ of type object>
__reduce__ = <built-in method __reduce__ of Forbidden object>
__reduce_ex__ = <built-in method __reduce_ex__ of Forbidden object>
__repr__ = <method-wrapper '__repr__' of Forbidden object>
__setattr__ = <method-wrapper '__setattr__' of Forbidden object>
__setstate__ = <built-in method __setstate__ of Forbidden object>
__sizeof__ = <built-in method __sizeof__ of Forbidden object>
__str__ = <bound method ClientException.__str__ of Forbidden()>
__subclasshook__ = <built-in method __subclasshook__ of type object>
__suppress_context__ = False
__traceback__ = <traceback object>
__weakref__ = None
args = ()
code = 403
details = None
http_status = 403
message = "Policy doesn't allow os_compute_api:servers:create to be performed."
method = 'POST'
request_id = 'req-4a668506-ee29-4620-991d-67a5100969a7'
url = '/servers'
with_traceback = <built-in method with_traceback of Forbidden 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 606, in create_vm
self.obj.servers.create(name=vm_name, image=image,
File "/usr/local/lib/python3.9/site-packages/novaclient/v2/servers.py", line 1481, in create
return self._boot(response_key, *boot_args, **boot_kwargs)
File "/usr/local/lib/python3.9/site-packages/novaclient/v2/servers.py", line 845, in _boot
return self._create('/servers', body, response_key,
File "/usr/local/lib/python3.9/site-packages/novaclient/base.py", line 364, in _create
resp, body = self.api.client.post(url, body=body)
File "/usr/local/lib/python3.9/site-packages/keystoneauth1/adapter.py", line 392, in post
return self.request(url, 'POST', **kwargs)
File "/usr/local/lib/python3.9/site-packages/novaclient/client.py", line 78, in request
raise exceptions.from_response(resp, body, url, method)
novaclient.exceptions.Forbidden: Policy doesn't allow os_compute_api:servers:create to be performed. (HTTP 403) (Request-ID: req-4a668506-ee29-4620-991d-67a5100969a7)
| 11.353 |
Log File
|