#!/usr/bin/env bash set -e if [ "$#" -ne 1 ]; then echo "Please provide the number of initial validators!" exit 1 fi generate_account_id() { ./target/release/ghostkey inspect ${3:-} ${4:-} "$SECRET//$1//$2" | grep "Account ID" | awk '{ print $3 }' } generate_address() { ./target/release/ghostkey inspect ${3:-} ${4:-} "$SECRET//$1//$2" | grep "SS58 Address" | awk '{ print $3 }' } generate_public_key() { ./target/release/ghostkey inspect ${3:-} ${4:-} "$SECRET//$1//$2" | grep "Public key (hex)" | awk '{ print $4 }' } generate_address_and_account_id() { ACCOUNT=$(generate_account_id $1 $2 $3) ADDRESS=$(generate_address $1 $2 $3) if ${4:-false}; then INTO="unchecked_into" else INTO="into" fi printf "//$ADDRESS\nhex![\"${ACCOUNT#'0x'}\"].$INTO()," } V_NUM=$1 AUTHORITIES="" for i in $(seq 1 $V_NUM); do AUTHORITIES+="(\n" AUTHORITIES+="$(generate_address_and_account_id $i stash)\n" AUTHORITIES+="$(generate_address_and_account_id $i controller)\n" AUTHORITIES+="$(generate_address_and_account_id $i babe '--scheme sr25519' true)\n" AUTHORITIES+="$(generate_address_and_account_id $i grandpa '--scheme ed25519' true)\n" AUTHORITIES+="$(generate_address_and_account_id $i authority_discovery '--scheme sr25519' true)\n" AUTHORITIES+="$(generate_address_and_account_id $i slow_clap '--scheme sr25519' true)\n" AUTHORITIES+="),\n" done printf "$AUTHORITIES"