renew
This commit is contained in:
@@ -1,21 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
BUILD_DIR="$ROOT_DIR/build"
|
||||
STAMP="$(date +%Y%m%d-%H%M%S)"
|
||||
TARGET="$BUILD_DIR/kaffeekasse-saas-$STAMP.tar.gz"
|
||||
|
||||
mkdir -p "$BUILD_DIR"
|
||||
|
||||
tar \
|
||||
--exclude=".git" \
|
||||
--exclude=".env" \
|
||||
--exclude="build" \
|
||||
--exclude="storage/cache/*" \
|
||||
--exclude="storage/logs/*" \
|
||||
--exclude="storage/uploads/*" \
|
||||
-czf "$TARGET" \
|
||||
-C "$ROOT_DIR" .
|
||||
|
||||
echo "Release package created: $TARGET"
|
||||
@@ -1,16 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
cat <<'EOF'
|
||||
Dieses Repo ist fuer Netcup-Deploys per FTPES/SFTP vorbereitet.
|
||||
|
||||
Empfohlener Ablauf:
|
||||
1. build-release.sh lokal oder in CI ausfuehren
|
||||
2. Release nach /apps/kaffeekasse/current hochladen
|
||||
3. Document Root auf /apps/kaffeekasse/current/public setzen
|
||||
4. Anschliessend per Scheduled Task oder Shell starten:
|
||||
/usr/local/php83/bin/php /apps/kaffeekasse/current/bin/migrate.php
|
||||
|
||||
Das eigentliche Upload-Kommando haengt von eurem CI-System und den Zugangsdaten ab
|
||||
und bleibt deshalb bewusst ausserhalb des Repos.
|
||||
EOF
|
||||
@@ -1,149 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# Netcup Deployment Script für Kaffeekasse SaaS
|
||||
# Dieses Skript bereitet das Deployment für Netcup Webspace vor
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
ROOT_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
|
||||
BUILD_DIR="$ROOT_DIR/build"
|
||||
STAMP="$(date +%Y%m%d-%H%M%S)"
|
||||
RELEASE_NAME="kaffeekasse-saas-$STAMP"
|
||||
RELEASE_FILE="$BUILD_DIR/$RELEASE_NAME.tar.gz"
|
||||
|
||||
# Farben für Output
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
echo -e "${BLUE}=== Netcup Deployment Vorbereitung ===${NC}"
|
||||
echo "Release: $RELEASE_NAME"
|
||||
echo "Ziel: $RELEASE_FILE"
|
||||
echo
|
||||
|
||||
# Prüfe ob .env.netcup existiert
|
||||
if [ ! -f "$ROOT_DIR/.env.netcup" ]; then
|
||||
echo -e "${RED}Fehler: .env.netcup nicht gefunden!${NC}"
|
||||
echo "Bitte erstellen Sie zuerst eine .env.netcup Datei basierend auf .env.example"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Erstelle Build-Verzeichnis
|
||||
mkdir -p "$BUILD_DIR"
|
||||
|
||||
echo -e "${YELLOW}1. Erstelle Release-Paket...${NC}"
|
||||
|
||||
# Erstelle Release mit allen notwendigen Dateien
|
||||
tar \
|
||||
--exclude=".git" \
|
||||
--exclude=".env" \
|
||||
--exclude=".env.example" \
|
||||
--exclude="build" \
|
||||
--exclude="storage/cache/*" \
|
||||
--exclude="storage/logs/*" \
|
||||
--exclude="storage/uploads/*" \
|
||||
--exclude="storage/database.sqlite" \
|
||||
--exclude="storage/test.sqlite" \
|
||||
--exclude="debug_pdo.php" \
|
||||
--exclude="*_test.php" \
|
||||
--exclude="router_test.php" \
|
||||
--exclude="bootstrap_test.php" \
|
||||
-czf "$RELEASE_FILE" \
|
||||
-C "$ROOT_DIR" .
|
||||
|
||||
echo -e "${GREEN}✓ Release-Paket erstellt: $RELEASE_FILE${NC}"
|
||||
|
||||
# Erstelle Deployment-Anweisungen
|
||||
INSTRUCTIONS_FILE="$BUILD_DIR/$RELEASE_NAME-deployment-instructions.txt"
|
||||
|
||||
cat > "$INSTRUCTIONS_FILE" << EOF
|
||||
=== Netcup Deployment Anweisungen für $RELEASE_NAME ===
|
||||
|
||||
1. VORBEREITUNG IN NETCUP WCP/PLESK:
|
||||
- Domain/Subdomain anlegen
|
||||
- Document Root auf /apps/kaffeekasse/current/public setzen
|
||||
- MySQL Datenbank und User anlegen
|
||||
- PHP Version auf 8.3 oder 8.4 setzen
|
||||
|
||||
2. UPLOAD:
|
||||
- $RELEASE_NAME.tar.gz per FTPES/SFTP nach /apps/kaffeekasse/ hochladen
|
||||
- Entpacken: tar -xzf $RELEASE_NAME.tar.gz
|
||||
- Umbenennen: mv kaffeekasse-saas-* current
|
||||
|
||||
3. KONFIGURATION:
|
||||
- .env.netcup als .env in /apps/kaffeekasse/current/ kopieren
|
||||
- Anpassen der Werte in .env:
|
||||
* APP_URL=https://ihre-domain.tld
|
||||
* APP_KEY=32-stelliger-zufälliger-schlüssel
|
||||
* DB_NAME, DB_USER, DB_PASS entsprechend MySQL-Setup
|
||||
* MAIL_FROM, MAIL_REPLY_TO entsprechend Domain
|
||||
* RFID_SHARED_SECRET=sicherer-zufälliger-wert
|
||||
|
||||
4. INSTALLATION:
|
||||
- Browser-Installer: https://ihre-domain.tld/install
|
||||
- ODER manuell: /usr/local/php83/bin/php /apps/kaffeekasse/current/bin/migrate.php
|
||||
|
||||
5. CRON-JOBS EINRICHTEN:
|
||||
- Alle 5 Minuten: /usr/local/php83/bin/php /apps/kaffeekasse/current/bin/cron.php
|
||||
- Täglich: /usr/local/php83/bin/php /apps/kaffeekasse/current/bin/healthcheck.php
|
||||
|
||||
6. SSL/HTTPS:
|
||||
- Let's Encrypt Zertifikat in WCP aktivieren
|
||||
- HTTPS erzwingen
|
||||
|
||||
7. TESTS:
|
||||
- Startseite aufrufen
|
||||
- Admin-Login testen (/admin/login)
|
||||
- Mandant anlegen und testen
|
||||
- Healthcheck ausführen
|
||||
|
||||
Weitere Details: siehe docs/go-live-checklist-netcup.md
|
||||
EOF
|
||||
|
||||
echo -e "${GREEN}✓ Deployment-Anweisungen erstellt: $INSTRUCTIONS_FILE${NC}"
|
||||
|
||||
# Erstelle .htaccess Backup-Info
|
||||
HTACCESS_INFO="$BUILD_DIR/$RELEASE_NAME-htaccess-info.txt"
|
||||
|
||||
cat > "$HTACCESS_INFO" << EOF
|
||||
=== .htaccess Konfiguration für Netcup ===
|
||||
|
||||
Die mitgelieferte public/.htaccess sollte auf Netcup funktionieren.
|
||||
Falls Probleme auftreten, hier die wichtigsten Einstellungen:
|
||||
|
||||
1. URL Rewriting:
|
||||
RewriteEngine On
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteRule ^(.*)$ index.php [QSA,L]
|
||||
|
||||
2. Sicherheit:
|
||||
- Zugriff auf .env, .git, etc. blockiert
|
||||
- PHP-Dateien außerhalb public/ nicht erreichbar
|
||||
|
||||
3. Bei Problemen:
|
||||
- Prüfen ob mod_rewrite aktiviert ist
|
||||
- AllowOverride All in Apache-Konfiguration
|
||||
- Bei Fehlern: Apache Error Log prüfen
|
||||
|
||||
Die aktuelle .htaccess ist bereits im Release enthalten.
|
||||
EOF
|
||||
|
||||
echo -e "${GREEN}✓ .htaccess Info erstellt: $HTACCESS_INFO${NC}"
|
||||
|
||||
# Zeige Zusammenfassung
|
||||
echo
|
||||
echo -e "${BLUE}=== Deployment bereit ===${NC}"
|
||||
echo -e "Release-Paket: ${GREEN}$RELEASE_FILE${NC}"
|
||||
echo -e "Anweisungen: ${GREEN}$INSTRUCTIONS_FILE${NC}"
|
||||
echo -e "Größe: ${GREEN}$(du -h "$RELEASE_FILE" | cut -f1)${NC}"
|
||||
echo
|
||||
echo -e "${YELLOW}Nächste Schritte:${NC}"
|
||||
echo "1. Release-Paket nach Netcup hochladen"
|
||||
echo "2. .env.netcup anpassen und als .env hochladen"
|
||||
echo "3. Deployment-Anweisungen befolgen"
|
||||
echo "4. Go-Live Checkliste abarbeiten (docs/go-live-checklist-netcup.md)"
|
||||
echo
|
||||
echo -e "${GREEN}Deployment-Vorbereitung abgeschlossen!${NC}"
|
||||
Reference in New Issue
Block a user