#!/bin/bash
set -e

SSH_HOST="ssh.cluster110.hosting.ovh.net"
SSH_USER="baumberg-ssh"
SSH_PORT="22"
REMOTE_PATH="/home/baumberg-ssh/evio-app"
SSH="ssh -p $SSH_PORT $SSH_USER@$SSH_HOST"

echo "==> Build assets..."
npm run build

echo "==> Sync files..."
rsync -avz --progress \
  --exclude='.git' \
  --exclude='node_modules' \
  --exclude='.env' \
  --exclude='storage/logs/*' \
  --exclude='storage/framework/cache/*' \
  --exclude='storage/framework/sessions/*' \
  --exclude='storage/framework/views/*' \
  -e "ssh -p $SSH_PORT" \
  ./ $SSH_USER@$SSH_HOST:$REMOTE_PATH/

echo "==> Set permissions..."
$SSH "chmod -R 755 $REMOTE_PATH/storage $REMOTE_PATH/bootstrap/cache"

echo "==> Install composer dependencies..."
$SSH "cd $REMOTE_PATH && php composer.phar install --no-dev --optimize-autoloader 2>/dev/null || composer install --no-dev --optimize-autoloader"

echo "==> Run migrations..."
$SSH "cd $REMOTE_PATH && php artisan migrate --force"

echo "==> Clear & cache config..."
$SSH "cd $REMOTE_PATH && php artisan config:cache && php artisan route:cache && php artisan view:cache"

echo "==> Done! https://app.evio.fr"
