Skip to main content
Glama
deploy.yml2.25 kB
name: Deploy to VPS on: push: branches: [main] workflow_dispatch: jobs: deploy: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Deploy to VPS uses: appleboy/ssh-action@v1.0.3 with: host: ${{ secrets.VPS_HOST }} username: ${{ secrets.VPS_USERNAME }} key: ${{ secrets.VPS_SSH_KEY }} passphrase: ${{ secrets.VPS_SSH_KEY_PASSPHRASE }} script: | cd /opt/paperclip git fetch origin main git reset --hard origin/main echo "🔄 Stopping containers..." docker-compose -f docker-compose.prod.yml down echo "🏗️ Building containers..." docker-compose -f docker-compose.prod.yml build --no-cache echo "🚀 Starting containers..." docker-compose -f docker-compose.prod.yml up -d echo "⏳ Waiting for containers to start..." sleep 10 echo "📊 Container status:" docker-compose -f docker-compose.prod.yml ps --format "table {{.Service}}\t{{.Status}}\t{{.Ports}}" echo "📋 Recent logs from all services (filtered):" docker-compose -f docker-compose.prod.yml logs --tail=30 | grep -E "(ERROR|WARN|INFO|Ready|Starting|Listening)" | head -50 echo "🧹 Cleaning up..." docker system prune -f - name: Show specific service logs on failure if: failure() uses: appleboy/ssh-action@v1.0.3 with: host: ${{ secrets.VPS_HOST }} username: ${{ secrets.VPS_USERNAME }} key: ${{ secrets.VPS_SSH_KEY }} passphrase: ${{ secrets.VPS_SSH_KEY_PASSPHRASE }} script: | cd /opt/paperclip echo "🔍 Filtered logs for debugging:" echo "--- Traefik status ---" docker-compose -f docker-compose.prod.yml logs --tail=50 traefik | grep -E "(ERROR|WARN|Ready|Starting|tls|certificate)" | head -30 echo "--- Paperclip MCP Server status ---" docker-compose -f docker-compose.prod.yml logs --tail=50 paperclip-mcp | grep -E "(ERROR|WARN|Ready|Starting|Listening|Build)" | head -30

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/matsjfunke/paperclip'

If you have feedback or need assistance with the MCP directory API, please join our Discord server