Uname:Linux antigravity-cli 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024 x86_64

Base Dir : /var/www/moonbloom

User : wp-moonbloom


403WebShell
403Webshell
Server IP : 85.155.190.233  /  Your IP : 216.73.216.103
Web Server : nginx/1.24.0
System : Linux antigravity-cli 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024 x86_64
User : wp-moonbloom ( 1001)
PHP Version : 8.3.6
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /opt/Gemini_Swarm_Core/.github/workflows/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/Gemini_Swarm_Core/.github/workflows/deploy.yml
name: CI / Deploy to VPS

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

jobs:
  # ─── Job 1: проверка кода ────────────────────────────────────────────────
  lint:
    name: Syntax Check
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Set up Python 3.12
        uses: actions/setup-python@v5
        with:
          python-version: "3.12"

      - name: Install dependencies
        run: |
          pip install --upgrade pip
          pip install -r Gemini_Swarm_Core/requirements.txt

      - name: Check syntax — tg_bridge.py
        run: python -m py_compile Gemini_Swarm_Core/scripts/tg_bridge.py && echo "✅ Syntax OK"

  # ─── Job 2: деплой на VPS (только main) ─────────────────────────────────
  deploy:
    name: Deploy to VPS
    needs: lint
    runs-on: ubuntu-latest
    if: github.ref == 'refs/heads/main' && github.event_name == 'push'

    steps:
      - name: Write SSH key
        env:
          SSH_KEY: ${{ secrets.VPS_SSH_KEY }}
        run: |
          mkdir -p ~/.ssh
          printf '%s\n' "$SSH_KEY" > ~/.ssh/deploy_key
          chmod 600 ~/.ssh/deploy_key
          ssh-keyscan -p 50022 85.155.190.233 >> ~/.ssh/known_hosts 2>/dev/null
          echo "Key fingerprint:"
          ssh-keygen -lf ~/.ssh/deploy_key

      - name: Deploy via SSH
        run: |
          ssh -i ~/.ssh/deploy_key \
              -p 50022 \
              -o StrictHostKeyChecking=yes \
              root@85.155.190.233 bash << 'ENDSSH'
          set -e
          git config --global --add safe.directory /opt/Gemini_Swarm_Core
          REPO="https://x-access-token:${{ secrets.DEPLOY_TOKEN }}@github.com/Azhy34/Gemini-CLI.git"
          echo "📥 Pulling latest code..."

          # If no valid git repo — init fresh
          if [ ! -f "/opt/Gemini_Swarm_Core/.git/config" ] || ! grep -q "Gemini-CLI" /opt/Gemini_Swarm_Core/.git/config 2>/dev/null; then
            rm -rf /opt/Gemini_Swarm_Core/.git
            cd /opt/Gemini_Swarm_Core
            git init
            git remote add origin "$REPO"
          else
            cd /opt/Gemini_Swarm_Core
            git remote set-url origin "$REPO"
          fi

          git fetch origin main
          git reset --hard origin/main

          echo "🔗 Syncing Gemini_Swarm_Core/ to service root..."
          rsync -a Gemini_Swarm_Core/ .

          echo "🧹 Removing nested Gemini_Swarm_Core/ to prevent CEO path confusion..."
          rm -rf Gemini_Swarm_Core/

          echo "🔄 Syncing MCP config to canonical location (per agy docs)..."
          mkdir -p /root/.gemini/antigravity
          cp .agents/plugins/antigravity-swarm/mcp_config.json \
             /root/.gemini/antigravity/mcp_config.json
          chmod 600 /root/.gemini/antigravity/mcp_config.json
          echo "✅ MCP synced. Servers: $(python3 -c "import json; print(', '.join(json.load(open('/root/.gemini/antigravity/mcp_config.json'))['mcpServers'].keys()))")"

          echo "🔄 Syncing global rules (GEMINI.md) to global path..."
          cp GEMINI.md /root/.gemini/GEMINI.md
          chmod 600 /root/.gemini/GEMINI.md
          echo "✅ Global rules synced."

          echo "🔄 Syncing staged plugin components (rules, config) to active config directory..."
          mkdir -p /root/.gemini/config/plugins/antigravity-swarm
          rsync -a .agents/plugins/antigravity-swarm/ /root/.gemini/config/plugins/antigravity-swarm/
          chmod -R 700 /root/.gemini/config/plugins/antigravity-swarm/
          echo "✅ Staged plugin synced."


          echo "📦 Updating dependencies..."
          # After rsync + nested cleanup, requirements.txt lives at SWARM_ROOT
          venv/bin/pip install -q -r requirements.txt

          echo "⚡ Restarting tg-bridge service..."
          systemctl restart tg-bridge.service

          echo "✅ Deploy complete. Service status:"
          systemctl is-active tg-bridge.service
          ENDSSH

Youez - 2016 - github.com/yon3zu
LinuXploit