Eigenstaendiges Repo: install.sh/update.sh auf tesm-license umgestellt, README + .gitignore
Ausgelagert aus dem TESM-Hauptrepo (srv/tesm-license/, install-license.sh, update-license.sh, zugehoerige systemd-/nginx-Vorlagen) per git-filter-repo, komplette bisherige Historie erhalten. install-license.sh und update-license.sh wurden zu install.sh/update.sh (jetzt die einzigen Skripte in diesem Repo, keine Namenskollision mit TESM mehr noetig). update.sh zeigt jetzt auf dieses eigene Repo/Release-Paket (tesm-license-vX.Y.Z.tar.gz) statt auf das gemeinsame TESM-Paket. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,24 +1,30 @@
|
||||
#!/bin/bash
|
||||
# ============================================================================
|
||||
# TESM-Lizenzserver — Update/Reinstall (Bootstrapper)
|
||||
# Fork von update.sh (TESM selbst) -- lädt dasselbe gepackte Gitea-Release
|
||||
# herunter (das Repo enthält beide Apps: srv/tesm/ UND srv/tesm-license/)
|
||||
# und übergibt an install-license.sh aus dem Paket, statt install.sh.
|
||||
# Lädt ein gepacktes Gitea-Release per HTTP herunter (kein "git clone"
|
||||
# nötig) und übergibt die eigentliche Installations-/Update-Logik an
|
||||
# install.sh aus dem Paket -- das erkennt selbstständig, ob unter
|
||||
# /srv/tesm-license schon eine Installation existiert, und aktualisiert
|
||||
# sie entsprechend (In-Place bei unverändertem Datenbank-Schema, sonst mit
|
||||
# automatischem Backup + Migrations-Sicherheitsnetz samt Rückroll-
|
||||
# Möglichkeit -- siehe install.sh für Details).
|
||||
#
|
||||
# Auszuführen als root auf dem Zielsystem:
|
||||
# sudo ./update-license.sh
|
||||
# sudo ./update.sh
|
||||
# Optional übersteuerbar (z.B. für eine bestimmte Version statt "latest"):
|
||||
# TESM_RELEASE_TAG=v1.0.0 sudo -E ./update-license.sh
|
||||
# TESM_RELEASE_TAG=v1.0.0 sudo -E ./update.sh
|
||||
# Für ein privates Repo wird ein Zugriffstoken benötigt:
|
||||
# TESM_GITEA_USER=alientim TESM_GITEA_TOKEN=<token> sudo -E ./update.sh
|
||||
# ============================================================================
|
||||
set -e
|
||||
|
||||
GITEA_BASE="${TESM_GITEA_BASE:-https://gitea.int.eertmoed.net}"
|
||||
REPO_OWNER="${TESM_REPO_OWNER:-alientim}"
|
||||
REPO_NAME="${TESM_REPO_NAME:-tesm}"
|
||||
REPO_NAME="${TESM_REPO_NAME:-tesm-license}"
|
||||
RELEASE_TAG="${TESM_RELEASE_TAG:-latest}"
|
||||
GITEA_USER="${TESM_GITEA_USER:-}"
|
||||
GITEA_TOKEN="${TESM_GITEA_TOKEN:-}"
|
||||
PACKAGE_NAME="tesm-${RELEASE_TAG}.tar.gz"
|
||||
PACKAGE_NAME="tesm-license-${RELEASE_TAG}.tar.gz"
|
||||
DOWNLOAD_URL="${GITEA_BASE}/${REPO_OWNER}/${REPO_NAME}/releases/download/${RELEASE_TAG}/${PACKAGE_NAME}"
|
||||
|
||||
WORK_DIR="/tmp/tesm-license-update-$(date +%s)"
|
||||
@@ -30,7 +36,7 @@ YELLOW='\033[1;33m'
|
||||
NC='\033[0m'
|
||||
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo "Bitte als root ausführen (sudo ./update-license.sh)." >&2
|
||||
echo "Bitte als root ausführen (sudo ./update.sh)." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -38,10 +44,10 @@ echo -e "${YELLOW}==============================================================
|
||||
echo -e "${YELLOW} TESM-Lizenzserver Update/Reinstall — Release \"${RELEASE_TAG}\"${NC}"
|
||||
echo -e "${YELLOW}============================================================================${NC}"
|
||||
echo
|
||||
echo "Lädt das Release-Paket herunter (enthält TESM und den Lizenzserver"
|
||||
echo "zusammen) und übergibt Installation/Update an install-license.sh"
|
||||
echo "daraus -- deployt ausschließlich srv/tesm-license/, lässt eine"
|
||||
echo "eventuell auf demselben Host vorhandene TESM-Installation unberührt."
|
||||
echo "Lädt das Release-Paket herunter und übergibt Installation/Update an"
|
||||
echo "install.sh daraus -- das erkennt selbst, ob es sich um eine frische"
|
||||
echo "Installation oder ein Update einer bestehenden handelt, und sichert"
|
||||
echo "die Datenbank bei einer Schema-Änderung automatisch vorsorglich ab."
|
||||
echo
|
||||
|
||||
read -r -p "Fortfahren? [y/N] " confirm
|
||||
@@ -64,10 +70,12 @@ mkdir -p "$WORK_DIR/pkg"
|
||||
tar xzf "$PACKAGE_FILE" -C "$WORK_DIR/pkg" --strip-components=1
|
||||
echo -e "${GREEN}✔${NC} Paket entpackt."
|
||||
|
||||
echo -e "${RED}→${NC} Starte install-license.sh aus dem Paket..."
|
||||
bash "$WORK_DIR/pkg/install-license.sh"
|
||||
echo -e "${RED}→${NC} Starte install.sh aus dem Paket..."
|
||||
bash "$WORK_DIR/pkg/install.sh"
|
||||
|
||||
echo
|
||||
echo -e "${GREEN}============================================================================${NC}"
|
||||
echo -e "${GREEN} TESM-Lizenzserver Update/Reinstall (Release \"${RELEASE_TAG}\") abgeschlossen.${NC}"
|
||||
echo -e "${GREEN}============================================================================${NC}"
|
||||
echo "Siehe Ausgabe von install.sh oben für Details (In-Place-Update, frische"
|
||||
echo "Installation, oder Migrationsergebnis inkl. eventuellem Rückroll-Hinweis)."
|
||||
|
||||
Reference in New Issue
Block a user