symbol-bootstrap icon indicating copy to clipboard operation
symbol-bootstrap copied to clipboard

Consider implement a NodeJS native nemgen command

Open fboucquez opened this issue 4 years ago • 0 comments

ATM, when the nemesis block needs to be generated (like bootstrap preset), the config command runs catapult.tools.nemgen inside the docker image symbolplatform/symbol-server:tools-gcc-X.

Ideally, I would like to run a native NodeJS implementation of the nemgen tool using the Typescript SDK. This CLI tool is already using the SDK to generate addresses, keys pairs, VRF transactions, OptIn transactions, etc. C++ catapult.tools.nemgen is the only remaining tool used.

Benefits:

  1. Faster. Users, especially CI like Travis, won't need to pull the docker images
  2. Removes docker dependency at config command time (for Raspberry Pi/ barebone kind of users).

This task is to consider if creating a Nodejs NemGen command to generate the nemesis block bin is doable and safe by upgrading the NemgenService.

One committed example of the genesis block is the testnet one.

Update security: This will allow being used in offline mode, although I doubt people would start a new private network in offline mode

fboucquez avatar Aug 17 '20 13:08 fboucquez