From b409a223228af01826d69aa347c487331ab54679 Mon Sep 17 00:00:00 2001 From: Lars Stommer Date: Tue, 17 Mar 2026 12:53:32 +0100 Subject: [PATCH] ci: add prod and dev deployment workflows --- .gitea/workflows/deploy-dev.yml | 21 ++++++++++++++++++ .gitea/workflows/deploy-prod.yml | 21 ++++++++++++++++++ .gitea/workflows/deploy.yml | 38 -------------------------------- 3 files changed, 42 insertions(+), 38 deletions(-) create mode 100644 .gitea/workflows/deploy-dev.yml create mode 100644 .gitea/workflows/deploy-prod.yml delete mode 100644 .gitea/workflows/deploy.yml diff --git a/.gitea/workflows/deploy-dev.yml b/.gitea/workflows/deploy-dev.yml new file mode 100644 index 0000000..9b3056c --- /dev/null +++ b/.gitea/workflows/deploy-dev.yml @@ -0,0 +1,21 @@ +name: Deploy Development + +on: + push: + branches: [develop] + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Deploy to Development + run: | + set -e + echo "=== Deploying to DEVELOPMENT ===" + cd /home/lars/docker/bodytrack-dev + git pull origin develop + docker compose build --no-cache + docker compose up -d + sleep 5 + curl -sf http://localhost:8099/api/auth/status && echo "? DEV API healthy" + echo "=== DEV Deploy complete ===" diff --git a/.gitea/workflows/deploy-prod.yml b/.gitea/workflows/deploy-prod.yml new file mode 100644 index 0000000..781fa91 --- /dev/null +++ b/.gitea/workflows/deploy-prod.yml @@ -0,0 +1,21 @@ +name: Deploy Production + +on: + push: + branches: [main] + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Deploy to Production + run: | + set -e + echo "=== Deploying to PRODUCTION ===" + cd /home/lars/docker/bodytrack + git pull origin main + docker compose build --no-cache + docker compose up -d + sleep 5 + curl -sf http://localhost:8002/api/auth/status && echo "? API healthy" + echo "=== PROD Deploy complete ===" diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml deleted file mode 100644 index c4ddcf3..0000000 --- a/.gitea/workflows/deploy.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: Deploy to Raspberry Pi - -on: - push: - branches: [main] - -jobs: - deploy: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Deploy via SSH - uses: appleboy/ssh-action@v1.0.0 - with: - host: ${{ secrets.DEPLOY_HOST }} - username: ${{ secrets.DEPLOY_USER }} - key: ${{ secrets.DEPLOY_SSH_KEY }} - script: | - set -e - cd /home/lars/docker/mitai - - echo "=== Pulling latest code ===" - git pull origin main - - echo "=== Rebuilding containers ===" - docker compose build --no-cache - - echo "=== Restarting ===" - docker compose up -d - - echo "=== Health check ===" - sleep 5 - docker ps | grep jinkendo - curl -sf http://localhost:8002/api/auth/status | python3 -c "import sys,json; d=json.load(sys.stdin); print('✓ API healthy')" || echo "⚠ API check failed" - - echo "=== Deploy complete ==="