-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup.sh
140 lines (100 loc) · 2.63 KB
/
setup.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
#!/bin/bash
echo "=== Verifica aggiornamenti e installazione python3-venv... ===
"
sudo apt update && sudo apt upgrade -y && sudo apt install -y python3-venv
sleep 1
echo "
=== Clonazione del progetto ===
"
git clone https://github.com/2ale2/googleplaycheckertelegrambot_v2.git || {
echo "Errore durante la clonazione del repository"
exit 1
}
cd googleplaycheckertelegrambot_v2 || exit
mkdir logs
REPO_PATH="$(pwd)/googleplaycheckertelegrambot_v2"
sleep 1
echo "
=== Aggiungendo il modulo 'modules' al PYTHONPATH ==="
if ! grep -q "$REPO_PATH" ~/.bashrc; then
echo "export PYTHONPATH=\$PYTHONPATH:$REPO_PATH" >> ~/.bashrc
echo "
=== Percorso aggiunto a PYTHONPATH ==="
else
echo "
=== i - Il percorso è già presente in PYTHONPATH ==="
fi
source "$HOME/.bashrc"
sleep 2
echo "
=== Creazione dell'ambiente virtuale ==="
python3 -m venv .venv || {
echo "Errore durante la creazione dell'ambiente virtuale"
exit 1
}
sleep 2
source .venv/bin/activate
sleep 1
if ! command -v pip &> /dev/null; then
echo "pip non è installato. Vuoi installarlo? (y/n)"
read -r install_pip
if [[ $install_pip == "y" ]]; then
sudo apt install -y python3-pip || {
echo "Errore durante l'installazione di pip."
exit 1
}
else
echo "E' necessario avere pip per procedere."
exit 1
fi
fi
echo "
=== Installazione delle dipendenze ==="
pip install -r requirements.txt || {
echo "Errore durante l'installazione delle dipendenze
"
exit 1
}
pip install "python-telegram-bot[callback-data]"
pip install "python-telegram-bot[job-queue]"
sleep 2
echo "
=== Decrittografia del file .env crittografato... ==="
success=0
max_attempts=3
attempts=0
sleep 2
while [ $success -eq 0 ] && [ $attempts -lt $max_attempts ]; do
((attempts++))
echo "
> Tentativo $attempts di $max_attempts"
read -sp ">> Inserisci la password per decrittografare il file .env:" password
echo
if gpg --batch --passphrase "$password" -d .env.gpg > .env; then
success=1
echo "
i - .env decrittografato con successo."
else
echo "
i - Password errata. Riprova."
fi
done
if [ $success -eq 0 ]; then
echo "Errore: troppi tentativi falliti. Uscita dal processo."
exit 1
fi
sleep 2
if [ -f ".env" ]; then
echo "
=== Il file .env è stato creato ==="
fi
sleep 2
echo "
======== Configurazione completata ========
Per avviare il bot, esegui questi comandi:
1. cd googleplaycheckertelegrambot_v2
2. source .venv/bin/activate
3. python3 modules/main.py
i - E' consigliabile aggiungere lo script come servizio per non doverlo avviare manualmente ogni volta
"
sleep 2