name: Build Chain

on:
  pull_request:
    types: [opened, synchronize, reopened, ready_for_review]
    paths-ignore:
      - 'LICENSE*'
      - '.gitignore'
      - '*.md'
      - '*.txt'

jobs:
  build-chain:
    concurrency:
      group: pull_request-${{ github.head_ref }}
      cancel-in-progress: true
    strategy:
      matrix:
        os: [ubuntu-latest, windows-latest]
        java-version: [8, 11]
        maven-version: ['3.8.1']
      fail-fast: true
    runs-on: ${{ matrix.os }}
    name: ${{ matrix.os }} - Java ${{ matrix.java-version }} - Maven
    steps:
      - name: Support long paths
        if: ${{ matrix.os == 'windows-latest' }}
        uses: kiegroup/droolsjbpm-build-bootstrap/.ci/actions/long-paths@main
      - name: Java and Maven Setup
        uses: kiegroup/droolsjbpm-build-bootstrap/.ci/actions/maven@main
        with:
          java-version: ${{ matrix.java-version }}
          maven-version: ${{ matrix.maven-version }}
          cache-key-prefix: ${{ runner.os }}-${{ matrix.java-version }}-maven${{ matrix.maven-version }}
      - name: Build Chain
        uses: kiegroup/droolsjbpm-build-bootstrap/.ci/actions/build-chain@main
        with:
          annotations-prefix: ${{ runner.os }}-${{ matrix.java-version }}/${{ matrix.maven-version }}
          github-token: "${{ secrets.GITHUB_TOKEN }}"
      - name: Surefire Report
        uses: kiegroup/droolsjbpm-build-bootstrap/.ci/actions/surefire-report@main
        if: ${{ always() }}
