name: Build and Push Quarkus Image on: push: branches: [ "main" ] # Pas aan naar jouw hoofdbranch als dit 'master' is env: # VERVANG DIT door de domeinnaam van jouw Gitea server (zonder https://) REGISTRY: git.melvanveen.nl # Dit pakt automatisch de eigenaar en naam van de repo (bijv. username/quarkus-app) IMAGE_NAME: ${{ github.repository }} jobs: build-and-push: runs-on: ubuntu-latest # Zorg dat je Gitea runner Docker ondersteunt permissions: contents: read packages: write steps: - name: Code ophalen uses: actions/checkout@v4 - name: Java 21 instellen uses: actions/setup-java@v4 with: java-version: '21' # Pas aan naar 17 als je Java 17 gebruikt distribution: 'temurin' cache: 'maven' # Dit versnelt volgende builds aanzienlijk - name: Quarkus applicatie bouwen (.jar genereren) run: ./mvnw clean package -DskipTests - name: Inloggen op Gitea Container Registry uses: docker/login-action@v3 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} # Gitea genereert automatisch dit token, net als GitHub. # Deze heeft de rechten om packages te pushen. password: ${{ secrets.CR_PAT }} - name: Docker image bouwen en pushen uses: docker/build-push-action@v5 with: context: . # We gebruiken de standaard JVM Dockerfile van Quarkus file: src/main/docker/Dockerfile.jvm push: true # We taggen de image met 'latest' én met de specifieke commit-hash tags: | ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }}