# Builds, tests and publishes to maven when a commit is pushed name: CI Tests & Publish on: push: branches: [ 'master' ] paths-ignore: - 'workflows/**' - 'README.md' permissions: contents: read checks: write jobs: build: runs-on: ubuntu-latest steps: - name: 'Checkout for CI 🛎️' uses: actions/checkout@v4 - name: 'Set up JDK 21 📦' uses: actions/setup-java@v4 with: java-version: '21' distribution: 'temurin' - name: 'Build with Gradle 🏗️' uses: gradle/gradle-build-action@v3 with: arguments: build test publish env: SNAPSHOTS_MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }} SNAPSHOTS_MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }} - name: 'Publish Test Report 📊' uses: mikepenz/action-junit-report@v4 if: success() || failure() # always run even if the previous step fails with: report_paths: '**/build/test-results/test/TEST-*.xml'