From 5bc2017f3d81b2fa96c6516fabb74f61b03f7d60 Mon Sep 17 00:00:00 2001 From: Marc Mintel Date: Wed, 21 Jan 2026 12:26:20 +0100 Subject: [PATCH] deploy --- .gitea/workflows/deploy.yml | 29 ++++++----------------------- 1 file changed, 6 insertions(+), 23 deletions(-) diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 91e7ef0..4b31c9e 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -36,19 +36,14 @@ jobs: # --- Build image --- - name: Build image run: | - echo "Starting Docker build" docker build \ --pull \ -t registry.infra.mintel.me/mintel/mb-grid-solutions.com:latest . - echo "Docker build completed" - docker images registry.infra.mintel.me/mintel/mb-grid-solutions.com:latest --format "Built image ID: {{.ID}}" # --- Push image --- - name: Push image run: | - echo "Starting Docker push" docker push registry.infra.mintel.me/mintel/mb-grid-solutions.com:latest - echo "Docker push completed" # --- SSH setup --- - name: Setup SSH @@ -61,11 +56,10 @@ jobs: # --- Sync files --- - name: Sync files to server run: | - echo "Starting file sync to server" + # Use tar to bundle files and send them via SSH in a single connection tar czf - docker-compose.yaml | \ ssh -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=no -o IPQoS=0x00 deploy@alpha.mintel.me \ - "mkdir -p /home/deploy/sites/mb-grid-solutions.com/ && tar xzf - -C /home/deploy/sites/mb-grid-solutions.com/ && echo 'Files synced' && ls -la /home/deploy/sites/mb-grid-solutions.com/" - echo "File sync completed" + "mkdir -p /home/deploy/sites/mb-grid-solutions.com/ && tar xzf - -C /home/deploy/sites/mb-grid-solutions.com/" # --- Deploy --- - name: Deploy on server @@ -81,27 +75,16 @@ jobs: cd /home/deploy/sites/mb-grid-solutions.com - echo 'Creating .env...' - cat > .env << 'EOF' -SENTRY_DSN=${{ secrets.SENTRY_DSN }} -SMTP_HOST=${{ secrets.SMTP_HOST }} -SMTP_PORT=${{ secrets.SMTP_PORT }} -SMTP_USER=${{ secrets.SMTP_USER }} -SMTP_PASS=${{ secrets.SMTP_PASS }} -SMTP_FROM=${{ secrets.SMTP_FROM }} -CONTACT_RECIPIENT=${{ secrets.CONTACT_RECIPIENT }} -EOF - echo 'Pulling latest image...' - docker compose pull || echo 'Pull failed - continuing...' + docker compose pull app || echo 'Pull failed - continuing anyway...' echo 'Force recreating and restarting app container...' docker compose up -d --force-recreate --no-deps app - echo 'Pruning old images...' + echo 'Pruning old images (keep last 24h)...' docker image prune -f --filter 'until=24h' - echo 'Deployment finished. Status & logs:' + echo 'Deployment finished. Checking status...' docker compose ps app - docker compose logs --tail=30 app + docker compose logs --tail=20 app " \ No newline at end of file