js-waku icon indicating copy to clipboard operation
js-waku copied to clipboard

feat: add rpc url to nwaku, persist rln tree in docker and ci

Open adklempner opened this issue 1 year ago • 1 comments

Problem

Tests that run against cluster id 1 (The Waku Network) require running an nwaku node with a sepolia RPC url. When adding this parameter, the nwaku node will not be "ready" (/health returns status 200) until the RLN tree is synced. If starting from scratch, this process takes a long time (up to 5 minutes, and will only take longer as more blocks are mined on Sepolia).

Solution

Add a step to the CI that:

  • checks if the rln_tree.db is stored as an artifact. If so, pull it.
  • run an nwaku node in docker that mounts the rln_tree.db until the /health endpoint returns 200 (basically syncs the rln_tree to latest block on sepolia)
  • store the synced rln_tree.db as an artifact

Notes

  • Resolves #1914

Contribution checklist:

  • [ ] covered by unit tests;
  • [ ] covered by e2e test;
  • [ ] add ! in title if breaks public API;

adklempner avatar May 04 '24 00:05 adklempner

size-limit report 📦

Path Size Loading time (3g) Running time (snapdragon) Total time
Waku node 181.24 KB (0%) 3.7 s (0%) 17.4 s (-11.06% 🔽) 21 s
Waku Simple Light Node 181.32 KB (0%) 3.7 s (0%) 21.8 s (+4.35% 🔺) 25.4 s
ECIES encryption 23.12 KB (0%) 463 ms (0%) 6.1 s (+5.81% 🔺) 6.6 s
Symmetric encryption 22.53 KB (0%) 451 ms (0%) 2.4 s (-50.93% 🔽) 2.8 s
DNS discovery 72.5 KB (0%) 1.5 s (0%) 8.1 s (+4.11% 🔺) 9.6 s
Peer Exchange discovery 74.09 KB (0%) 1.5 s (0%) 6.2 s (-63.48% 🔽) 7.7 s
Local Peer Cache Discovery 67.63 KB (0%) 1.4 s (0%) 9.8 s (-33.36% 🔽) 11.2 s
Privacy preserving protocols 38.88 KB (0%) 778 ms (0%) 7.6 s (-35.25% 🔽) 8.4 s
Waku Filter 111.72 KB (0%) 2.3 s (0%) 18.5 s (+16.75% 🔺) 20.8 s
Waku LightPush 110.26 KB (0%) 2.3 s (0%) 19.2 s (-4.57% 🔽) 21.4 s
History retrieval protocols 110.76 KB (0%) 2.3 s (0%) 12.8 s (-11.58% 🔽) 15 s
Deterministic Message Hashing 7.24 KB (0%) 145 ms (0%) 1.6 s (-54.35% 🔽) 1.8 s

github-actions[bot] avatar May 04 '24 00:05 github-actions[bot]