Skip to content

Files

Latest commit

 

History

History
58 lines (44 loc) · 1.8 KB
·

onboarding.md

File metadata and controls

58 lines (44 loc) · 1.8 KB
·

How to onboard a new node

⚠️ Experimental: warning, this file might be out of date!

It is important that both public key and address are correct as they are immutable and cannot be changed in the future.

Step 1) Get All Keys

An easy way to generate a new private key is to use our CLI:

./dev/cli generate-key | jq
{
  "level": "INFO",
  "time": "2024-10-15T13:21:14.036-0400",
  "message": "generated private key",
  "private-key": "0x7d3cd4989b92c593db9a4b3ac1c2a5d542efad058b2a83e26c3467392b29c6f9",
  "public-key": "0x03da53968d81f4eb3c9dd8b96617575767ec0cccbd28103b2cfd7f1511bb282d30",
  "address": "0x9419db765e6b469edc028ffa72ba2944f2bad169"
}

If you already have a private key, you can extract the relevant public details via:

./dev/cli get-pub-key --private-key 0xa9b48d687f450ea99a5faaae1be096ddb49487cb28393d3906d7359ede6ea460 | jq
{
  "level": "INFO",
  "time": "2024-10-15T13:21:51.276-0400",
  "message": "parsed private key",
  "pub-key": "0x027a64295b98e48682cb77be1b990d4ecf8f1a86badf051df0af123e6fe3790e3f",
  "address": "0x9419db765e6b469edc028ffa72ba2944f2bad169"
}

Step 2) Share pub-key and address

TBD.

Before official testnet launch, only the members of @ephemerahq/backend can register nodes.

Step 3) Register Node with smart contract

export XMTPD_CONTRACTS_RPC_URL="https://rpc-testnet-staging-88dqtxdinc.t.conduit.xyz/"
export XMTPD_CONTRACTS_CHAIN_ID=34498
export XMTPD_CONTRACTS_NODES_ADDRESS=<depends>
export PRIVATE_KEY=<secret>

dev/cli register-node \
    --http-address=<node DNS> \
    --node-owner-address=<node address> \
    --admin-private-key=$PRIVATE_KEY \
    --node-signing-key-pub=<node pub-key>

Step 4) Start the node

This step might differ for every operator. A good starting point is our Deployment Guide