Some checks failed
Deploy to production / deploy (push) Failing after 2m6s
- Added new admin functionalities to force pregnancy, clear pregnancy, and trigger birth for characters. - Introduced corresponding routes and controller methods in adminRouter and adminController. - Enhanced the FalukantCharacter model to include pregnancy-related fields. - Created database migration for adding pregnancy columns to the character table. - Updated frontend views and internationalization files to support new pregnancy and birth management features. - Improved user feedback and error handling for these new actions.
69 lines
1.8 KiB
Bash
Executable File
69 lines
1.8 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
TARGET_DIR="${1:?target dir required}"
|
|
STAGE="${2:-production}"
|
|
|
|
BACKEND_DIR="$TARGET_DIR/backend"
|
|
CURRENT_LINK="/opt/yourpart"
|
|
CURRENT_BACKEND="$CURRENT_LINK/backend"
|
|
DATA_DIR="/opt/yourpart-data"
|
|
|
|
echo "Updating YourPart Backend..."
|
|
echo "Ziel: $BACKEND_DIR"
|
|
echo "Using STAGE: $STAGE"
|
|
echo "NOTE: .env files will NOT be overwritten"
|
|
|
|
cd "$BACKEND_DIR"
|
|
|
|
echo "Lösche alle generierten Verzeichnisse..."
|
|
rm -rf node_modules/.cache/
|
|
rm -rf logs/
|
|
rm -rf tmp/
|
|
|
|
echo "Installing dependencies..."
|
|
npm ci --production
|
|
|
|
TEMP_ENV_DIR="/tmp/yourpart-env-backup-$$"
|
|
mkdir -p "$TEMP_ENV_DIR"
|
|
|
|
echo "Sichere .env-Dateien aus $CURRENT_BACKEND..."
|
|
if [ -d "$CURRENT_BACKEND" ]; then
|
|
find "$CURRENT_BACKEND" -maxdepth 1 -name '.env*' -type f -exec cp {} "$TEMP_ENV_DIR/" \; 2>/dev/null || true
|
|
if [ "$(ls -A "$TEMP_ENV_DIR" 2>/dev/null)" ]; then
|
|
echo "✓ .env-Dateien gesichert: $(ls "$TEMP_ENV_DIR")"
|
|
cp "$TEMP_ENV_DIR"/.env* "$BACKEND_DIR"/ 2>/dev/null || true
|
|
else
|
|
echo "⚠ Keine .env-Dateien in $CURRENT_BACKEND gefunden"
|
|
fi
|
|
fi
|
|
|
|
sudo -n mkdir -p "$DATA_DIR/adult-verification"
|
|
|
|
if [ -f "$BACKEND_DIR/.env" ]; then
|
|
echo "✓ .env-Datei ist vorhanden"
|
|
else
|
|
echo "⚠ WARNUNG: Keine .env-Datei in $BACKEND_DIR gefunden!"
|
|
fi
|
|
|
|
echo "Setting permissions..."
|
|
sudo -n chown -R yourpart:yourpart "$BACKEND_DIR"
|
|
sudo -n chmod -R 755 "$BACKEND_DIR"
|
|
sudo -n chown -R yourpart:yourpart "$DATA_DIR"
|
|
sudo -n chmod -R 755 "$DATA_DIR"
|
|
|
|
if [ -f "$BACKEND_DIR/.env" ]; then
|
|
sudo -n chmod 600 "$BACKEND_DIR/.env"
|
|
fi
|
|
|
|
echo "Updating systemd service..."
|
|
sudo -n cp "$TARGET_DIR/yourpart.service" /etc/systemd/system/
|
|
sudo -n systemctl daemon-reload
|
|
|
|
echo "Running database synchronization..."
|
|
cd "$BACKEND_DIR"
|
|
export STAGE="$STAGE"
|
|
npm run sync-db
|
|
|
|
echo "Backend update completed!"
|
|
rm -rf "$TEMP_ENV_DIR" |