Acceptance tests using different clients concurrently. Environment deployed from packages.

Build: #3283 failed

Job: Spaces basic was successful

Build log

The build generated 7,531 lines of output.   The output is too long and has been truncated to the last 1,000 lines. Download or view full build log.

19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 client = <tests.gui.utils.oneservices.cdmi.CDMIClient object at 0x7fdc0adeb6b0>
19-Nov-2024 20:43:38 user = 'user1'
19-Nov-2024 20:43:38 users = {'admin': <tests.utils.user_utils.AdminUser object at 0x7fdc0adbd670>, 'admin2': <tests.utils.user_utils.User object a...s.user_utils.AdminUser object at 0x7fdc0addaba0>, 'user1': <tests.utils.user_utils.User object at 0x7fdc0add8cb0>, ...}
19-Nov-2024 20:43:38 hosts = {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186ced84fbaac85fa5e57dae59c02cf76584b10e92', 'ip': '10.244.35....8e6ae2d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}
19-Nov-2024 20:43:38 host = 'oneprovider-1'
19-Nov-2024 20:43:38 dir_id = '000000000084B2037368617265477569642373706163655F313564663438326438633038326539363063386431336163333530336633366363683...3864313361633335303366333663636838343462236431376435633034663633646536646666663636396564383863343331653637636831376130'
19-Nov-2024 20:43:38 cdmi = <class 'tests.gui.utils.oneservices.cdmi.CDMIClient'>
19-Nov-2024 20:43:38 err_msg = 'Moved share root dir, but moving should have failed'
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def try_to_move_special_dir_by_id(
19-Nov-2024 20:43:38         client, user, users, hosts, host, dir_id, cdmi, err_msg=None
19-Nov-2024 20:43:38     ):
19-Nov-2024 20:43:38         if client.lower() == "rest":
19-Nov-2024 20:43:38             try:
19-Nov-2024 20:43:38                 client = cdmi(hosts[host]["ip"], users[user].token)
19-Nov-2024 20:43:38                 client.move_item_by_id(dir_id, "/new_name")
19-Nov-2024 20:43:38                 raise AssertionError(err_msg)
19-Nov-2024 20:43:38             except (HTTPForbidden, HTTPBadRequest) as e:
19-Nov-2024 20:43:38                 ex_err_msg = "Operation failed with POSIX error: eperm."
19-Nov-2024 20:43:38 >               assert ex_err_msg in str(e), f"Unexpected error occurred {e}"
19-Nov-2024 20:43:38 E               AssertionError: Unexpected error occurred [400] Bad Request: {"error":{"id":"posix","details":{"errno":"enoent"},"description":"Operation failed with POSIX error: enoent."}}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:187: AssertionError
19-Nov-2024 20:43:38 ___ test_user_fails_to_move_the_share_root_directory[1oz_1op_1oc-oneclient1] ___
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 fixturefunc = <function try_to_move_special_dir at 0x7fdc0b10a520>
19-Nov-2024 20:43:38 request = <FixtureRequest for <Function test_user_fails_to_move_the_share_root_directory[1oz_1op_1oc-oneclient1]>>
19-Nov-2024 20:43:38 kwargs = {'cdmi': <class 'tests.gui.utils.oneservices.cdmi.CDMIClient'>, 'client': 'oneclient1', 'host': 'oneprovider-1', 'host...d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}, ...}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def call_fixture_func(
19-Nov-2024 20:43:38         fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs
19-Nov-2024 20:43:38     ) -> FixtureValue:
19-Nov-2024 20:43:38         if is_generator(fixturefunc):
19-Nov-2024 20:43:38             fixturefunc = cast(
19-Nov-2024 20:43:38                 Callable[..., Generator[FixtureValue, None, None]], fixturefunc
19-Nov-2024 20:43:38             )
19-Nov-2024 20:43:38             generator = fixturefunc(**kwargs)
19-Nov-2024 20:43:38             try:
19-Nov-2024 20:43:38                 fixture_result = next(generator)
19-Nov-2024 20:43:38             except StopIteration:
19-Nov-2024 20:43:38                 raise ValueError(f"{request.fixturename} did not yield a value") from None
19-Nov-2024 20:43:38             finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator)
19-Nov-2024 20:43:38             request.addfinalizer(finalizer)
19-Nov-2024 20:43:38         else:
19-Nov-2024 20:43:38             fixturefunc = cast(Callable[..., FixtureValue], fixturefunc)
19-Nov-2024 20:43:38 >           fixture_result = fixturefunc(**kwargs)
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 /usr/local/lib/python3.12/dist-packages/_pytest/fixtures.py:913:
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38 tests/utils/bdd_utils.py:78: in wrapper
19-Nov-2024 20:43:38     return fun(*ba.args, **ba.kwargs)
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:165: in try_to_move_special_dir
19-Nov-2024 20:43:38     try_to_move_special_dir_by_id(
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:191: in try_to_move_special_dir_by_id
19-Nov-2024 20:43:38     move_dir_by_id(user, oneclient_host, users, dir_id, "new_name")
19-Nov-2024 20:43:38 tests/oneclient/steps/multi_dir_steps.py:180: in move_dir_by_id
19-Nov-2024 20:43:38     client.mv(
19-Nov-2024 20:43:38 tests/utils/client_utils.py:107: in mv
19-Nov-2024 20:43:38     self.rpyc_connection.modules.shutil.move(src, dest)
19-Nov-2024 20:43:38 /usr/local/lib/python3.12/dist-packages/rpyc/core/netref.py:240: in __call__
19-Nov-2024 20:43:38     return syncreq(_self, consts.HANDLE_CALL, args, kwargs)
19-Nov-2024 20:43:38 /usr/local/lib/python3.12/dist-packages/rpyc/core/netref.py:63: in syncreq
19-Nov-2024 20:43:38     return conn.sync_request(handler, proxy, *args)
19-Nov-2024 20:43:38 /usr/local/lib/python3.12/dist-packages/rpyc/core/protocol.py:718: in sync_request
19-Nov-2024 20:43:38     return _async_res.value
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 self = <AsyncResult object (ready) at 0x7fdc0a6dbf10>
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     @property
19-Nov-2024 20:43:38     def value(self):
19-Nov-2024 20:43:38         """Returns the result of the operation. If the result has not yet
19-Nov-2024 20:43:38         arrived, accessing this property will wait for it. If the result does
19-Nov-2024 20:43:38         not arrive before the expiry time elapses, :class:`AsyncResultTimeout`
19-Nov-2024 20:43:38         is raised. If the returned result is an exception, it will be raised
19-Nov-2024 20:43:38         here. Otherwise, the result is returned directly.
19-Nov-2024 20:43:38         """
19-Nov-2024 20:43:38         self.wait()
19-Nov-2024 20:43:38         if self._is_exc:
19-Nov-2024 20:43:38 >           raise self._obj
19-Nov-2024 20:43:38 E           _get_exception_class.<locals>.Derived: [Errno 36] File name too long: '/tmp/onedata/mnt/new_name/.__onedata__file_id__00000000008468567368617265477569642373706163655F6633633034333238326362616538356637306162336431616565663661623938636865653561236633633034333238326362616538356637306162336431616565663661623938636865653561236539336163333132366435646165386239383662373961653330386537353734636864616661' -> None
19-Nov-2024 20:43:38 E           
19-Nov-2024 20:43:38 E           ========= Remote Traceback (1) =========
19-Nov-2024 20:43:38 E           Traceback (most recent call last):
19-Nov-2024 20:43:38 E             File "/usr/lib/python3.8/shutil.py", line 791, in move
19-Nov-2024 20:43:38 E               os.rename(src, real_dst)
19-Nov-2024 20:43:38 E           OSError: [Errno 18] Invalid cross-device link: '/tmp/onedata/mnt/220qzkluzubo3mj3/.__onedata__file_id__00000000008468567368617265477569642373706163655F6633633034333238326362616538356637306162336431616565663661623938636865653561236633633034333238326362616538356637306162336431616565663661623938636865653561236539336163333132366435646165386239383662373961653330386537353734636864616661' -> '/tmp/onedata/mnt/new_name/.__onedata__file_id__00000000008468567368617265477569642373706163655F6633633034333238326362616538356637306162336431616565663661623938636865653561236633633034333238326362616538356637306162336431616565663661623938636865653561236539336163333132366435646165386239383662373961653330386537353734636864616661'
19-Nov-2024 20:43:38 E           
19-Nov-2024 20:43:38 E           During handling of the above exception, another exception occurred:
19-Nov-2024 20:43:38 E           
19-Nov-2024 20:43:38 E           Traceback (most recent call last):
19-Nov-2024 20:43:38 E             File "/usr/local/lib/python3.8/dist-packages/rpyc/core/protocol.py", line 324, in _dispatch_request
19-Nov-2024 20:43:38 E               res = self._HANDLERS[handler](self, *args)
19-Nov-2024 20:43:38 E             File "/usr/local/lib/python3.8/dist-packages/rpyc/core/protocol.py", line 592, in _handle_call
19-Nov-2024 20:43:38 E               return obj(*args, **dict(kwargs))
19-Nov-2024 20:43:38 E             File "/usr/lib/python3.8/shutil.py", line 807, in move
19-Nov-2024 20:43:38 E               copytree(src, real_dst, copy_function=copy_function,
19-Nov-2024 20:43:38 E             File "/usr/lib/python3.8/shutil.py", line 557, in copytree
19-Nov-2024 20:43:38 E               return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
19-Nov-2024 20:43:38 E             File "/usr/lib/python3.8/shutil.py", line 458, in _copytree
19-Nov-2024 20:43:38 E               os.makedirs(dst, exist_ok=dirs_exist_ok)
19-Nov-2024 20:43:38 E             File "/usr/lib/python3.8/os.py", line 223, in makedirs
19-Nov-2024 20:43:38 E               mkdir(name, mode)
19-Nov-2024 20:43:38 E           OSError: [Errno 36] File name too long: '/tmp/onedata/mnt/new_name/.__onedata__file_id__00000000008468567368617265477569642373706163655F6633633034333238326362616538356637306162336431616565663661623938636865653561236633633034333238326362616538356637306162336431616565663661623938636865653561236539336163333132366435646165386239383662373961653330386537353734636864616661'
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 /usr/local/lib/python3.12/dist-packages/rpyc/core/async_.py:108: OSError
19-Nov-2024 20:43:38 _ test_user_fails_to_create_file_in_the_share_root_directory[1oz_1op_1oc-REST] _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 client = 'REST'
19-Nov-2024 20:43:38 users = {'admin': <tests.utils.user_utils.AdminUser object at 0x7fdc0ad3d250>, 'admin2': <tests.utils.user_utils.User object a...s.user_utils.AdminUser object at 0x7fdc0aeaf080>, 'user1': <tests.utils.user_utils.User object at 0x7fdc0aeaff80>, ...}
19-Nov-2024 20:43:38 user = 'user1'
19-Nov-2024 20:43:38 hosts = {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186ced84fbaac85fa5e57dae59c02cf76584b10e92', 'ip': '10.244.35....8e6ae2d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}
19-Nov-2024 20:43:38 host = 'oneprovider-1'
19-Nov-2024 20:43:38 dir_id = '000000000084B2CC7368617265477569642373706163655F633232646439313366366134333565363431343833653366633031643335626163683...3438336533666330316433356261636831316366233665353434613233616166313932623362623835666364366361313339333732636838616332'
19-Nov-2024 20:43:38 file_name = 'some_name.txt'
19-Nov-2024 20:43:38 err_msg = 'File created in share root dir, but creation should have failed'
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def try_to_create_file_in_special_dir_by_id(
19-Nov-2024 20:43:38         client, users, user, hosts, host, dir_id, file_name, err_msg=""
19-Nov-2024 20:43:38     ):
19-Nov-2024 20:43:38         if client.lower() == "rest":
19-Nov-2024 20:43:38             try:
19-Nov-2024 20:43:38 >               create_empty_file_in_dir_rest(users, user, hosts, host, dir_id, file_name)
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:243:
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38 tests/mixed/steps/rest/oneprovider/data.py:438: in create_empty_file_in_dir_rest
19-Nov-2024 20:43:38     upload_file_rest(users, user, hosts, host, "", name, dir_id)
19-Nov-2024 20:43:38 tests/mixed/steps/rest/oneprovider/data.py:398: in upload_file_rest
19-Nov-2024 20:43:38     _ = http_post(
19-Nov-2024 20:43:38 tests/utils/rest_utils.py:59: in http_post
19-Nov-2024 20:43:38     return http_request(requests.post, ip, port, path, use_ssl, headers,
19-Nov-2024 20:43:38 tests/utils/rest_utils.py:89: in http_request
19-Nov-2024 20:43:38     raise_http_exception(response)
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 response = <Response [400]>
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def raise_http_exception(response):
19-Nov-2024 20:43:38         ex_cls = _exceptions.get(response.status_code, HTTPError)
19-Nov-2024 20:43:38 >       raise ex_cls(response)
19-Nov-2024 20:43:38 E       tests.utils.http_exceptions.HTTPBadRequest: [400] Bad Request: {"error":{"id":"notSupported","description":"This operation is not supported."}}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/utils/http_exceptions.py:15: HTTPBadRequest
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 During handling of the above exception, another exception occurred:
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 fixturefunc = <function try_to_create_file_in_special_dir at 0x7fdc0b10af20>
19-Nov-2024 20:43:38 request = <FixtureRequest for <Function test_user_fails_to_create_file_in_the_share_root_directory[1oz_1op_1oc-REST]>>
19-Nov-2024 20:43:38 kwargs = {'client': 'REST', 'file_name': 'some_name.txt', 'host': 'oneprovider-1', 'hosts': {'oneclient-1': {'container-id': '1...d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}, ...}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def call_fixture_func(
19-Nov-2024 20:43:38         fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs
19-Nov-2024 20:43:38     ) -> FixtureValue:
19-Nov-2024 20:43:38         if is_generator(fixturefunc):
19-Nov-2024 20:43:38             fixturefunc = cast(
19-Nov-2024 20:43:38                 Callable[..., Generator[FixtureValue, None, None]], fixturefunc
19-Nov-2024 20:43:38             )
19-Nov-2024 20:43:38             generator = fixturefunc(**kwargs)
19-Nov-2024 20:43:38             try:
19-Nov-2024 20:43:38                 fixture_result = next(generator)
19-Nov-2024 20:43:38             except StopIteration:
19-Nov-2024 20:43:38                 raise ValueError(f"{request.fixturename} did not yield a value") from None
19-Nov-2024 20:43:38             finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator)
19-Nov-2024 20:43:38             request.addfinalizer(finalizer)
19-Nov-2024 20:43:38         else:
19-Nov-2024 20:43:38             fixturefunc = cast(Callable[..., FixtureValue], fixturefunc)
19-Nov-2024 20:43:38 >           fixture_result = fixturefunc(**kwargs)
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 /usr/local/lib/python3.12/dist-packages/_pytest/fixtures.py:913:
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38 tests/utils/bdd_utils.py:78: in wrapper
19-Nov-2024 20:43:38     return fun(*ba.args, **ba.kwargs)
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:226: in try_to_create_file_in_special_dir
19-Nov-2024 20:43:38     try_to_create_file_in_special_dir_by_id(
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 client = 'REST'
19-Nov-2024 20:43:38 users = {'admin': <tests.utils.user_utils.AdminUser object at 0x7fdc0ad3d250>, 'admin2': <tests.utils.user_utils.User object a...s.user_utils.AdminUser object at 0x7fdc0aeaf080>, 'user1': <tests.utils.user_utils.User object at 0x7fdc0aeaff80>, ...}
19-Nov-2024 20:43:38 user = 'user1'
19-Nov-2024 20:43:38 hosts = {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186ced84fbaac85fa5e57dae59c02cf76584b10e92', 'ip': '10.244.35....8e6ae2d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}
19-Nov-2024 20:43:38 host = 'oneprovider-1'
19-Nov-2024 20:43:38 dir_id = '000000000084B2CC7368617265477569642373706163655F633232646439313366366134333565363431343833653366633031643335626163683...3438336533666330316433356261636831316366233665353434613233616166313932623362623835666364366361313339333732636838616332'
19-Nov-2024 20:43:38 file_name = 'some_name.txt'
19-Nov-2024 20:43:38 err_msg = 'File created in share root dir, but creation should have failed'
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def try_to_create_file_in_special_dir_by_id(
19-Nov-2024 20:43:38         client, users, user, hosts, host, dir_id, file_name, err_msg=""
19-Nov-2024 20:43:38     ):
19-Nov-2024 20:43:38         if client.lower() == "rest":
19-Nov-2024 20:43:38             try:
19-Nov-2024 20:43:38                 create_empty_file_in_dir_rest(users, user, hosts, host, dir_id, file_name)
19-Nov-2024 20:43:38                 raise AssertionError(err_msg)
19-Nov-2024 20:43:38             except (ApiException, HTTPBadRequest) as e:
19-Nov-2024 20:43:38                 ex_err_msg = "Operation failed with POSIX error: eperm."
19-Nov-2024 20:43:38 >               assert ex_err_msg in str(e), f"Unexpected error occurred {e}"
19-Nov-2024 20:43:38 E               AssertionError: Unexpected error occurred [400] Bad Request: {"error":{"id":"notSupported","description":"This operation is not supported."}}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:247: AssertionError
19-Nov-2024 20:43:38 _ test_user_fails_to_add_qos_requirement_to_the_share_root_directory[1oz_1op_1oc] _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 user = 'user1'
19-Nov-2024 20:43:38 users = {'admin': <tests.utils.user_utils.AdminUser object at 0x7fdc0aadaab0>, 'admin2': <tests.utils.user_utils.User object a...s.user_utils.AdminUser object at 0x7fdc0ad29e50>, 'user1': <tests.utils.user_utils.User object at 0x7fdc0adeacf0>, ...}
19-Nov-2024 20:43:38 hosts = {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186ced84fbaac85fa5e57dae59c02cf76584b10e92', 'ip': '10.244.35....8e6ae2d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}
19-Nov-2024 20:43:38 host = 'oneprovider-1'
19-Nov-2024 20:43:38 dir_id = '000000000084A9137368617265477569642373706163655F666364616538336432386335623836353936326531306537313030666436663863686...3265313065373130306664366638636862343765236363306165336364663662626433393335303933623632353330633362373138636830653262'
19-Nov-2024 20:43:38 expression = 'geo=PL'
19-Nov-2024 20:43:38 err_msg = 'Qos requirement added to share root dir, but adding should have failed'
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def try_to_add_qos_to_special_dir_by_id(
19-Nov-2024 20:43:38         user, users, hosts, host, dir_id, expression, err_msg=""
19-Nov-2024 20:43:38     ):
19-Nov-2024 20:43:38         try:
19-Nov-2024 20:43:38 >           create_qos_requirement_in_op_by_id_rest(
19-Nov-2024 20:43:38                 user, users, hosts, host, expression, dir_id
19-Nov-2024 20:43:38             )
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:299:
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38 tests/mixed/steps/rest/oneprovider/qos.py:29: in create_qos_requirement_in_op_by_id_rest
19-Nov-2024 20:43:38     qos_api.add_qos_requirement(data)
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api/qo_s_api.py:55: in add_qos_requirement
19-Nov-2024 20:43:38     (data) = self.add_qos_requirement_with_http_info(data, **kwargs)  # noqa: E501
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api/qo_s_api.py:119: in add_qos_requirement_with_http_info
19-Nov-2024 20:43:38     return self.api_client.call_api(
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api_client.py:326: in call_api
19-Nov-2024 20:43:38     return self.__call_api(resource_path, method,
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api_client.py:158: in __call_api
19-Nov-2024 20:43:38     response_data = self.request(
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api_client.py:368: in request
19-Nov-2024 20:43:38     return self.rest_client.POST(url,
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/rest.py:269: in POST
19-Nov-2024 20:43:38     return self.request("POST", url,
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 self = <oneprovider_client.rest.RESTClientObject object at 0x7fdc0adbf290>
19-Nov-2024 20:43:38 method = 'POST'
19-Nov-2024 20:43:38 url = 'https://dev-oneprovider-krakow.default.svc.cluster.local:443/api/v3/oneprovider/qos_requirements'
19-Nov-2024 20:43:38 query_params = []
19-Nov-2024 20:43:38 headers = {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'Swagger-Codegen/21.02.7/python', 'X-...ZmI1OGQ2MWNoZDZiZAowMDFhY2lkIHRpbWUgPCAxNzYzNTg00OTQxCjAwMmZzaWduYXR1cmUgq4v2flfTPsmpr2RirCca1WSqkLKvt36yl9YhPFwBJtAK'}
19-Nov-2024 20:43:38 body = {'expression': 'geo=PL', 'fileId': '000000000084A9137368617265477569642373706163655F6663646165383364323863356238363539...265313065373130306664366638636862343765236363306165336364663662626433393335303933623632353330633362373138636830653262'}
19-Nov-2024 20:43:38 post_params = {}, _preload_content = True, _request_timeout = None
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def request(self, method, url, query_params=None, headers=None,
19-Nov-2024 20:43:38                 body=None, post_params=None, _preload_content=True,
19-Nov-2024 20:43:38                 _request_timeout=None):
19-Nov-2024 20:43:38         """Perform requests.
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         :param method: http request method
19-Nov-2024 20:43:38         :param url: http request url
19-Nov-2024 20:43:38         :param query_params: query parameters in the url
19-Nov-2024 20:43:38         :param headers: http request headers
19-Nov-2024 20:43:38         :param body: request json body, for `application/json`
19-Nov-2024 20:43:38         :param post_params: request post parameters,
19-Nov-2024 20:43:38                             `application/x-www-form-urlencoded`
19-Nov-2024 20:43:38                             and `multipart/form-data`
19-Nov-2024 20:43:38         :param _preload_content: if False, the urllib3.HTTPResponse object will
19-Nov-2024 20:43:38                                  be returned without reading/decoding response
19-Nov-2024 20:43:38                                  data. Default is True.
19-Nov-2024 20:43:38         :param _request_timeout: timeout setting for this request. If one
19-Nov-2024 20:43:38                                  number provided, it will be total request
19-Nov-2024 20:43:38                                  timeout. It can also be a pair (tuple) of
19-Nov-2024 20:43:38                                  (connection, read) timeouts.
19-Nov-2024 20:43:38         """
19-Nov-2024 20:43:38         method = method.upper()
19-Nov-2024 20:43:38         assert method in ['GET', 'HEAD', 'DELETE', 'POST', 'PUT',
19-Nov-2024 20:43:38                           'PATCH', 'OPTIONS']
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if post_params and body:
19-Nov-2024 20:43:38             raise ValueError(
19-Nov-2024 20:43:38                 "body parameter cannot be used with post_params parameter."
19-Nov-2024 20:43:38             )
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         post_params = post_params or {}
19-Nov-2024 20:43:38         headers = headers or {}
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         timeout = None
19-Nov-2024 20:43:38         if _request_timeout:
19-Nov-2024 20:43:38             if isinstance(_request_timeout, (int, ) if six.PY3 else (int, long)):  # noqa: E501,F821
19-Nov-2024 20:43:38                 timeout = urllib3.Timeout(total=_request_timeout)
19-Nov-2024 20:43:38             elif (isinstance(_request_timeout, tuple) and
19-Nov-2024 20:43:38                   len(_request_timeout) == 2):
19-Nov-2024 20:43:38                 timeout = urllib3.Timeout(
19-Nov-2024 20:43:38                     connect=_request_timeout[0], read=_request_timeout[1])
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if 'Content-Type' not in headers:
19-Nov-2024 20:43:38             headers['Content-Type'] = 'application/json'
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         try:
19-Nov-2024 20:43:38             # For `POST`, `PUT`, `PATCH`, `OPTIONS`, `DELETE`
19-Nov-2024 20:43:38             if method in ['POST', 'PUT', 'PATCH', 'OPTIONS', 'DELETE']:
19-Nov-2024 20:43:38                 if query_params:
19-Nov-2024 20:43:38                     url += '?' + urlencode(query_params)
19-Nov-2024 20:43:38                 if re.search('json', headers['Content-Type'], re.IGNORECASE):
19-Nov-2024 20:43:38                     request_body = '{}'
19-Nov-2024 20:43:38                     if body is not None:
19-Nov-2024 20:43:38                         request_body = json.dumps(body)
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         body=request_body,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 elif headers['Content-Type'] == 'application/x-www-form-urlencoded':  # noqa: E501
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         fields=post_params,
19-Nov-2024 20:43:38                         encode_multipart=False,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 elif headers['Content-Type'] == 'multipart/form-data':
19-Nov-2024 20:43:38                     # must del headers['Content-Type'], or the correct
19-Nov-2024 20:43:38                     # Content-Type which generated by urllib3 will be
19-Nov-2024 20:43:38                     # overwritten.
19-Nov-2024 20:43:38                     del headers['Content-Type']
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         fields=post_params,
19-Nov-2024 20:43:38                         encode_multipart=True,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 # Pass a `string` parameter directly in the body to support
19-Nov-2024 20:43:38                 # other content types than Json when `body` argument is
19-Nov-2024 20:43:38                 # provided in serialized form
19-Nov-2024 20:43:38                 elif isinstance(body, str):
19-Nov-2024 20:43:38                     request_body = body
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         body=request_body,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 else:
19-Nov-2024 20:43:38                     # Cannot generate the request from given parameters
19-Nov-2024 20:43:38                     msg = """Cannot prepare a request message for provided
19-Nov-2024 20:43:38                              arguments. Please check that your arguments match
19-Nov-2024 20:43:38                              declared content type."""
19-Nov-2024 20:43:38                     raise ApiException(status=0, reason=msg)
19-Nov-2024 20:43:38             # For `GET`, `HEAD`
19-Nov-2024 20:43:38             else:
19-Nov-2024 20:43:38                 r = self.pool_manager.request(method, url,
19-Nov-2024 20:43:38                                               fields=query_params,
19-Nov-2024 20:43:38                                               preload_content=_preload_content,
19-Nov-2024 20:43:38                                               timeout=timeout,
19-Nov-2024 20:43:38                                               headers=headers)
19-Nov-2024 20:43:38         except urllib3.exceptions.SSLError as e:
19-Nov-2024 20:43:38             msg = "{0}\n{1}".format(type(e).__name__, str(e))
19-Nov-2024 20:43:38             raise ApiException(status=0, reason=msg)
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if _preload_content:
19-Nov-2024 20:43:38             r = RESTResponse(r)
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38             # In the python 3, the response.data is bytes.
19-Nov-2024 20:43:38             # we need to decode it to string.
19-Nov-2024 20:43:38             if six.PY3:
19-Nov-2024 20:43:38                 r.data = r.data.decode('utf8')
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38             # log response body
19-Nov-2024 20:43:38             logger.debug("response body: %s", r.data)
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if not 200 <= r.status <= 299:
19-Nov-2024 20:43:38 >           raise ApiException(http_resp=r)
19-Nov-2024 20:43:38 E           oneprovider_client.rest.ApiException: (400)
19-Nov-2024 20:43:38 E           Reason: Bad Request
19-Nov-2024 20:43:38 E           HTTP response headers: HTTPHeaderDict({'access-control-allow-origin': '*', 'content-length': '110', 'content-type': 'application/json', 'date': 'Tue, 19 Nov 2024 20:42:28 GMT', 'server': 'Cowboy'})
19-Nov-2024 20:43:38 E           HTTP response body: {"error":{"id":"posix","details":{"errno":"eperm"},"description":"Operation failed with POSIX error: eperm."}}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/rest.py:228: ApiException
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 During handling of the above exception, another exception occurred:
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 fixturefunc = <function try_to_add_qos_to_special_dir at 0x7fdc0b10b880>
19-Nov-2024 20:43:38 request = <FixtureRequest for <Function test_user_fails_to_add_qos_requirement_to_the_share_root_directory[1oz_1op_1oc]>>
19-Nov-2024 20:43:38 kwargs = {'expression': 'geo=PL', 'host': 'oneprovider-1', 'hosts': {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186...dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}, 'name': 'share root', ...}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def call_fixture_func(
19-Nov-2024 20:43:38         fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs
19-Nov-2024 20:43:38     ) -> FixtureValue:
19-Nov-2024 20:43:38         if is_generator(fixturefunc):
19-Nov-2024 20:43:38             fixturefunc = cast(
19-Nov-2024 20:43:38                 Callable[..., Generator[FixtureValue, None, None]], fixturefunc
19-Nov-2024 20:43:38             )
19-Nov-2024 20:43:38             generator = fixturefunc(**kwargs)
19-Nov-2024 20:43:38             try:
19-Nov-2024 20:43:38                 fixture_result = next(generator)
19-Nov-2024 20:43:38             except StopIteration:
19-Nov-2024 20:43:38                 raise ValueError(f"{request.fixturename} did not yield a value") from None
19-Nov-2024 20:43:38             finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator)
19-Nov-2024 20:43:38             request.addfinalizer(finalizer)
19-Nov-2024 20:43:38         else:
19-Nov-2024 20:43:38             fixturefunc = cast(Callable[..., FixtureValue], fixturefunc)
19-Nov-2024 20:43:38 >           fixture_result = fixturefunc(**kwargs)
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 /usr/local/lib/python3.12/dist-packages/_pytest/fixtures.py:913:
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38 tests/utils/bdd_utils.py:78: in wrapper
19-Nov-2024 20:43:38     return fun(*ba.args, **ba.kwargs)
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:284: in try_to_add_qos_to_special_dir
19-Nov-2024 20:43:38     try_to_add_qos_to_special_dir_by_id(
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 user = 'user1'
19-Nov-2024 20:43:38 users = {'admin': <tests.utils.user_utils.AdminUser object at 0x7fdc0aadaab0>, 'admin2': <tests.utils.user_utils.User object a...s.user_utils.AdminUser object at 0x7fdc0ad29e50>, 'user1': <tests.utils.user_utils.User object at 0x7fdc0adeacf0>, ...}
19-Nov-2024 20:43:38 hosts = {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186ced84fbaac85fa5e57dae59c02cf76584b10e92', 'ip': '10.244.35....8e6ae2d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}
19-Nov-2024 20:43:38 host = 'oneprovider-1'
19-Nov-2024 20:43:38 dir_id = '000000000084A9137368617265477569642373706163655F666364616538336432386335623836353936326531306537313030666436663863686...3265313065373130306664366638636862343765236363306165336364663662626433393335303933623632353330633362373138636830653262'
19-Nov-2024 20:43:38 expression = 'geo=PL'
19-Nov-2024 20:43:38 err_msg = 'Qos requirement added to share root dir, but adding should have failed'
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def try_to_add_qos_to_special_dir_by_id(
19-Nov-2024 20:43:38         user, users, hosts, host, dir_id, expression, err_msg=""
19-Nov-2024 20:43:38     ):
19-Nov-2024 20:43:38         try:
19-Nov-2024 20:43:38             create_qos_requirement_in_op_by_id_rest(
19-Nov-2024 20:43:38                 user, users, hosts, host, expression, dir_id
19-Nov-2024 20:43:38             )
19-Nov-2024 20:43:38             raise AssertionError(err_msg)
19-Nov-2024 20:43:38         except ApiException as e:
19-Nov-2024 20:43:38             ex_err_msg = "You are not authorized to perform this operation."
19-Nov-2024 20:43:38 >           assert ex_err_msg in str(e)
19-Nov-2024 20:43:38 E           AssertionError
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:305: AssertionError
19-Nov-2024 20:43:38 ___ test_user_fails_to_add_metadata_to_the_share_root_directory[1oz_1op_1oc] ___
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 user = 'user1'
19-Nov-2024 20:43:38 users = {'admin': <tests.utils.user_utils.AdminUser object at 0x7fdc0ac9dbb0>, 'admin2': <tests.utils.user_utils.User object a...s.user_utils.AdminUser object at 0x7fdc0acb69f0>, 'user1': <tests.utils.user_utils.User object at 0x7fdc0aa58ad0>, ...}
19-Nov-2024 20:43:38 hosts = {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186ced84fbaac85fa5e57dae59c02cf76584b10e92', 'ip': '10.244.35....8e6ae2d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}
19-Nov-2024 20:43:38 host = 'oneprovider-1'
19-Nov-2024 20:43:38 dir_id = '0000000000846A8D7368617265477569642373706163655F383330363930303464636633316633393463316663386431323136386164323063683...3166633864313231363861643230636831623266233036653461366161333935333434663661323435313131373239326134303163636834313431'
19-Nov-2024 20:43:38 expression = '{"id": 1}'
19-Nov-2024 20:43:38 err_msg = 'Json metadata added to share root dir, but adding should have failed'
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def try_to_add_json_metadata_to_special_dir_by_id(
19-Nov-2024 20:43:38         user, users, hosts, host, dir_id, expression, err_msg=""
19-Nov-2024 20:43:38     ):
19-Nov-2024 20:43:38         try:
19-Nov-2024 20:43:38 >           add_json_metadata_to_file_rest(user, users, hosts, host, expression, dir_id)
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:332:
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38 tests/mixed/steps/rest/oneprovider/metadata.py:53: in add_json_metadata_to_file_rest
19-Nov-2024 20:43:38     cfm_api.set_json_metadata(file_id, expression)
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api/custom_file_metadata_api.py:673: in set_json_metadata
19-Nov-2024 20:43:38     (data) = self.set_json_metadata_with_http_info(id, metadata, **kwargs)  # noqa: E501
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api/custom_file_metadata_api.py:749: in set_json_metadata_with_http_info
19-Nov-2024 20:43:38     return self.api_client.call_api(
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api_client.py:326: in call_api
19-Nov-2024 20:43:38     return self.__call_api(resource_path, method,
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api_client.py:158: in __call_api
19-Nov-2024 20:43:38     response_data = self.request(
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api_client.py:376: in request
19-Nov-2024 20:43:38     return self.rest_client.PUT(url,
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/rest.py:279: in PUT
19-Nov-2024 20:43:38     return self.request("PUT", url,
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 self = <oneprovider_client.rest.RESTClientObject object at 0x7fdc0ade6540>
19-Nov-2024 20:43:38 method = 'PUT'
19-Nov-2024 20:43:38 url = 'https://dev-oneprovider-krakow.default.svc.cluster.local:443/api/v3/oneprovider/data/0000000000846A8D7368617265477569...31363861643230636831623266233036653461366161333935333434663661323435313131373239326134303163636834313431/metadata/json'
19-Nov-2024 20:43:38 query_params = []
19-Nov-2024 20:43:38 headers = {'Content-Type': 'application/json', 'User-Agent': 'Swagger-Codegen/21.02.7/python', 'X-Auth-Token': 'MDAzM2xvY2F00aW9...iNmQzMWNoOGNmYQowMDFhY2lkIHRpbWUgPCAxNzYzNTg00OTcwCjAwMmZzaWduYXR1cmUgKk01Fz01CnrkkJi5502FKicrMHU6o4yTY8NQsemIXR4xRsK'}
19-Nov-2024 20:43:38 body = '{"id": 1}', post_params = {}, _preload_content = True
19-Nov-2024 20:43:38 _request_timeout = None
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def request(self, method, url, query_params=None, headers=None,
19-Nov-2024 20:43:38                 body=None, post_params=None, _preload_content=True,
19-Nov-2024 20:43:38                 _request_timeout=None):
19-Nov-2024 20:43:38         """Perform requests.
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         :param method: http request method
19-Nov-2024 20:43:38         :param url: http request url
19-Nov-2024 20:43:38         :param query_params: query parameters in the url
19-Nov-2024 20:43:38         :param headers: http request headers
19-Nov-2024 20:43:38         :param body: request json body, for `application/json`
19-Nov-2024 20:43:38         :param post_params: request post parameters,
19-Nov-2024 20:43:38                             `application/x-www-form-urlencoded`
19-Nov-2024 20:43:38                             and `multipart/form-data`
19-Nov-2024 20:43:38         :param _preload_content: if False, the urllib3.HTTPResponse object will
19-Nov-2024 20:43:38                                  be returned without reading/decoding response
19-Nov-2024 20:43:38                                  data. Default is True.
19-Nov-2024 20:43:38         :param _request_timeout: timeout setting for this request. If one
19-Nov-2024 20:43:38                                  number provided, it will be total request
19-Nov-2024 20:43:38                                  timeout. It can also be a pair (tuple) of
19-Nov-2024 20:43:38                                  (connection, read) timeouts.
19-Nov-2024 20:43:38         """
19-Nov-2024 20:43:38         method = method.upper()
19-Nov-2024 20:43:38         assert method in ['GET', 'HEAD', 'DELETE', 'POST', 'PUT',
19-Nov-2024 20:43:38                           'PATCH', 'OPTIONS']
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if post_params and body:
19-Nov-2024 20:43:38             raise ValueError(
19-Nov-2024 20:43:38                 "body parameter cannot be used with post_params parameter."
19-Nov-2024 20:43:38             )
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         post_params = post_params or {}
19-Nov-2024 20:43:38         headers = headers or {}
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         timeout = None
19-Nov-2024 20:43:38         if _request_timeout:
19-Nov-2024 20:43:38             if isinstance(_request_timeout, (int, ) if six.PY3 else (int, long)):  # noqa: E501,F821
19-Nov-2024 20:43:38                 timeout = urllib3.Timeout(total=_request_timeout)
19-Nov-2024 20:43:38             elif (isinstance(_request_timeout, tuple) and
19-Nov-2024 20:43:38                   len(_request_timeout) == 2):
19-Nov-2024 20:43:38                 timeout = urllib3.Timeout(
19-Nov-2024 20:43:38                     connect=_request_timeout[0], read=_request_timeout[1])
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if 'Content-Type' not in headers:
19-Nov-2024 20:43:38             headers['Content-Type'] = 'application/json'
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         try:
19-Nov-2024 20:43:38             # For `POST`, `PUT`, `PATCH`, `OPTIONS`, `DELETE`
19-Nov-2024 20:43:38             if method in ['POST', 'PUT', 'PATCH', 'OPTIONS', 'DELETE']:
19-Nov-2024 20:43:38                 if query_params:
19-Nov-2024 20:43:38                     url += '?' + urlencode(query_params)
19-Nov-2024 20:43:38                 if re.search('json', headers['Content-Type'], re.IGNORECASE):
19-Nov-2024 20:43:38                     request_body = '{}'
19-Nov-2024 20:43:38                     if body is not None:
19-Nov-2024 20:43:38                         request_body = json.dumps(body)
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         body=request_body,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 elif headers['Content-Type'] == 'application/x-www-form-urlencoded':  # noqa: E501
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         fields=post_params,
19-Nov-2024 20:43:38                         encode_multipart=False,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 elif headers['Content-Type'] == 'multipart/form-data':
19-Nov-2024 20:43:38                     # must del headers['Content-Type'], or the correct
19-Nov-2024 20:43:38                     # Content-Type which generated by urllib3 will be
19-Nov-2024 20:43:38                     # overwritten.
19-Nov-2024 20:43:38                     del headers['Content-Type']
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         fields=post_params,
19-Nov-2024 20:43:38                         encode_multipart=True,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 # Pass a `string` parameter directly in the body to support
19-Nov-2024 20:43:38                 # other content types than Json when `body` argument is
19-Nov-2024 20:43:38                 # provided in serialized form
19-Nov-2024 20:43:38                 elif isinstance(body, str):
19-Nov-2024 20:43:38                     request_body = body
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         body=request_body,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 else:
19-Nov-2024 20:43:38                     # Cannot generate the request from given parameters
19-Nov-2024 20:43:38                     msg = """Cannot prepare a request message for provided
19-Nov-2024 20:43:38                              arguments. Please check that your arguments match
19-Nov-2024 20:43:38                              declared content type."""
19-Nov-2024 20:43:38                     raise ApiException(status=0, reason=msg)
19-Nov-2024 20:43:38             # For `GET`, `HEAD`
19-Nov-2024 20:43:38             else:
19-Nov-2024 20:43:38                 r = self.pool_manager.request(method, url,
19-Nov-2024 20:43:38                                               fields=query_params,
19-Nov-2024 20:43:38                                               preload_content=_preload_content,
19-Nov-2024 20:43:38                                               timeout=timeout,
19-Nov-2024 20:43:38                                               headers=headers)
19-Nov-2024 20:43:38         except urllib3.exceptions.SSLError as e:
19-Nov-2024 20:43:38             msg = "{0}\n{1}".format(type(e).__name__, str(e))
19-Nov-2024 20:43:38             raise ApiException(status=0, reason=msg)
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if _preload_content:
19-Nov-2024 20:43:38             r = RESTResponse(r)
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38             # In the python 3, the response.data is bytes.
19-Nov-2024 20:43:38             # we need to decode it to string.
19-Nov-2024 20:43:38             if six.PY3:
19-Nov-2024 20:43:38                 r.data = r.data.decode('utf8')
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38             # log response body
19-Nov-2024 20:43:38             logger.debug("response body: %s", r.data)
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if not 200 <= r.status <= 299:
19-Nov-2024 20:43:38 >           raise ApiException(http_resp=r)
19-Nov-2024 20:43:38 E           oneprovider_client.rest.ApiException: (400)
19-Nov-2024 20:43:38 E           Reason: Bad Request
19-Nov-2024 20:43:38 E           HTTP response headers: HTTPHeaderDict({'access-control-allow-origin': '*', 'content-length': '80', 'content-type': 'application/json', 'date': 'Tue, 19 Nov 2024 20:42:57 GMT', 'server': 'Cowboy'})
19-Nov-2024 20:43:38 E           HTTP response body: {"error":{"id":"notSupported","description":"This operation is not supported."}}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/rest.py:228: ApiException
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 During handling of the above exception, another exception occurred:
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 fixturefunc = <function try_to_add_json_metadata_to_special_dir at 0x7fdc0b10be20>
19-Nov-2024 20:43:38 request = <FixtureRequest for <Function test_user_fails_to_add_metadata_to_the_share_root_directory[1oz_1op_1oc]>>
19-Nov-2024 20:43:38 kwargs = {'expression': '{"id": 1}', 'host': 'oneprovider-1', 'hosts': {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add...dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}, 'name': 'share root', ...}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def call_fixture_func(
19-Nov-2024 20:43:38         fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs
19-Nov-2024 20:43:38     ) -> FixtureValue:
19-Nov-2024 20:43:38         if is_generator(fixturefunc):
19-Nov-2024 20:43:38             fixturefunc = cast(
19-Nov-2024 20:43:38                 Callable[..., Generator[FixtureValue, None, None]], fixturefunc
19-Nov-2024 20:43:38             )
19-Nov-2024 20:43:38             generator = fixturefunc(**kwargs)
19-Nov-2024 20:43:38             try:
19-Nov-2024 20:43:38                 fixture_result = next(generator)
19-Nov-2024 20:43:38             except StopIteration:
19-Nov-2024 20:43:38                 raise ValueError(f"{request.fixturename} did not yield a value") from None
19-Nov-2024 20:43:38             finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator)
19-Nov-2024 20:43:38             request.addfinalizer(finalizer)
19-Nov-2024 20:43:38         else:
19-Nov-2024 20:43:38             fixturefunc = cast(Callable[..., FixtureValue], fixturefunc)
19-Nov-2024 20:43:38 >           fixture_result = fixturefunc(**kwargs)
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 /usr/local/lib/python3.12/dist-packages/_pytest/fixtures.py:913:
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38 tests/utils/bdd_utils.py:78: in wrapper
19-Nov-2024 20:43:38     return fun(*ba.args, **ba.kwargs)
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:317: in try_to_add_json_metadata_to_special_dir
19-Nov-2024 20:43:38     try_to_add_json_metadata_to_special_dir_by_id(
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 user = 'user1'
19-Nov-2024 20:43:38 users = {'admin': <tests.utils.user_utils.AdminUser object at 0x7fdc0ac9dbb0>, 'admin2': <tests.utils.user_utils.User object a...s.user_utils.AdminUser object at 0x7fdc0acb69f0>, 'user1': <tests.utils.user_utils.User object at 0x7fdc0aa58ad0>, ...}
19-Nov-2024 20:43:38 hosts = {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186ced84fbaac85fa5e57dae59c02cf76584b10e92', 'ip': '10.244.35....8e6ae2d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}
19-Nov-2024 20:43:38 host = 'oneprovider-1'
19-Nov-2024 20:43:38 dir_id = '0000000000846A8D7368617265477569642373706163655F383330363930303464636633316633393463316663386431323136386164323063683...3166633864313231363861643230636831623266233036653461366161333935333434663661323435313131373239326134303163636834313431'
19-Nov-2024 20:43:38 expression = '{"id": 1}'
19-Nov-2024 20:43:38 err_msg = 'Json metadata added to share root dir, but adding should have failed'
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def try_to_add_json_metadata_to_special_dir_by_id(
19-Nov-2024 20:43:38         user, users, hosts, host, dir_id, expression, err_msg=""
19-Nov-2024 20:43:38     ):
19-Nov-2024 20:43:38         try:
19-Nov-2024 20:43:38             add_json_metadata_to_file_rest(user, users, hosts, host, expression, dir_id)
19-Nov-2024 20:43:38             raise AssertionError(err_msg)
19-Nov-2024 20:43:38         except ApiException as e:
19-Nov-2024 20:43:38             ex_err_msg = "You are not authorized to perform this operation."
19-Nov-2024 20:43:38 >           assert ex_err_msg in str(e)
19-Nov-2024 20:43:38 E           AssertionError
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:336: AssertionError
19-Nov-2024 20:43:38 _ test_user_fails_to_establish_dataset_on_the_share_root_directory[1oz_1op_1oc] _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 user = 'user1'
19-Nov-2024 20:43:38 users = {'admin': <tests.utils.user_utils.AdminUser object at 0x7fdc0a9a6a80>, 'admin2': <tests.utils.user_utils.User object a...s.user_utils.AdminUser object at 0x7fdc0a91ab40>, 'user1': <tests.utils.user_utils.User object at 0x7fdc0a919d00>, ...}
19-Nov-2024 20:43:38 hosts = {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186ced84fbaac85fa5e57dae59c02cf76584b10e92', 'ip': '10.244.35....8e6ae2d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}
19-Nov-2024 20:43:38 host = 'oneprovider-1'
19-Nov-2024 20:43:38 dir_id = '00000000008466067368617265477569642373706163655F643664396564383738363137633838323338613838393733363732613034343263683...6138383937333637326130343432636830316636233463333466393532303034303231363436643934653939376538366233323535636838623433'
19-Nov-2024 20:43:38 err_msg = 'Established dataset on share root dir, but establishing should have failed'
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def try_to_establish_dataset_on_special_dir_by_id(
19-Nov-2024 20:43:38         user, users, hosts, host, dir_id, err_msg=""
19-Nov-2024 20:43:38     ):
19-Nov-2024 20:43:38         try:
19-Nov-2024 20:43:38 >           create_dataset_in_op_by_id_rest(user, users, hosts, host, dir_id, "")
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:362:
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38 tests/mixed/steps/rest/oneprovider/datasets.py:29: in create_dataset_in_op_by_id_rest
19-Nov-2024 20:43:38     dataset_api.establish_dataset(data)
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api/dataset_api.py:55: in establish_dataset
19-Nov-2024 20:43:38     (data) = self.establish_dataset_with_http_info(data, **kwargs)  # noqa: E501
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api/dataset_api.py:119: in establish_dataset_with_http_info
19-Nov-2024 20:43:38     return self.api_client.call_api(
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api_client.py:326: in call_api
19-Nov-2024 20:43:38     return self.__call_api(resource_path, method,
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api_client.py:158: in __call_api
19-Nov-2024 20:43:38     response_data = self.request(
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/api_client.py:368: in request
19-Nov-2024 20:43:38     return self.rest_client.POST(url,
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/rest.py:269: in POST
19-Nov-2024 20:43:38     return self.request("POST", url,
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 self = <oneprovider_client.rest.RESTClientObject object at 0x7fdc0a919dc0>
19-Nov-2024 20:43:38 method = 'POST'
19-Nov-2024 20:43:38 url = 'https://dev-oneprovider-krakow.default.svc.cluster.local:443/api/v3/oneprovider/datasets'
19-Nov-2024 20:43:38 query_params = []
19-Nov-2024 20:43:38 headers = {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'Swagger-Codegen/21.02.7/python', 'X-...GU3YTUzMmNoYTBkMgowMDFhY2lkIHRpbWUgPCAxNzYzNTg1MDAwCjAwMmZzaWduYXR1cmUgw4BYC5Kv02k1b5K25zMMSIZV02iHEI5tvcX2R7cggfJvcK'}
19-Nov-2024 20:43:38 body = {'rootFileId': '00000000008466067368617265477569642373706163655F643664396564383738363137633838323338613838393733363732...138383937333637326130343432636830316636233463333466393532303034303231363436643934653939376538366233323535636838623433'}
19-Nov-2024 20:43:38 post_params = {}, _preload_content = True, _request_timeout = None
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def request(self, method, url, query_params=None, headers=None,
19-Nov-2024 20:43:38                 body=None, post_params=None, _preload_content=True,
19-Nov-2024 20:43:38                 _request_timeout=None):
19-Nov-2024 20:43:38         """Perform requests.
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         :param method: http request method
19-Nov-2024 20:43:38         :param url: http request url
19-Nov-2024 20:43:38         :param query_params: query parameters in the url
19-Nov-2024 20:43:38         :param headers: http request headers
19-Nov-2024 20:43:38         :param body: request json body, for `application/json`
19-Nov-2024 20:43:38         :param post_params: request post parameters,
19-Nov-2024 20:43:38                             `application/x-www-form-urlencoded`
19-Nov-2024 20:43:38                             and `multipart/form-data`
19-Nov-2024 20:43:38         :param _preload_content: if False, the urllib3.HTTPResponse object will
19-Nov-2024 20:43:38                                  be returned without reading/decoding response
19-Nov-2024 20:43:38                                  data. Default is True.
19-Nov-2024 20:43:38         :param _request_timeout: timeout setting for this request. If one
19-Nov-2024 20:43:38                                  number provided, it will be total request
19-Nov-2024 20:43:38                                  timeout. It can also be a pair (tuple) of
19-Nov-2024 20:43:38                                  (connection, read) timeouts.
19-Nov-2024 20:43:38         """
19-Nov-2024 20:43:38         method = method.upper()
19-Nov-2024 20:43:38         assert method in ['GET', 'HEAD', 'DELETE', 'POST', 'PUT',
19-Nov-2024 20:43:38                           'PATCH', 'OPTIONS']
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if post_params and body:
19-Nov-2024 20:43:38             raise ValueError(
19-Nov-2024 20:43:38                 "body parameter cannot be used with post_params parameter."
19-Nov-2024 20:43:38             )
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         post_params = post_params or {}
19-Nov-2024 20:43:38         headers = headers or {}
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         timeout = None
19-Nov-2024 20:43:38         if _request_timeout:
19-Nov-2024 20:43:38             if isinstance(_request_timeout, (int, ) if six.PY3 else (int, long)):  # noqa: E501,F821
19-Nov-2024 20:43:38                 timeout = urllib3.Timeout(total=_request_timeout)
19-Nov-2024 20:43:38             elif (isinstance(_request_timeout, tuple) and
19-Nov-2024 20:43:38                   len(_request_timeout) == 2):
19-Nov-2024 20:43:38                 timeout = urllib3.Timeout(
19-Nov-2024 20:43:38                     connect=_request_timeout[0], read=_request_timeout[1])
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if 'Content-Type' not in headers:
19-Nov-2024 20:43:38             headers['Content-Type'] = 'application/json'
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         try:
19-Nov-2024 20:43:38             # For `POST`, `PUT`, `PATCH`, `OPTIONS`, `DELETE`
19-Nov-2024 20:43:38             if method in ['POST', 'PUT', 'PATCH', 'OPTIONS', 'DELETE']:
19-Nov-2024 20:43:38                 if query_params:
19-Nov-2024 20:43:38                     url += '?' + urlencode(query_params)
19-Nov-2024 20:43:38                 if re.search('json', headers['Content-Type'], re.IGNORECASE):
19-Nov-2024 20:43:38                     request_body = '{}'
19-Nov-2024 20:43:38                     if body is not None:
19-Nov-2024 20:43:38                         request_body = json.dumps(body)
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         body=request_body,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 elif headers['Content-Type'] == 'application/x-www-form-urlencoded':  # noqa: E501
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         fields=post_params,
19-Nov-2024 20:43:38                         encode_multipart=False,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 elif headers['Content-Type'] == 'multipart/form-data':
19-Nov-2024 20:43:38                     # must del headers['Content-Type'], or the correct
19-Nov-2024 20:43:38                     # Content-Type which generated by urllib3 will be
19-Nov-2024 20:43:38                     # overwritten.
19-Nov-2024 20:43:38                     del headers['Content-Type']
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         fields=post_params,
19-Nov-2024 20:43:38                         encode_multipart=True,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 # Pass a `string` parameter directly in the body to support
19-Nov-2024 20:43:38                 # other content types than Json when `body` argument is
19-Nov-2024 20:43:38                 # provided in serialized form
19-Nov-2024 20:43:38                 elif isinstance(body, str):
19-Nov-2024 20:43:38                     request_body = body
19-Nov-2024 20:43:38                     r = self.pool_manager.request(
19-Nov-2024 20:43:38                         method, url,
19-Nov-2024 20:43:38                         body=request_body,
19-Nov-2024 20:43:38                         preload_content=_preload_content,
19-Nov-2024 20:43:38                         timeout=timeout,
19-Nov-2024 20:43:38                         headers=headers)
19-Nov-2024 20:43:38                 else:
19-Nov-2024 20:43:38                     # Cannot generate the request from given parameters
19-Nov-2024 20:43:38                     msg = """Cannot prepare a request message for provided
19-Nov-2024 20:43:38                              arguments. Please check that your arguments match
19-Nov-2024 20:43:38                              declared content type."""
19-Nov-2024 20:43:38                     raise ApiException(status=0, reason=msg)
19-Nov-2024 20:43:38             # For `GET`, `HEAD`
19-Nov-2024 20:43:38             else:
19-Nov-2024 20:43:38                 r = self.pool_manager.request(method, url,
19-Nov-2024 20:43:38                                               fields=query_params,
19-Nov-2024 20:43:38                                               preload_content=_preload_content,
19-Nov-2024 20:43:38                                               timeout=timeout,
19-Nov-2024 20:43:38                                               headers=headers)
19-Nov-2024 20:43:38         except urllib3.exceptions.SSLError as e:
19-Nov-2024 20:43:38             msg = "{0}\n{1}".format(type(e).__name__, str(e))
19-Nov-2024 20:43:38             raise ApiException(status=0, reason=msg)
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if _preload_content:
19-Nov-2024 20:43:38             r = RESTResponse(r)
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38             # In the python 3, the response.data is bytes.
19-Nov-2024 20:43:38             # we need to decode it to string.
19-Nov-2024 20:43:38             if six.PY3:
19-Nov-2024 20:43:38                 r.data = r.data.decode('utf8')
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38             # log response body
19-Nov-2024 20:43:38             logger.debug("response body: %s", r.data)
19-Nov-2024 20:43:38    
19-Nov-2024 20:43:38         if not 200 <= r.status <= 299:
19-Nov-2024 20:43:38 >           raise ApiException(http_resp=r)
19-Nov-2024 20:43:38 E           oneprovider_client.rest.ApiException: (400)
19-Nov-2024 20:43:38 E           Reason: Bad Request
19-Nov-2024 20:43:38 E           HTTP response headers: HTTPHeaderDict({'access-control-allow-origin': '*', 'content-length': '110', 'content-type': 'application/json', 'date': 'Tue, 19 Nov 2024 20:43:26 GMT', 'server': 'Cowboy'})
19-Nov-2024 20:43:38 E           HTTP response body: {"error":{"id":"posix","details":{"errno":"eperm"},"description":"Operation failed with POSIX error: eperm."}}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/oneprovider_client/rest.py:228: ApiException
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 During handling of the above exception, another exception occurred:
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 fixturefunc = <function try_to_establish_dataset_on_special_dir at 0x7fdc0b120400>
19-Nov-2024 20:43:38 request = <FixtureRequest for <Function test_user_fails_to_establish_dataset_on_the_share_root_directory[1oz_1op_1oc]>>
19-Nov-2024 20:43:38 kwargs = {'host': 'oneprovider-1', 'hosts': {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186ced84fbaac85fa5e57dae59c...7333637326130343432636830316636233463333466393532303034303231363436643934653939376538366233323535636838623433'}}), ...}
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def call_fixture_func(
19-Nov-2024 20:43:38         fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs
19-Nov-2024 20:43:38     ) -> FixtureValue:
19-Nov-2024 20:43:38         if is_generator(fixturefunc):
19-Nov-2024 20:43:38             fixturefunc = cast(
19-Nov-2024 20:43:38                 Callable[..., Generator[FixtureValue, None, None]], fixturefunc
19-Nov-2024 20:43:38             )
19-Nov-2024 20:43:38             generator = fixturefunc(**kwargs)
19-Nov-2024 20:43:38             try:
19-Nov-2024 20:43:38                 fixture_result = next(generator)
19-Nov-2024 20:43:38             except StopIteration:
19-Nov-2024 20:43:38                 raise ValueError(f"{request.fixturename} did not yield a value") from None
19-Nov-2024 20:43:38             finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator)
19-Nov-2024 20:43:38             request.addfinalizer(finalizer)
19-Nov-2024 20:43:38         else:
19-Nov-2024 20:43:38             fixturefunc = cast(Callable[..., FixtureValue], fixturefunc)
19-Nov-2024 20:43:38 >           fixture_result = fixturefunc(**kwargs)
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 /usr/local/lib/python3.12/dist-packages/_pytest/fixtures.py:913:
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38 tests/utils/bdd_utils.py:78: in wrapper
19-Nov-2024 20:43:38     return fun(*ba.args, **ba.kwargs)
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:346: in try_to_establish_dataset_on_special_dir
19-Nov-2024 20:43:38     try_to_establish_dataset_on_special_dir_by_id(
19-Nov-2024 20:43:38 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 user = 'user1'
19-Nov-2024 20:43:38 users = {'admin': <tests.utils.user_utils.AdminUser object at 0x7fdc0a9a6a80>, 'admin2': <tests.utils.user_utils.User object a...s.user_utils.AdminUser object at 0x7fdc0a91ab40>, 'user1': <tests.utils.user_utils.User object at 0x7fdc0a919d00>, ...}
19-Nov-2024 20:43:38 hosts = {'oneclient-1': {'container-id': '10f2c8881a6d1bfa458add186ced84fbaac85fa5e57dae59c02cf76584b10e92', 'ip': '10.244.35....8e6ae2d29bbb', 'hostname': 'dev-onezone.default.svc.cluster.local', 'ip': '10.244.35.193', 'name': 'dev-onezone', ...}}
19-Nov-2024 20:43:38 host = 'oneprovider-1'
19-Nov-2024 20:43:38 dir_id = '00000000008466067368617265477569642373706163655F643664396564383738363137633838323338613838393733363732613034343263683...6138383937333637326130343432636830316636233463333466393532303034303231363436643934653939376538366233323535636838623433'
19-Nov-2024 20:43:38 err_msg = 'Established dataset on share root dir, but establishing should have failed'
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38     def try_to_establish_dataset_on_special_dir_by_id(
19-Nov-2024 20:43:38         user, users, hosts, host, dir_id, err_msg=""
19-Nov-2024 20:43:38     ):
19-Nov-2024 20:43:38         try:
19-Nov-2024 20:43:38             create_dataset_in_op_by_id_rest(user, users, hosts, host, dir_id, "")
19-Nov-2024 20:43:38             raise AssertionError(err_msg)
19-Nov-2024 20:43:38         except ApiException as e:
19-Nov-2024 20:43:38             ex_err_msg = "You are not authorized to perform this operation."
19-Nov-2024 20:43:38 >           assert ex_err_msg in str(e)
19-Nov-2024 20:43:38 E           AssertionError
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/mixed/steps/rest/onezone/special_dirs.py:366: AssertionError
19-Nov-2024 20:43:38 =============================== warnings summary ===============================
19-Nov-2024 20:43:38 tests/utils/rest_utils.py:98
19-Nov-2024 20:43:38   /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT/onedata-acceptance/tests/utils/rest_utils.py:98: SyntaxWarning: invalid escape sequence '\ '
19-Nov-2024 20:43:38     print("""
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/utils/path_utils.py:112
19-Nov-2024 20:43:38   /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT/onedata-acceptance/tests/utils/path_utils.py:112: SyntaxWarning: invalid escape sequence '\ '
19-Nov-2024 20:43:38     return path.replace("'", "\\'").replace(' ', '\ ')
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/utils/acceptance_utils.py:55
19-Nov-2024 20:43:38   /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT/onedata-acceptance/tests/utils/acceptance_utils.py:55: SyntaxWarning: invalid escape sequence '\d'
19-Nov-2024 20:43:38     '(?P<seconds>\d*\.?\d+([eE][-+]?\d+)?) seconds?'))
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/utils/acceptance_utils.py:57
19-Nov-2024 20:43:38   /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT/onedata-acceptance/tests/utils/acceptance_utils.py:57: SyntaxWarning: invalid escape sequence '\d'
19-Nov-2024 20:43:38     '(?P<seconds>\d*\.?\d+([eE][-+]?\d+)?) seconds?'))
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 tests/gui/steps/onezone/automation/automation_basic.py:327
19-Nov-2024 20:43:38   /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT/onedata-acceptance/tests/gui/steps/onezone/automation/automation_basic.py:327: SyntaxWarning: invalid escape sequence '\('
19-Nov-2024 20:43:38     'new revision|Duplicate to...|Download \(json\)|Remove)" button '
19-Nov-2024 20:43:38
19-Nov-2024 20:43:38 -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
19-Nov-2024 20:43:38 - generated xml file: /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT/onedata-acceptance/test-reports/results.xml -
19-Nov-2024 20:43:38 - Generated html report: file:///mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT/onedata-acceptance/tests/mixed/logs/report.1732047433.3676755/report.html -
19-Nov-2024 20:43:38 ======= 25 failed, 34 passed, 5 warnings, 25 rerun in 1584.74s (0:26:24) =======
19-Nov-2024 20:43:44 release "dev" uninstalled
19-Nov-2024 20:43:44 Sidecar injection has been disabled
19-Nov-2024 20:43:44 Cleaning helm release "dev"...
19-Nov-2024 20:43:44 Deleted 1 helm deployments
19-Nov-2024 20:43:44 Deleted 0 k8s deployments
19-Nov-2024 20:43:44 Deleted 0 k8s services
19-Nov-2024 20:43:44 Deleted 0 persistent volumes
19-Nov-2024 20:43:45 [INFO] ENV variable "bamboo_planRepository_branchName" is set to develop - using it as current branch name
19-Nov-2024 20:43:45 [INFO] Using image docker.onedata.org/onezone-dev:develop for service onezone
19-Nov-2024 20:43:45 [INFO] ENV variable "bamboo_planRepository_branchName" is set to develop - using it as current branch name
19-Nov-2024 20:43:45 [INFO] Using image docker.onedata.org/oneprovider-dev:develop for service oneprovider
19-Nov-2024 20:43:45 [INFO] Using image docker.onedata.org/rest-cli:develop for service rest-cli
19-Nov-2024 20:43:45 [INFO] ENV variable "bamboo_planRepository_branchName" is set to develop - using it as current branch name
19-Nov-2024 20:43:45 [INFO] Using image docker.onedata.org/oneclient-dev:develop for service oneclient
19-Nov-2024 20:43:46 Finished task 'Run acceptance mixed tests in Chrome' with result: Success
19-Nov-2024 20:43:46 Starting task 'Parse test results' of type 'com.atlassian.bamboo.plugins.testresultparser:task.testresultparser.junit'
19-Nov-2024 20:43:46 Parsing test results under /home/bamboo/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT...
19-Nov-2024 20:43:46 Failing task since 25 failing test cases were found.
19-Nov-2024 20:43:46 Changing Task Result to SUCCESS as all failed tests were quarantined.
19-Nov-2024 20:43:46 Finished task 'Parse test results' with result: Success
19-Nov-2024 20:43:46 All conditions for task 'Pack and push surefire artifact' were met. Conditions: Variable bamboo.buildNumber matches pattern [4-9]|.{2,}
19-Nov-2024 20:43:46
Substituting variable: ${bamboo.artifactRepoHostname} with S3
19-Nov-2024 20:43:46
Substituting variable: ${bamboo.artifactRepoPort} with 10161
19-Nov-2024 20:43:46
Substituting variable: ${bamboo.artifactRepoUsername} with ubuntu
19-Nov-2024 20:43:46
Substituting variable: ${bamboo.planRepository.branchName} with develop
19-Nov-2024 20:43:46
Substituting variable: ${bamboo.planRepository.name} with onedata-acceptance
19-Nov-2024 20:43:46
Substituting variable: ${bamboo.artifactRepoHostname} with S3
19-Nov-2024 20:43:46
Substituting variable: ${bamboo.artifactRepoPort} with 10161
19-Nov-2024 20:43:46
Substituting variable: ${bamboo.artifactRepoUsername} with ubuntu
19-Nov-2024 20:43:46
Substituting variable: ${bamboo.planRepository.branchName} with develop
19-Nov-2024 20:43:46
Substituting variable: ${bamboo.planRepository.name} with onedata-acceptance
19-Nov-2024 20:43:46 Starting task 'Pack and push surefire artifact' of type 'com.atlassian.bamboo.plugins.scripttask:task.builder.script'
19-Nov-2024 20:43:46
Beginning to execute external process for build 'Onedata Products - mixed acceptance pkg - Spaces basic #3283 (ODSRV-MAOPT-CSBT-3283)'
... running command line:
/home/bamboo/bamboo-agent-home/temp/ODSRV-MAOPT-CSBT-3283-ScriptBuildTask-11981404782521376394.sh
... in: /home/bamboo/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT/onedata-acceptance
19-Nov-2024 20:43:46 ./bamboos/artifacts/push_artifact.py --hostname S3 --port 10161 --username ubuntu --branch develop --plan onedata-acceptance --artifact-name surefire_Spaces_basic.tar.gz
19-Nov-2024 20:43:50 Uploading artifact
19-Nov-2024 20:43:50     source path: surefire_Spaces_basic.tar.gz
19-Nov-2024 20:43:50     dest.  path: artifacts/onedata-acceptance/develop/surefire_Spaces_basic.tar.gz
19-Nov-2024 20:43:50 Finished task 'Pack and push surefire artifact' with result: Success
19-Nov-2024 20:43:50 All conditions for task 'Pack logs' were met. Conditions: Variable bamboo.buildNumber matches pattern [4-9]|.{2,}
19-Nov-2024 20:43:50 Starting task 'Pack logs' of type 'com.atlassian.bamboo.plugins.scripttask:task.builder.script'
19-Nov-2024 20:43:50
Beginning to execute external process for build 'Onedata Products - mixed acceptance pkg - Spaces basic #3283 (ODSRV-MAOPT-CSBT-3283)'
... running command line:
/home/bamboo/bamboo-agent-home/temp/ODSRV-MAOPT-CSBT-3283-ScriptBuildTask-2678016288316717615.sh
... in: /home/bamboo/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT
19-Nov-2024 20:43:50 cp: cannot stat 'onedata-acceptance/one_env/sources_info.yaml': No such file or directory
19-Nov-2024 20:43:50 Finished task 'Pack logs' with result: Success
19-Nov-2024 20:43:50 All conditions for task 'Clear env and working dir' were met. Conditions: Variable bamboo.buildNumber matches pattern [4-9]|.{2,}
19-Nov-2024 20:43:50
Substituting variable: ${bamboo.OnedataFinalTasksURL} with https://raw.githubusercontent.com/onedata/bamboos/develop/final_tasks.sh
19-Nov-2024 20:43:50 Starting task 'Clear env and working dir' of type 'com.atlassian.bamboo.plugins.scripttask:task.builder.script'
19-Nov-2024 20:43:50
Beginning to execute external process for build 'Onedata Products - mixed acceptance pkg - Spaces basic #3283 (ODSRV-MAOPT-CSBT-3283)'
... running command line:
/home/bamboo/bamboo-agent-home/temp/ODSRV-MAOPT-CSBT-3283-ScriptBuildTask-10354341930167747180.sh
... in: /home/bamboo/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT/onedata-acceptance
19-Nov-2024 20:43:50   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
19-Nov-2024 20:43:50                                  Dload  Upload   Total   Spent    Left  Speed
19-Nov-2024 20:43:50
19-Nov-2024 20:43:50   0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
19-Nov-2024 20:43:50 100  4822  100  4822    0     0  51297      0 --:--:-- --:--:-- --:--:-- 51297
19-Nov-2024 20:43:50 Clearing /tmp/onedata and /home/bamboo/.one-env
19-Nov-2024 20:43:52 Cleaning helm deployments
19-Nov-2024 20:43:52 Cleanining pods
19-Nov-2024 20:43:52 Cleaning kube persistant volumes
19-Nov-2024 20:43:53 Cleaning dockswift container
19-Nov-2024 20:43:53 Cleaning docker containers
19-Nov-2024 20:43:53 Error: No such object: ef45b612625a
19-Nov-2024 20:43:53 Error: No such object: ef45b612625a
19-Nov-2024 20:43:53 Error: No such object: 9047845250b7
19-Nov-2024 20:43:53 Error: No such object: 9047845250b7
19-Nov-2024 20:43:54 Error: No such object: fb4a9df2551d
19-Nov-2024 20:43:54 Error: No such object: fb4a9df2551d
19-Nov-2024 20:43:55 Stalled docker containers to remove:
19-Nov-2024 20:43:55 75c4ffe54058 ef45b612625a 9047845250b7 fb4a9df2551d 12740cb16a3f
19-Nov-2024 20:43:55 Removing stalled docker containers
19-Nov-2024 20:43:55 Error response from daemon: Cannot kill container: 75c4ffe54058: Container 75c4ffe5405845268ded1599d765a9caa78126e27d06afcc038a5a42b40bd5a0 is not running
19-Nov-2024 20:43:55 75c4ffe54058
19-Nov-2024 20:43:55 Error response from daemon: Cannot kill container: ef45b612625a: No such container: ef45b612625a
19-Nov-2024 20:43:55 Error response from daemon: No such container: ef45b612625a
19-Nov-2024 20:43:56 Error response from daemon: Cannot kill container: 9047845250b7: No such container: 9047845250b7
19-Nov-2024 20:43:56 Error response from daemon: No such container: 9047845250b7
19-Nov-2024 20:43:56 Error response from daemon: Cannot kill container: fb4a9df2551d: No such container: fb4a9df2551d
19-Nov-2024 20:43:56 Error response from daemon: No such container: fb4a9df2551d
19-Nov-2024 20:43:56 12740cb16a3f
19-Nov-2024 20:43:56 12740cb16a3f
19-Nov-2024 20:43:56 Stalled docker volumes to remove:
19-Nov-2024 20:43:56
19-Nov-2024 20:43:56 Removing stalled docker volumes
19-Nov-2024 20:43:56 Removing stalled loopdevices
19-Nov-2024 20:43:57 Done
19-Nov-2024 20:43:57 Finished task 'Clear env and working dir' with result: Success
19-Nov-2024 20:43:57 Skipping task 'Qnthack - always fail on build 2' because of unfulfilled condition. Reason: Variable bamboo.buildNumber matches pattern 2
19-Nov-2024 20:43:57 Running post build plugin 'Docker Container Cleanup'
19-Nov-2024 20:43:57 Running post build plugin 'NCover Results Collector'
19-Nov-2024 20:43:57 Running post build plugin 'Build Results Label Collector'
19-Nov-2024 20:43:57 Running post build plugin 'Clover Results Collector'
19-Nov-2024 20:43:57 Running post build plugin 'npm Cache Cleanup'
19-Nov-2024 20:43:57 Running post build plugin 'Artifact Copier'
19-Nov-2024 20:43:57 Publishing an artifact: report
19-Nov-2024 20:43:58 Finished publishing of artifact Non required job artifact Http Compression On : [report], patterns: [**/*.*] anchored at: [onedata-acceptance/tests/mixed/logs/] in 826.8 ms
19-Nov-2024 20:43:58 Successfully removed working directory at '/home/bamboo/bamboo-agent-home/xml-data/build-dir/ODSRV-MAOPT-CSBT'
19-Nov-2024 20:43:58 Finalising the build...
19-Nov-2024 20:43:58 Stopping timer.
19-Nov-2024 20:43:58 Build ODSRV-MAOPT-CSBT-3283 completed.
19-Nov-2024 20:43:58 Running on server: post build plugin 'Build Hanging Detection Configuration'
19-Nov-2024 20:43:58 Running on server: post build plugin 'NCover Results Collector'
19-Nov-2024 20:43:58 Running on server: post build plugin 'Build Labeller'
19-Nov-2024 20:43:58 Running on server: post build plugin 'Clover Delta Calculator'
19-Nov-2024 20:43:58 Running on server: post build plugin 'Maven Dependencies Postprocessor'
19-Nov-2024 20:43:58 All post build plugins have finished
19-Nov-2024 20:43:58 Generating build results summary...
19-Nov-2024 20:43:59 Saving build results to disk...
19-Nov-2024 20:43:59 Store variable context...
19-Nov-2024 20:43:59 Finished building ODSRV-MAOPT-CSBT-3283.