solana-with-rpc-optimizations/multinode-demo/drone.sh

35 lines
1.0 KiB
Bash
Raw Normal View History

2018-06-24 10:10:55 -07:00
#!/bin/bash
#
# usage: $0 <network path to solana repo on leader machine>
#
here=$(dirname "$0")
# shellcheck source=multinode-demo/common.sh
source "$here"/common.sh
SOLANA_CONFIG_DIR=config-drone
if [[ -d "$SNAP" ]]; then
# Exit if mode is not yet configured
# (typically the case after the Snap is first installed)
[[ -n "$(snapctl get mode)" ]] || exit 0
# Select leader from the Snap configuration
leader_address="$(snapctl get leader-address)"
if [[ -z "$leader_address" ]]; then
# Assume drone is running on the same node as the leader by default
leader_address="localhost"
fi
leader=rsync://"$leader_address"
else
leader=${1:-${here}/..} # Default to local solana repo
fi
set -ex
mkdir -p $SOLANA_CONFIG_DIR
rsync -vz "$leader"/config/leader.json $SOLANA_CONFIG_DIR/
rsync -vz "$leader"/config/mint-demo.json $SOLANA_CONFIG_DIR/
# shellcheck disable=SC2086 # $solana_drone should not be quoted
exec $solana_drone \
-l $SOLANA_CONFIG_DIR/leader.json < $SOLANA_CONFIG_DIR/mint-demo.json