|
| 1 | +#!/bin/bash |
| 2 | + |
| 3 | +# Number of nodes to create (default is 3) |
| 4 | +NUM_NODES=3 |
| 5 | + |
| 6 | +echo "🚀 Setting up Node Identities..." |
| 7 | + |
| 8 | +# Create node directories and copy config files |
| 9 | +echo "📁 Creating node directories..." |
| 10 | +for i in $(seq 0 $((NUM_NODES-1))); do |
| 11 | + mkdir -p "node$i/identity" |
| 12 | + if [ ! -f "node$i/config.yaml" ]; then |
| 13 | + cp config.yaml "node$i/" |
| 14 | + fi |
| 15 | + if [ ! -f "node$i/peers.json" ]; then |
| 16 | + cp peers.json "node$i/" |
| 17 | + fi |
| 18 | +done |
| 19 | + |
| 20 | +# Generate identity for each node |
| 21 | +echo "🔑 Generating identities for each node..." |
| 22 | +for i in $(seq 0 $((NUM_NODES-1))); do |
| 23 | + echo "📝 Generating identity for node$i..." |
| 24 | + cd "node$i" |
| 25 | + mpcium-cli generate-identity --node "node$i" |
| 26 | + cd .. |
| 27 | +done |
| 28 | + |
| 29 | +# Distribute identity files to all nodes |
| 30 | +echo "🔄 Distributing identity files across nodes..." |
| 31 | +for i in $(seq 0 $((NUM_NODES-1))); do |
| 32 | + for j in $(seq 0 $((NUM_NODES-1))); do |
| 33 | + if [ $i != $j ]; then |
| 34 | + echo "📋 Copying node${i}_identity.json to node$j..." |
| 35 | + cp "node$i/identity/node${i}_identity.json" "node$j/identity/" |
| 36 | + fi |
| 37 | + done |
| 38 | +done |
| 39 | + |
| 40 | +echo "✨ Node identities setup complete!" |
| 41 | +echo |
| 42 | +echo "📂 Created folder structure:" |
| 43 | +echo "├── node0" |
| 44 | +echo "│ ├── config.yaml" |
| 45 | +echo "│ ├── identity/" |
| 46 | +echo "│ └── peers.json" |
| 47 | +echo "├── node1" |
| 48 | +echo "│ ├── config.yaml" |
| 49 | +echo "│ ├── identity/" |
| 50 | +echo "│ └── peers.json" |
| 51 | +echo "└── node2" |
| 52 | +echo " ├── config.yaml" |
| 53 | +echo " ├── identity/" |
| 54 | +echo " └── peers.json" |
| 55 | +echo |
| 56 | +echo "✅ You can now start your nodes with:" |
| 57 | +echo "cd node0 && mpcium start -n node0" |
| 58 | +echo "cd node1 && mpcium start -n node1" |
| 59 | +echo "cd node2 && mpcium start -n node2" |
0 commit comments