test: full peer store takeover

This commit is contained in:
Roman 2024-06-10 20:42:43 +02:00
parent 63d7c36d4c
commit 4b19aeccd3
No known key found for this signature in database
GPG Key ID: B8FE070B54E11B75
3 changed files with 24 additions and 3 deletions

View File

@ -14,9 +14,10 @@ def get_env_var(var_name, default=None):
# Configuration constants. Need to be upercase to appear in reports
DEFAULT_NWAKU = "harbor.status.im/wakuorg/nwaku:latest"
# DEFAULT_NWAKU = "harbor.status.im/wakuorg/nwaku:latest"
DEFAULT_NWAKU = "wakuorg/nwaku:wakunode2-v0.28.0-peerdb"
DEFAULT_GOWAKU = "harbor.status.im/wakuorg/go-waku:latest"
NODE_1 = get_env_var("NODE_1", DEFAULT_GOWAKU)
NODE_1 = get_env_var("NODE_1", DEFAULT_NWAKU)
NODE_2 = get_env_var("NODE_2", DEFAULT_NWAKU)
ADDITIONAL_NODES = get_env_var("ADDITIONAL_NODES", f"{DEFAULT_NWAKU},{DEFAULT_GOWAKU},{DEFAULT_NWAKU}")
# more nodes need to follow the NODE_X pattern

View File

@ -126,6 +126,13 @@ class WakuNode:
kwargs["persist_peers"] = kwargs["peer_persistence"]
del kwargs["peer_persistence"]
cwd = os.getcwd()
self._volumes.extend(
[
cwd + "/peerdb" + ":/shared",
]
)
default_args.update(sanitize_docker_flags(kwargs))
rln_args, rln_creds_set, keystore_path = self.parse_rln_credentials(default_args, False)

View File

@ -1,5 +1,6 @@
import pytest
from src.libs.common import delay
from src.libs.custom_logger import get_custom_logger
from src.node.waku_node import peer_info2id, peer_info2multiaddr, multiaddr2id
from src.steps.peer_store import StepsPeerStore
@ -66,7 +67,19 @@ class TestPeerStore(StepsPeerStore, StepsRelay, StepsStore):
assert len(node1_peers) == 2 and len(node2_peers) == 2, f"Some nodes and/or their services are missing"
@pytest.mark.skip(reason="pending on https://github.com/waku-org/nwaku/issues/2792")
# @pytest.mark.skip(reason="pending on https://github.com/waku-org/nwaku/issues/2792")
def test_use_persistent_storage_survive_restart(self):
self.setup_first_relay_node(peer_persistence="true")
self.setup_second_relay_node()
delay(10)
node1_peers = self.node1.get_peers()
node2_peers = self.node2.get_peers()
logger.debug(f"Node 1 connected peers before {node1_peers}")
logger.debug(f"Node 2 connected peers before {node2_peers}")
self.setup_third_relay_node(peer_persistence="true")
node1_peers = self.node1.get_peers()
node2_peers = self.node2.get_peers()
node3_peers = self.node3.get_peers()
logger.debug(f"Node 1 connected peers after {node1_peers}")
logger.debug(f"Node 2 connected peers after {node2_peers}")
logger.debug(f"Node 3 connected peers after {node3_peers}")