name: Java CI on: [ push ] jobs: build: runs-on: ubuntu-latest strategy: matrix: database: [ "h2", "postgresql", "mysql", "mariadb" ] steps: # Checkout - name: Configure git to checkout as-is run: git config --global core.autocrlf false - name: Checkout uses: actions/checkout@v4 with: fetch-depth: 0 # Setup - name: Set up GraalVM uses: graalvm/setup-graalvm@v1 with: java-version: "21" distribution: "graalvm" cache: "maven" # Build & Test - name: Build with Maven run: mvn --batch-mode --no-transfer-progress install -Pnative -D"quarkus.datasource.db-kind"=${{ matrix.database }} # Upload artifacts - name: Upload cross-platform app uses: actions/upload-artifact@v4 with: name: commafeed-${{ matrix.database }}-jvm path: commafeed-server/target/commafeed-*.zip - name: Upload native executable uses: actions/upload-artifact@v4 with: name: commafeed-${{ matrix.database }}-${{ runner.os }}-${{ runner.arch }} path: commafeed-server/target/commafeed-*-runner