solana/snap/hooks/configure

38 lines
976 B
Bash
Executable File

#!/bin/bash -e
echo Stopping daemons
snapctl stop --disable solana.daemon-drone
snapctl stop --disable solana.daemon-leader
snapctl stop --disable solana.daemon-validator
snapctl stop --disable solana.daemon-oom-monitor
mode="$(snapctl get mode)"
if [[ -z "$mode" ]]; then
exit 0
fi
ip_address_arg=-p # Use public IP address (TODO: make this configurable?)
num_tokens="$(snapctl get num-tokens)"
case $mode in
leader+drone)
"$SNAP"/bin/setup.sh ${num_tokens:+-n $num_tokens} ${ip_address_arg} -t leader
snapctl start --enable solana.daemon-drone
snapctl start --enable solana.daemon-leader
;;
leader)
"$SNAP"/bin/setup.sh ${num_tokens:+-n "$num_tokens"} ${ip_address_arg} -t leader
snapctl start --enable solana.daemon-leader
;;
validator)
"$SNAP"/bin/setup.sh ${ip_address_arg} -t validator
snapctl start --enable solana.daemon-validator
;;
*)
echo "Error: Unknown mode: $mode"
exit 1
;;
esac
snapctl start --enable solana.daemon-oom-monitor