Improve: deploy script with git pull, npm build, composer

main
boban 2026-04-18 22:49:55 +02:00
parent 55f560d554
commit 977ddf5ef6
1 changed files with 53 additions and 12 deletions

View File

@ -1,22 +1,63 @@
#!/bin/bash #!/bin/bash
set -e set -e
echo "🚀 Aziros deploying..." MODE=${1:-production}
if [ "$MODE" = "staging" ]; then
COMPOSE="docker-compose.staging.yml"
BUILD_CMD="npm run build:staging"
else
COMPOSE="docker-compose.yml"
BUILD_CMD="npm run build:prod"
fi
echo "🚀 Aziros deploying... ($MODE)"
cd ~/aziros cd ~/aziros
# Migrations ausführen # Git Pull
docker compose exec app php artisan migrate --force echo "→ Code aktualisieren..."
git pull origin main
# Composer
echo "→ Composer install..."
docker compose -f $COMPOSE exec -T app \
composer install --no-dev --optimize-autoloader
# NPM Build
echo "→ Assets bauen..."
docker compose -f $COMPOSE exec -T app \
npm install --silent
docker compose -f $COMPOSE exec -T app \
$BUILD_CMD
# Migrations
echo "→ Migrationen..."
docker compose -f $COMPOSE exec -T app \
php artisan migrate --force
# Cache leeren # Cache leeren
docker compose exec app php artisan config:clear echo "→ Cache leeren..."
docker compose exec app php artisan cache:clear docker compose -f $COMPOSE exec -T app \
docker compose exec app php artisan view:clear php artisan config:clear
docker compose exec app php artisan route:clear docker compose -f $COMPOSE exec -T app \
php artisan cache:clear
docker compose -f $COMPOSE exec -T app \
php artisan view:clear
docker compose -f $COMPOSE exec -T app \
php artisan route:clear
# Caches neu aufbauen # Cache neu aufbauen
docker compose exec app php artisan config:cache echo "→ Cache aufbauen..."
docker compose exec app php artisan route:cache docker compose -f $COMPOSE exec -T app \
docker compose exec app php artisan view:cache php artisan config:cache
docker compose -f $COMPOSE exec -T app \
php artisan route:cache
docker compose -f $COMPOSE exec -T app \
php artisan view:cache
echo "✅ Deploy fertig!" # Services neu starten
echo "→ Services neu starten..."
docker compose -f $COMPOSE restart \
worker scheduler mail-worker reverb
echo "✅ Deploy fertig! ($MODE)"