Stacking Sats Kraken: Improve data location and script

This commit is contained in:
Dennis Reimann 2020-06-29 22:30:01 +02:00
parent 4ed3c18776
commit feba4c3137
No known key found for this signature in database
GPG key ID: 5009E1797F03F8D0

View file

@ -3,6 +3,8 @@
# https://github.com/dennisreimann/stacking-sats-kraken
USERNAME=stackingsats
CONFIG_FILE=/mnt/hdd/app-data/stacking-sats-kraken/.env
SCRIPT_NAME=stack-sats.sh
# command info
if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then
@ -26,28 +28,36 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then
# install stacking-sats-kraken
cd /home/$USERNAME
sudo -u $USERNAME git clone https://github.com/dennisreimann/stacking-sats-kraken.git stacking-sats-kraken
sudo -u $USERNAME git clone https://github.com/dennisreimann/stacking-sats-kraken.git
cd stacking-sats-kraken
sudo -u $USERNAME npm install
# setup stacking config
sudo mkdir /mnt/hdd/app-data/stacking-sats-kraken
sudo chown $USERNAME:$USERNAME /mnt/hdd/app-data/stacking-sats-kraken
configFile=/home/admin/stacking-sats-kraken.env
touch $configFile
sudo chmod 600 $configFile || exit 1
cat > $configFile <<EOF
echo '# Required settings
KRAKEN_API_KEY="apiKeyFromTheKrakenSettings"
KRAKEN_API_SECRET="privateKeyFromTheKrakenSettings"
KRAKEN_API_FIAT="USD"
KRAKEN_BUY_AMOUNT=21
# Optional settings for confirmation mail  requires `blitz.notify.sh on`
# KRAKEN_MAIL_SUBJECT="Sats got stacked"
# KRAKEN_MAIL_FROM_ADDRESS="humble@satstacker.org"
# KRAKEN_MAIL_FROM_NAME="Humble Satstacker"
# Remove this line after verifying everything works
KRAKEN_DRY_RUN_PLACE_NO_ORDER=1
EOF
sudo mv $configFile /home/$USERNAME/.config/stacking-sats-kraken.env
sudo chown $USERNAME:$USERNAME /home/$USERNAME/.config/stacking-sats-kraken.env
' > $configFile
sudo mv $configFile $CONFIG_FILE
sudo chown $USERNAME:$USERNAME $CONFIG_FILE
# setup stacking script
scriptFile=/home/admin/stack-sats-kraken.sh
scriptFile="/home/admin/$SCRIPT_NAME"
touch $scriptFile
sudo chmod 700 $scriptFile || exit 1
echo '#!/bin/bash
@ -57,7 +67,7 @@ set -e
export NODE_OPTIONS="--no-deprecation"
# load config
set -a; source ~/.config/stacking-sats-kraken.env; set +a
set -a; source /mnt/hdd/app-data/stacking-sats-kraken/.env; set +a
# run script
cd ~/stacking-sats-kraken
@ -68,25 +78,21 @@ else
fi
echo "$result"
# optional: send email  requires `blitz.notify.sh on`
# /home/admin/config.scripts/blitz.notify.sh send "$result" --subject "Sats got stacked"' > $scriptFile
# send email
if [[ ${KRAKEN_MAIL_SUBJECT} && ${KRAKEN_MAIL_FROM_ADDRESS} && ${KRAKEN_MAIL_FROM_NAME} ]]; then
/home/admin/config.scripts/blitz.notify.sh send "$result" \
--subject "$KRAKEN_MAIL_SUBJECT" \
--from-name "$KRAKEN_MAIL_FROM_NAME" \
--from-address "$KRAKEN_MAIL_FROM_ADDRESS"
fi
' > $scriptFile
sudo mv $scriptFile /home/$USERNAME/stack-sats-kraken.sh
sudo chown $USERNAME:$USERNAME /home/$USERNAME/stack-sats-kraken.sh
sudo mv $scriptFile /home/$USERNAME/$SCRIPT_NAME
sudo chown $USERNAME:$USERNAME /home/$USERNAME/$SCRIPT_NAME
echo "OK - the STACKING-SATS-KRAKEN script is now installed."
echo ""
echo "You need to adapt the settings in /home/$USERNAME/.config/stacking-sats-kraken.env"
cron_count=$(crontab -l | grep "stack-sats.sh" -c)
if [ "${cron_count}" = "0" ]; then
echo ""
echo "You might want to set up a cronjob to run the script in regular intervals."
echo "Switch to the '$USERNAME' user and add it using the 'crontab -e' command."
echo "Here is an example for daily usage at 6:15am..."
echo ""
echo "15 6 * * * /home/$USERNAME/stack-sats.sh"
fi
echo "Switch to the '$USERNAME' user and adapt the settings in $CONFIG_FILE"
# setting value in raspi blitz config
sudo sed -i "s/^stackingSatsKraken=.*/stackingSatsKraken=on/g" /mnt/hdd/raspiblitz.conf
@ -94,6 +100,17 @@ echo "$result"
echo "STACKING-SATS-KRAKEN already installed."
fi
cron_count=$(sudo -u $USERNAME crontab -l | grep "$SCRIPT_NAME" -c)
if [ "${cron_count}" = "0" ]; then
echo ""
echo "You might want to set up a cronjob to run the script in regular intervals."
echo "As the '$USERNAME' user you can run the 'crontab -e' command."
echo ""
echo "Here is an example for daily usage at 6:15am ..."
echo ""
echo "15 6 * * * /home/$USERNAME/$SCRIPT_NAME"
fi
exit 0
fi
@ -108,13 +125,14 @@ if [ "$1" = "0" ] || [ "$1" = "off" ]; then
# setting value in raspi blitz config
sudo sed -i "s/^stackingSatsKraken=.*/stackingSatsKraken=off/g" /mnt/hdd/raspiblitz.conf
sudo rm -rf /home/$USERNAME/stack-sats-kraken.sh
# remove script and config
sudo rm -rf /home/$USERNAME/$SCRIPT_NAME
sudo rm -rf /home/$USERNAME/stacking-sats-kraken
sudo rm -f /home/$USERNAME/.config/stacking-sats-kraken.env
sudo rm -rf /mnt/hdd/app-data/stacking-sats-kraken
echo "OK STACKING-SATS-KRAKEN removed."
cron_count=$(crontab -l | grep "stack-sats.sh" -c)
cron_count=$(sudo -u $USERNAME crontab -l | grep "$SCRIPT_NAME" -c)
if [ "${cron_count}" != "0" ]; then
echo ""
echo "You should remove any cronjob that ran the script."