name: Auto-Deploy to Proxmox
on:
  push:
    branches:
      - master  # Oder 'main'

jobs:
  build-and-run:
    runs-on: ubuntu-latest
    # Dies ist der "Trick", um den Host-Modus ohne :host Label zu erzwingen:
    container:
      image: "" 
    
    steps:
      - name: Checkout Code
        uses: actions/checkout@v3
        with:
          fetch-depth: 0

      - name: Set up Java 21
        # HINWEIS: Da wir auf dem 'Host' (dem Runner-Container) laufen, 
        # muss Java 21 dort installiert sein oder durch diesen Step geladen werden.
        uses: actions/setup-java@v3
        with:
          java-version: '21'
          distribution: 'temurin'

      - name: Build Docker Image (Gradle)
        # Da der Runner Zugriff auf /var/run/docker.sock hat, 
        # kann er das Image direkt bauen.
        run: chmod +x gradlew && ./gradlew bootBuildImage --imageName=xxx-sphere-web:latest

      - name: Start Container
        run: docker compose up -d --force-recreate
