auto updater separated didnt work :c
All checks were successful
Check scripts syntax / check-scripts-syntax (push) Successful in 3s

This commit is contained in:
Jose Henrique 2024-12-28 21:58:40 -03:00
parent 05c9c0396a
commit 51e9dcc9c9
2 changed files with 32 additions and 54 deletions

View File

@ -1,48 +0,0 @@
#!/bin/bash
RED='\033[1;31m'
NC='\033[0m'
LIGHT_BLUE='\033[1;34m'
LIGHT_GREEN='\033[1;32m'
LIGHT_GREY='\033[0;37m'
# Variables
# check if FILE_NAME is set
if [ -z "$FILE_NAME" ]; then
echo -e "${RED}[x] Error: FILE_NAME is not set.${NC}" >&2
exit 1
fi
SERVER_FILE="https://git.ivanch.me/ivanch/server-scripts/raw/branch/main/$FILE_NAME"
SERVER_OK=1
# Check if the server file exists
curl -s --head $SERVER_FILE | head -n 1 | grep -E "HTTP/[12] [23].." > /dev/null
if [ $? -ne 0 ]; then
echo -e "${RED}[x] Error: $SERVER_FILE not found.${NC}" >&2
SERVER_OK=0
fi
if [ $SERVER_OK -eq 1 ]; then
echo -e "${LIGHT_BLUE}[i] Running auto-update"
# Compare the local and server files sha256sum to check if an update is needed
LOCAL_SHA256=$(sha256sum $FILE_NAME | awk '{print $1}')
SERVER_SHA256=$(curl -s $SERVER_FILE | sha256sum | awk '{print $1}')
if [ "$LOCAL_SHA256" != "$SERVER_SHA256" ]; then
echo -e "${LIGHT_GREY}[i] Updating $FILE_NAME${NC}"
curl -s -o $FILE_NAME $SERVER_FILE
chmod +x $FILE_NAME
echo -e "${LIGHT_GREEN}[i] $FILE_NAME updated.${NC}"
echo -e "${LIGHT_BLUE}[i] Running updated $FILE_NAME...${NC}"
./$FILE_NAME
exit 2
else
echo -e "${LIGHT_GREEN}[i] $FILE_NAME is already up to date.${NC}"
exit 0
fi
fi

View File

@ -1,20 +1,46 @@
#!/bin/bash
NC='\033[0m'
LIGHT_GREEN='\033[1;32m'
LIGHT_BLUE='\033[1;34m'
LIGHT_GREEN='\033[1;32m'
LIGHT_GREY='\033[0;37m'
### AUTO-UPDATER ###
export FILE_NAME="docker-updater.sh"
SERVER_AU="https://git.ivanch.me/ivanch/server-scripts/raw/branch/main/auto-updater.sh"
FILE_NAME="docker-updater.sh"
SERVER_FILE="https://git.ivanch.me/ivanch/server-scripts/raw/branch/main/$FILE_NAME"
SERVER_OK=1
# Run auto-updater script
UPDATER=$(curl -sSL $SERVER_AU | tee /dev/tty | bash)
# Check if the server file exists
curl -s --head $SERVER_FILE | head -n 1 | grep -E "HTTP/[12] [23].." > /dev/null
if [ $? -eq 2 ]; then
if [ $? -ne 0 ]; then
echo -e "${RED}[x] Error: $SERVER_FILE not found.${NC}" >&2
SERVER_OK=0
fi
if [ $SERVER_OK -eq 1 ]; then
echo -e "${LIGHT_BLUE}[i] Running auto-update"
# Compare the local and server files sha256sum to check if an update is needed
LOCAL_SHA256=$(sha256sum $FILE_NAME | awk '{print $1}')
SERVER_SHA256=$(curl -s $SERVER_FILE | sha256sum | awk '{print $1}')
if [ "$LOCAL_SHA256" != "$SERVER_SHA256" ]; then
echo -e "${LIGHT_GREY}[i] Updating $FILE_NAME${NC}"
curl -s -o $FILE_NAME $SERVER_FILE
chmod +x $FILE_NAME
echo -e "${LIGHT_GREEN}[i] $FILE_NAME updated.${NC}"
echo -e "${LIGHT_BLUE}[i] Running updated $FILE_NAME...${NC}"
./$FILE_NAME
exit 2
else
echo -e "${LIGHT_GREEN}[i] $FILE_NAME is already up to date.${NC}"
exit 0
fi
fi
####################