mynode/rootfs/standard/usr/bin/unlock_lnd.sh

43 lines
1.0 KiB
Bash
Raw Normal View History

2019-06-15 23:02:44 +00:00
#!/bin/bash
source /usr/share/mynode/mynode_config.sh
2019-11-10 02:21:25 +00:00
# Wait for LND + BTC to start
2020-05-13 04:02:11 +00:00
sleep 1m
2019-11-10 02:21:25 +00:00
2020-05-14 01:14:18 +00:00
CHECK_RATE="10s"
2019-06-15 23:02:44 +00:00
while true; do
while [ ! -f "$LND_WALLET_FILE" ]; do
echo "Waiting for LND wallet file to exist..."
sleep 30s
done
while [ ! -f "$LND_ADMIN_MACAROON_FILE" ]; do
echo "Waiting for LND admin macaroon file to exist..."
sleep 30s
done
2020-05-13 04:02:11 +00:00
# Wait for lnd to accept logins
until journalctl -r -u lnd --no-pager | head -n 20 | grep "Waiting for wallet encryption password"
do
2020-05-14 01:14:18 +00:00
sleep $CHECK_RATE
2020-05-13 04:02:11 +00:00
done
2020-05-14 01:14:18 +00:00
sleep 5s
2019-06-15 23:02:44 +00:00
echo "Unlocking wallet..."
/usr/bin/expect /usr/bin/unlock_lnd.tcl
if [ $? -eq 0 ]; then
# Unlocked! Verify unlocked every time LND files change
inotifywait -t 600 -r -e modify -e create -e delete /mnt/hdd/mynode/lnd/data/chain/bitcoin/mainnet/ /mnt/hdd/mynode/lnd/tls.cert
2020-05-14 01:14:18 +00:00
# Slow down check rate for next time around
CHECK_RATE="60s"
2019-06-15 23:02:44 +00:00
else
# Failed, try again in 15 seconds
/bin/sleep 15s
fi
done
exit 0