59 lines
1.8 KiB
Bash
59 lines
1.8 KiB
Bash
#!/bin/bash
|
|
|
|
# Gitea-Update-Script by worgon12
|
|
|
|
|
|
# Variablen
|
|
GITEA_URL="https://dl.gitea.io/gitea"
|
|
INSTALL_PATH="/usr/local/bin/gitea"
|
|
BACKUP_PATH="/var/lib/gitea/backups"
|
|
CURRENT_VERSION=$(${INSTALL_PATH} --version | awk '{print $3}')
|
|
LATEST_VERSION=$(curl -s https://api.github.com/repos/go-gitea/gitea/releases/latest | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/' | sed 's/^v//')
|
|
DOWNLOAD_URL="${GITEA_URL}/${LATEST_VERSION}/gitea-${LATEST_VERSION}-linux-amd64"
|
|
|
|
# Aktuelle Version anzeigen
|
|
echo "Aktuell installierte Version: ${CURRENT_VERSION}"
|
|
echo "Neueste verfügbare Version: ${LATEST_VERSION}"
|
|
|
|
# Überprüfen, ob eine neue Version verfügbar ist
|
|
if [ "$CURRENT_VERSION" == "$LATEST_VERSION" ]; then
|
|
echo "Gitea ist bereits auf dem neuesten Stand (${CURRENT_VERSION})."
|
|
exit 0
|
|
fi
|
|
|
|
# Backup erstellen
|
|
echo "Erstelle Backup der aktuellen Gitea-Version..."
|
|
mkdir -p ${BACKUP_PATH}
|
|
cp ${INSTALL_PATH} ${BACKUP_PATH}/gitea-$(date +"%Y-%m-%d").bak
|
|
|
|
# Gitea stoppen
|
|
echo "Stoppe Gitea-Dienst..."
|
|
sudo systemctl stop gitea
|
|
|
|
# Neueste Version herunterladen
|
|
echo "Lade Gitea ${LATEST_VERSION} herunter..."
|
|
wget -O /tmp/gitea ${DOWNLOAD_URL}
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "Fehler beim Herunterladen der Gitea-Version ${LATEST_VERSION}. Überprüfe die Version und den Download-Link."
|
|
exit 1
|
|
fi
|
|
|
|
# Alte Version ersetzen
|
|
echo "Ersetze die alte Gitea-Version..."
|
|
chmod +x /tmp/gitea
|
|
sudo mv /tmp/gitea ${INSTALL_PATH}
|
|
|
|
# Berechtigungen anpassen
|
|
echo "Passe Berechtigungen an...
|
|
# INFO: -> gitea:gitea <- ist dein User der rechte hat gitea auszuführen -> Bitte anpassen"
|
|
sudo chown gitea:gitea ${INSTALL_PATH}
|
|
|
|
# Gitea starten
|
|
echo "Starte Gitea-Dienst neu..."
|
|
sudo systemctl start gitea
|
|
|
|
# Versionsinfo anzeigen
|
|
echo "Gitea wurde auf die neueste Version aktualisiert:"
|
|
${INSTALL_PATH} --version
|