diff --git a/src/frostfs_testlib/steps/cli/container.py b/src/frostfs_testlib/steps/cli/container.py index 092b1a3..978e8a8 100644 --- a/src/frostfs_testlib/steps/cli/container.py +++ b/src/frostfs_testlib/steps/cli/container.py @@ -341,11 +341,13 @@ def search_nodes_with_container( cli = FrostfsCli(shell, FROSTFS_CLI_EXEC, wallet.config_path) result = cli.container.search_node(rpc_endpoint=endpoint, cid=cid, timeout=timeout) - pattern = r"[0-9]+(?:\.[0-9]+){3}" - nodes_ip = list(set(re.findall(pattern, result.stdout))) + addrs = list(set(re.findall(r"(?<=/ip[46]/)[^/]+(?=/)", result.stdout))) + hostnames = list(set(re.findall(r"(?<=/dns[46]/)[^/]+(?=/)", result.stdout))) - with reporter.step(f"nodes ips = {nodes_ip}"): - nodes_list = cluster.get_nodes_by_ip(nodes_ip) - - with reporter.step(f"Return nodes - {nodes_list}"): - return nodes_list + nodes = [] + for node in cluster.cluster_nodes: + host = node.host.config + if host.address in addrs or host.hostname in hostnames: + nodes.append(node) + with reporter.step(f"Return nodes - {nodes}"): + return nodes