SpyGuard/update.sh

52 lines
1.8 KiB
Bash
Raw Normal View History

2022-11-06 15:51:33 +01:00
# Checking rights.
if [[ $EUID -ne 0 ]]; then
echo "The update must be run as root. Type in 'sudo bash $0' to run it as root."
exit 1
fi
if [ $PWD = "/usr/share/spyguard" ]; then
echo "[+] Cloning the current repository to /tmp/"
rm -rf /tmp/spyguard/ &> /dev/null
cd /tmp/ && git clone https://github.com/SpyGuard/spyguard
cd /tmp/spyguard && bash update.sh
elif [ $PWD = "/tmp/spyguard" ]; then
echo "[+] Saving SpyGuard backend's SSL configuration in /tmp/"
2022-11-06 15:51:33 +01:00
mv /usr/share/spyguard/server/backend/*.pem /tmp/
echo "[+] Deleting the current SpyGuard folders and files."
rm -rf /usr/share/spyguard/app/
rm -rf /usr/share/spyguard/server/
rm -rf /usr/share/spyguard/analysis/
rm /usr/share/spyguard/update.sh
rm /usr/share/spyguard/uninstall.sh
echo "[+] Copying the new SpyGuard version"
cp -R app/ /usr/share/spyguard/app/
cp -R server/ /usr/share/spyguard/server/
cp -R analysis/ /usr/share/spyguard/analysis/
cp update.sh /usr/share/spyguard/update.sh
cp kiosk.sh /usr/share/spyguard/kiosk.sh
cp uninstall.sh /usr/share/spyguard/uninstall.sh
echo "[+] Retoring the backend's SSL configuration from /tmp/"
mv /tmp/*.pem /usr/share/spyguard/server/backend/
echo "[+] Checking possible new Python dependencies"
python3 -m pip install -r assets/requirements.txt
echo "[+] Updating the database scheme..."
cd /usr/share/spyguard/
sqlite3 database.sqlite3 < /tmp/spyguard/assets/scheme.sql 2>/dev/null
echo "[+] Restarting services"
service spyguard-backend restart
service spyguard-frontend restart
service spyguard-watchers restart
echo "[+] Updating the SpyGuard version"
cd /tmp/spyguard && git tag | tail -n 1 | xargs echo -n > /usr/share/spyguard/VERSION
echo "[+] SpyGuard updated!"
fi