Files
yourpart3/deploy-frontend.sh
Torsten Schulz (local) 78f4871df0 feat(deploy): Aktualisierung des Deployment-Skripts zur Handhabung der .env-Datei
- Hinzufügen eines Schrittes zum Kopieren der .env-Datei in das Zielverzeichnis.
- Anpassung der Berechtigungen für die .env-Datei und das Frontend-Verzeichnis.
2025-09-03 09:06:20 +02:00

69 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
echo "=== YourPart Frontend Deployment ==="
# 1. Zum Frontend-Verzeichnis wechseln
cd ~/yourpart3/frontend
# 2. Berechtigungen für dist-Verzeichnis korrigieren (falls vorhanden)
if [ -d "dist" ]; then
echo "Korrigiere Berechtigungen für dist-Verzeichnis..."
sudo chown -R $USER:$USER dist/ 2>/dev/null || true
fi
# 3. Altes dist-Verzeichnis löschen
echo "Lösche altes dist-Verzeichnis..."
rm -rf dist/
# 4. Server-Umgebungsvariablen kopieren
echo "Kopiere Server-Umgebungsvariablen..."
cp frontend/.env.server frontend/.env
# 5. Frontend neu bauen
echo "Baue Frontend neu..."
npm run build
if [ $? -ne 0 ]; then
echo "❌ Build fehlgeschlagen!"
exit 1
fi
echo "✅ Build erfolgreich!"
# 6. Zielverzeichnis erstellen (falls nicht vorhanden)
echo "Erstelle Zielverzeichnis..."
sudo mkdir -p /opt/yourpart/frontend/dist
# 7. Altes Frontend löschen
echo "Lösche altes Frontend..."
sudo rm -rf /opt/yourpart/frontend/dist/*
# 8. Neues Frontend kopieren
echo "Kopiere neues Frontend..."
sudo cp -r dist/* /opt/yourpart/frontend/dist/
# 9. .env Datei kopieren
echo "Kopiere .env Datei..."
sudo cp .env.server /opt/yourpart/frontend/
# 10. Berechtigungen setzen
echo "Setze Berechtigungen..."
sudo chown -R www-data:www-data /opt/yourpart/frontend/dist
sudo chown www-data:www-data /opt/yourpart/frontend/.env
sudo chmod -R 755 /opt/yourpart/frontend/dist
sudo chmod 644 /opt/yourpart/frontend/.env
# 11. Apache neu laden
echo "Lade Apache neu..."
sudo systemctl reload apache2
echo ""
echo "=== Frontend Deployment abgeschlossen! ==="
echo "✅ Frontend neu gebaut"
echo "✅ Frontend deployt"
echo "✅ Apache neu geladen"
echo ""
echo "Testen Sie jetzt die Anwendung!"
echo "API-Requests sollten jetzt an /api/... gehen statt localhost:3001"