From f87bbb9b09ea14529cef13afd92bebc59b9f4d79 Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2019 21:20:27 -0700 Subject: [PATCH] Add net/ support for reusable identity keypairs (#6783) (#6784) (cherry picked from commit 87ba66b6d0017755b8cad5ac7d5ee6c539db39e9) --- ci/testnet-deploy.sh | 5 +++++ multinode-demo/setup.sh | 13 +++++++++++-- net/remote/remote-node.sh | 40 ++++++++++++++++++++++++++++++++------- 3 files changed, 49 insertions(+), 9 deletions(-) diff --git a/ci/testnet-deploy.sh b/ci/testnet-deploy.sh index 3e5310d1bb..16a9372178 100755 --- a/ci/testnet-deploy.sh +++ b/ci/testnet-deploy.sh @@ -262,6 +262,11 @@ trap shutdown EXIT INT set -x +# Fetch reusable testnet keypairs +if [[ ! -d net/keypairs ]]; then + git clone git@github.com:solana-labs/testnet-keypairs.git net/keypairs +fi + # Build a string to pass zone opts to $cloudProvider.sh: "-z zone1 -z zone2 ..." zone_args=() for val in "${zone[@]}"; do diff --git a/multinode-demo/setup.sh b/multinode-demo/setup.sh index f605cb56ec..be8a24b310 100755 --- a/multinode-demo/setup.sh +++ b/multinode-demo/setup.sh @@ -10,9 +10,18 @@ rm -rf "$SOLANA_CONFIG_DIR"/bootstrap-leader mkdir -p "$SOLANA_CONFIG_DIR"/bootstrap-leader # Create genesis ledger -$solana_keygen new -f -o "$SOLANA_CONFIG_DIR"/mint-keypair.json +if [[ -r $MINT_KEYPAIR ]]; then + cp -f "$MINT_KEYPAIR" "$SOLANA_CONFIG_DIR"/mint-keypair.json +else + $solana_keygen new -f -o "$SOLANA_CONFIG_DIR"/mint-keypair.json +fi + +if [[ -f $BOOTSTRAP_LEADER_IDENTITY_KEYPAIR ]]; then + cp -f "$BOOTSTRAP_LEADER_IDENTITY_KEYPAIR" "$SOLANA_CONFIG_DIR"/bootstrap-leader/identity-keypair.json +else + $solana_keygen new -o "$SOLANA_CONFIG_DIR"/bootstrap-leader/identity-keypair.json +fi -$solana_keygen new -o "$SOLANA_CONFIG_DIR"/bootstrap-leader/identity-keypair.json $solana_keygen new -o "$SOLANA_CONFIG_DIR"/bootstrap-leader/vote-keypair.json $solana_keygen new -o "$SOLANA_CONFIG_DIR"/bootstrap-leader/stake-keypair.json $solana_keygen new -o "$SOLANA_CONFIG_DIR"/bootstrap-leader/storage-keypair.json diff --git a/net/remote/remote-node.sh b/net/remote/remote-node.sh index b3d2136b1a..5c285b58cc 100755 --- a/net/remote/remote-node.sh +++ b/net/remote/remote-node.sh @@ -155,9 +155,18 @@ EOF if [[ -n $internalNodesLamports ]]; then echo "---" >> config/validator-balances.yml - for i in $(seq 0 "$numNodes"); do - solana-keygen new -o config/validator-"$i"-identity.json - pubkey="$(solana-keygen pubkey config/validator-"$i"-identity.json)" + fi + + setupValidatorKeypair() { + declare name=$1 + if [[ -f net/keypairs/"$name".json ]]; then + cp net/keypairs/"$name".json config/"$name".json + else + solana-keygen new -o config/"$name".json + fi + if [[ -n $internalNodesLamports ]]; then + declare pubkey + pubkey="$(solana-keygen pubkey config/"$name".json)" cat >> config/validator-balances.yml <