hetzner-devops/drone-setup-complete.md

2.6 KiB

Drone CI Setup - Final Configuration

Status: 90% Complete

COMPLETED

  1. VM Created: drone-vm (10.10.10.112)
  2. Docker Installed: Docker + Docker Compose
  3. Drone Server Running: Port 80 in VM
  4. Traefik Configured: https://drone.nsntr.id routing ready
  5. RPC Secret Generated: be18be17320bf1b92bd77dd681cce7c4

🔄 REMAINING STEP: OAuth Application Setup

Manual Steps Required in Gitea:

  1. Login to Gitea:

  2. Create OAuth Application:

    • Go to: Settings → Applications → Create New OAuth2 Application
    • Application Name: Drone CI
    • Redirect URI: https://drone.nsntr.id/login
    • Click "Create Application"
  3. Get Client Credentials:

    • Copy Client ID and Client Secret
    • Update Drone configuration with these values
  4. Update Drone Config:

    # SSH into drone-vm and update docker-compose.yml
    incus exec drone-vm -- bash
    cd /opt/drone
    
    # Edit docker-compose.yml - replace:
    - DRONE_GITEA_CLIENT_ID=<actual-client-id>
    - DRONE_GITEA_CLIENT_SECRET=<actual-client-secret>
    
    # Restart Drone
    docker compose down && docker compose up -d
    

🎯 CURRENT ARCHITECTURE

┌─────────────────────────────────────────────────────────────────────┐
│ DEVOPS STACK - READY FOR PRODUCTION                                │
├─────────────────────────────────────────────────────────────────────┤
│ traefik-svc     │ 10.10.10.10   │ ✅ HTTPS Proxy & SSL             │
│ gitea-svc       │ 10.10.10.148  │ ✅ Git Repository Hosting        │
│ drone-vm        │ 10.10.10.112  │ 🔄 CI/CD Pipeline (OAuth Setup) │
└─────────────────────────────────────────────────────────────────────┘

🔗 ACCESS URLS

📝 NEXT STEPS

  1. Complete OAuth setup in Gitea
  2. Test Drone CI login
  3. Create first CI/CD pipeline
  4. Update devops-progress-update.md

Progress: 90% Complete ETA: 10 minutes to complete OAuth setup