fix(deploy): provision Falukant release models
All checks were successful
Deploy to production / deploy (push) Successful in 3m3s

This commit is contained in:
Torsten Schulz (local)
2026-09-02 07:44:28 +02:00
parent a3e2aaece8
commit 76da586b8e
2 changed files with 26 additions and 3 deletions

View File

@@ -67,7 +67,7 @@ jobs:
fi fi
# App-Code-Änderungen, die einen echten Deploy benötigen # App-Code-Änderungen, die einen echten Deploy benötigen
if grep -E '^(frontend/|backend/)' changed-files.txt \ if grep -E '^(frontend/|backend/|update(-frontend|-backend)?\.sh$|update\.sh$|deploy-yourpart-bluegreen\.sh$|falukant-models\.env$)' changed-files.txt \
| grep -Ev "$COURSE_SCRIPT_PATTERN" >/dev/null; then | grep -Ev "$COURSE_SCRIPT_PATTERN" >/dev/null; then
echo "app_changed=true" >> "$GITHUB_OUTPUT" echo "app_changed=true" >> "$GITHUB_OUTPUT"
else else

View File

@@ -7,6 +7,7 @@ FRONTEND_DIR="$TARGET_DIR/frontend"
CURRENT_LINK="/opt/yourpart" CURRENT_LINK="/opt/yourpart"
CURRENT_FRONTEND="$CURRENT_LINK/frontend" CURRENT_FRONTEND="$CURRENT_LINK/frontend"
CURRENT_ROOT_ENV="$CURRENT_LINK/.env" CURRENT_ROOT_ENV="$CURRENT_LINK/.env"
MODELS_MANIFEST="$TARGET_DIR/falukant-models.env"
echo "=== YourPart Frontend Update ===" echo "=== YourPart Frontend Update ==="
echo "Ziel: $FRONTEND_DIR" echo "Ziel: $FRONTEND_DIR"
@@ -54,14 +55,36 @@ echo "VITE_CHAT_WS_URL=$VITE_CHAT_WS_URL"
echo "Installiere Dependencies..." echo "Installiere Dependencies..."
npm install npm install
if [ ! -f "$MODELS_MANIFEST" ]; then
echo "ERROR: Falukant model manifest missing: $MODELS_MANIFEST" >&2
exit 1
fi
# Source GLBs are versioned as a Gitea release attachment rather than Git
# objects, keeping routine clones and deployments small.
# shellcheck disable=SC1090
source "$MODELS_MANIFEST"
: "${FALUKANT_MODELS_URL:?Falukant model URL is missing}"
: "${FALUKANT_MODELS_SHA256:?Falukant model checksum is missing}"
MODELS_ARCHIVE="$(mktemp /tmp/falukant-models-XXXXXX.tar.gz)"
trap 'rm -f "$TEMP_ENV" "$MODELS_ARCHIVE"' EXIT
echo "Lade Falukant-3D-Modelle (${FALUKANT_MODELS_URL})..."
curl --fail --location --retry 3 --retry-delay 2 \
--output "$MODELS_ARCHIVE" "$FALUKANT_MODELS_URL"
echo "${FALUKANT_MODELS_SHA256} ${MODELS_ARCHIVE}" | sha256sum --check --status
echo "Entpacke Falukant-3D-Modelle..."
rm -rf "$FRONTEND_DIR/models-src/3d/falukant"
tar -xzf "$MODELS_ARCHIVE" -C "$TARGET_DIR"
echo "Optimiere Falukant-3D-Modelle..." echo "Optimiere Falukant-3D-Modelle..."
npm run optimize-models npm run optimize-models
echo "Baue Frontend..." echo "Baue Frontend..."
npm run build npm run build
rm -f "$TEMP_ENV"
if [ -f "$FRONTEND_DIR/.env" ]; then if [ -f "$FRONTEND_DIR/.env" ]; then
echo "✓ Bestehende .env-Datei wurde beibehalten" echo "✓ Bestehende .env-Datei wurde beibehalten"
else else