sovereign-stack/deployment/btcpayserver/restore.sh

34 lines
1.4 KiB
Bash
Raw Normal View History

2022-06-22 17:39:46 +00:00
#!/bin/bash
2022-10-29 15:34:17 +00:00
set -e
2022-07-27 16:38:33 +00:00
cd "$(dirname "$0")"
if [ "$RESTORE_BTCPAY" = false ]; then
exit 0
fi
if [ -f "$BACKUP_BTCPAY_ARCHIVE_PATH" ]; then
2022-07-27 16:38:33 +00:00
# push the restoration archive to the remote server
echo "INFO: Restoring BTCPAY Server: $BACKUP_BTCPAY_ARCHIVE_PATH"
2022-10-27 01:41:14 +00:00
REMOTE_BACKUP_PATH="$REMOTE_HOME/backups/btcpayserver"
2022-06-22 17:39:46 +00:00
ssh "$FQDN" mkdir -p "$REMOTE_BACKUP_PATH"
2022-10-27 01:41:14 +00:00
REMOTE_BTCPAY_ARCHIVE_PATH="$REMOTE_BACKUP_PATH/btcpay.tar.gz"
scp "$BACKUP_BTCPAY_ARCHIVE_PATH" "$FQDN:$REMOTE_BTCPAY_ARCHIVE_PATH"
2022-07-27 16:38:33 +00:00
2022-07-29 22:33:24 +00:00
# we clean up any old containers first before restoring.
ssh "$FQDN" docker system prune -f
2022-07-27 16:38:33 +00:00
# push the modified restore script to the remote directory, set permissions, and execute.
2022-07-29 22:33:24 +00:00
scp ./remote_scripts/btcpay-restore.sh "$FQDN:$REMOTE_HOME/btcpay-restore.sh"
2022-07-27 16:38:33 +00:00
ssh "$FQDN" "sudo mv $REMOTE_HOME/btcpay-restore.sh $BTCPAY_SERVER_APPPATH/btcpay-restore.sh && sudo chmod 0755 $BTCPAY_SERVER_APPPATH/btcpay-restore.sh"
ssh "$FQDN" "cd $REMOTE_HOME/; sudo BTCPAY_BASE_DIRECTORY=$REMOTE_HOME BTCPAY_DOCKER_COMPOSE=$REMOTE_HOME/btcpayserver-docker/Generated/docker-compose.generated.yml bash -c '$BTCPAY_SERVER_APPPATH/btcpay-restore.sh $REMOTE_BTCPAY_ARCHIVE_PATH'"
2022-07-29 22:33:24 +00:00
# now, we're going to take things down because aparently we this needs to be re-exececuted.
ssh "$FQDN" "bash -c $BTCPAY_SERVER_APPPATH/btcpay-down.sh"
2022-06-22 17:39:46 +00:00
else
echo "ERROR: File does not exist."
exit 1
fi