Skip to content

Instantly share code, notes, and snippets.

@Angel777d
Last active September 28, 2021 13:20
Show Gist options
  • Save Angel777d/21933a5c18ab39d63d403b1395a7b7c0 to your computer and use it in GitHub Desktop.
Save Angel777d/21933a5c18ab39d63d403b1395a7b7c0 to your computer and use it in GitHub Desktop.
telegram bot install script example
#!/usr/bin/env bash
BASEDIR=$(dirname "$0")
cd "$BASEDIR" || exit
echo ".... Locale setup."
sudo apt install language-pack-ru
echo ".... Install python env"
sudo apt install -y python3 python3-venv
echo ".... Create new venv env."
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install -r requirements.txt
echo ".... Allow start.sh execute."
chmod +x ./start.sh
echo ".... Prepare config.json."
FILE=config.json
if [ -f "$FILE" ]; then
echo "...... File config.json already exists."
else
cp template.config.json config.json
echo "...... New config.json created."
fi
echo ".... Setup bot service."
SERVICE_NAME=EbashiBot
SERVICE_FILE=$SERVICE_NAME.service
SERVICE_PATH=/etc/systemd/system
SERVICE_CONTENT="[Unit]
Description=$SERVICE_NAME Telegram bot service
After=network.target
After=systemd-user-sessions.service
After=network-online.target
[Service]
User=telegram
ExecStart=$PWD/start.sh
Restart=on-failure
RestartSec=15
[Install]
WantedBy=multi-user.target"
echo "$SERVICE_CONTENT" > $SERVICE_FILE
sudo mv $SERVICE_FILE $SERVICE_PATH
sudo systemctl daemon-reload
sudo systemctl start $SERVICE_NAME
sudo systemctl stop $SERVICE_NAME
sudo systemctl enable $SERVICE_NAME
echo ".... Install done."
#!/usr/bin/env bash
BASEDIR=$(dirname "$0")
cd $BASEDIR
source .venv/bin/activate
PYTHONPATH=$BASEDIR/../py-telegram-bot-api:$PYTHONPATH
PYTHONPATH=$BASEDIR/../py-telegram-bot-api-framework:$PYTHONPATH
export PYTHONPATH
python3 start.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment