diff --git a/src/node/waku_node.py b/src/node/waku_node.py index d47b8997..20c7e45f 100644 --- a/src/node/waku_node.py +++ b/src/node/waku_node.py @@ -123,19 +123,7 @@ class WakuNode: else: remove_container = True - if kwargs.get("peer_persistence") == "true": - if self.is_gowaku(): - kwargs["persist_peers"] = kwargs["peer_persistence"] - del kwargs["peer_persistence"] - - cwd = os.getcwd() - self._volumes.extend( - [ - cwd + "/peerdb" + ":/shared", - ] - ) - - shutil.rmtree(cwd + "/peerdb") + kwargs = self.parse_peer_persistence_config(kwargs) default_args.update(sanitize_docker_flags(kwargs)) @@ -471,6 +459,25 @@ class WakuNode: return rln_args, True, keystore_path + def parse_peer_persistence_config(self, kwargs): + if kwargs.get("peer_persistence") == "true": + if self.is_gowaku(): + kwargs["persist_peers"] = kwargs["peer_persistence"] + del kwargs["peer_persistence"] + + cwd = os.getcwd() + # Please note, as of now, peerdb is stored directly at / which is not shareable between containers. + # Volume related code is usable after https://github.com/waku-org/nwaku/issues/2792 would be resolved. + self._volumes.extend( + [ + cwd + "/peerdb" + ":/shared", + ] + ) + + shutil.rmtree(cwd + "/peerdb") + + return kwargs + @property def container(self): return self._container