Skip to content

Commit 3957892

Browse files
cjen1-msftCopilotachamayou
authored
Be explicit about how the common directory is passed (#7603)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Amaury Chamayou <amchamay@microsoft.com>
1 parent ede6b5c commit 3957892

File tree

3 files changed

+22
-14
lines changed

3 files changed

+22
-14
lines changed

tests/e2e_operations.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1291,7 +1291,6 @@ def run_initial_uvm_descriptor_checks(const_args):
12911291
)
12921292
recovered_network.start_in_recovery(
12931293
recovered_network_args,
1294-
common_dir=network.common_dir,
12951294
ledger_dir=current_ledger_dir,
12961295
committed_ledger_dirs=committed_ledger_dirs,
12971296
snapshots_dir=snapshots_dir,
@@ -1374,7 +1373,6 @@ def run_initial_tcb_version_checks(const_args):
13741373
) as recovered_network:
13751374
recovered_network.start_in_recovery(
13761375
recovered_network_args,
1377-
common_dir=network.common_dir,
13781376
ledger_dir=current_ledger_dir,
13791377
committed_ledger_dirs=committed_ledger_dirs,
13801378
snapshots_dir=snapshots_dir,
@@ -1441,7 +1439,9 @@ def run_recovery_local_unsealing(
14411439
args = copy.deepcopy(const_args)
14421440
args.nodes = infra.e2e_args.min_nodes(args, f=1)
14431441
args.enable_local_sealing = True
1444-
args.label += "_unsealing"
1442+
args.label += (
1443+
f"_unsealing_{recovery_f}_rekey_{rekey}_refresh_{recovery_shares_refresh}"
1444+
)
14451445

14461446
with infra.network.network(args.nodes, args.binary_dir) as network:
14471447
network.start_and_open(args)

tests/infra/network.py

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ class Network:
221221

222222
def __init__(
223223
self,
224-
hosts,
224+
hosts=None,
225225
binary_dir=".",
226226
dbg_nodes=None,
227227
existing_network=None,
@@ -242,34 +242,35 @@ def __init__(
242242
if existing_network is None:
243243
self.consortium = None
244244
self.users = []
245-
self.hosts = hosts
245+
self.hosts = hosts or []
246246
self.next_node_id = next_node_id
247247
self.txs = txs
248248
self.jwt_issuer = jwt_issuer
249249
self.service_load = service_load
250250
self.recovery_count = 0
251+
self.common_dir = None
251252
else:
252253
self.consortium = existing_network.consortium
253254
self.users = existing_network.users
255+
self.hosts = hosts or infra.e2e_args.nodes(
256+
existing_network.args, len(existing_network.nodes)
257+
)
254258
self.next_node_id = existing_network.next_node_id
255259
self.txs = existing_network.txs
256260
self.jwt_issuer = existing_network.jwt_issuer
257-
self.hosts = infra.e2e_args.nodes(
258-
existing_network.args, len(existing_network.nodes)
259-
)
260261
self.service_load = None
261262
if existing_network.service_load:
262263
self.service_load = existing_network.service_load
263264
self.service_load.set_network(self)
264265
self.recovery_count = existing_network.recovery_count
266+
self.common_dir = existing_network.common_dir
265267

266268
self.ignoring_shutdown_errors = False
267269
self.ignore_error_patterns = []
268270
self.nodes = []
269271
self.status = ServiceStatus.CLOSED
270272
self.binary_dir = binary_dir
271273
self.library_dir = library_dir
272-
self.common_dir = None
273274
self.election_duration = None
274275
self.observed_election_duration = None
275276
self.key_generator = os.path.join(binary_dir, self.KEY_GEN)
@@ -695,8 +696,10 @@ def start_in_recovery(
695696
:param snapshots_dir: snapshot directory to recover from.
696697
:param common_dir: common directory containing member and user keys and certs.
697698
"""
698-
self.common_dir = common_dir or get_common_folder_name(
699-
args.workspace, args.label
699+
self.common_dir = (
700+
common_dir
701+
or self.common_dir
702+
or get_common_folder_name(args.workspace, args.label)
700703
)
701704
committed_ledger_dirs = committed_ledger_dirs or []
702705

@@ -785,8 +788,10 @@ def start_in_self_healing_open(
785788
suspend_after_start=False,
786789
**kwargs,
787790
):
788-
self.common_dir = common_dir or get_common_folder_name(
789-
args.workspace, args.label
791+
self.common_dir = (
792+
common_dir
793+
or self.common_dir
794+
or get_common_folder_name(args.workspace, args.label)
790795
)
791796

792797
self.per_node_args_override = self.per_node_args_override or {

tests/recovery.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -678,7 +678,10 @@ def test_recover_service_aborted(network, args, from_snapshot=False):
678678
current_ledger_dir, committed_ledger_dirs = old_primary.get_ledger()
679679

680680
aborted_network = infra.network.Network(
681-
args.nodes, args.binary_dir, args.debug_nodes, network
681+
args.nodes,
682+
binary_dir=args.binary_dir,
683+
dbg_nodes=args.debug_nodes,
684+
existing_network=network,
682685
)
683686
aborted_network.start_in_recovery(
684687
args,

0 commit comments

Comments
 (0)