# This workflow will build a package using Maven and then publish it to GitHub packages when a release is created
# For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#apache-maven-with-a-settings-path

name: Build and Test on PR Open

on:
  pull_request:
    types: [ opened, reopened ]
    branches: [ "main" ]


jobs:
  build:

    runs-on: ubuntu-latest
    permissions:
      contents: read

    steps:
      - uses: actions/checkout@v3
      - name: Set up JDK 11
        uses: actions/setup-java@v3
        with:
          java-version: '11'
          distribution: 'adopt-hotspot'
          server-id: github # Value of the distributionManagement/repository/id field of the pom.xml
          settings-path: ${{ github.workspace }} # location for the settings.xml file

      - name: Build with Maven
        run: mvn --file pom.xml -U clean package

      - name: Run unit tests
        run: mvn --file pom.xml -U clean test -Punit-tests

      - name: Run integration tests
        run: mvn --file pom.xml -U clean verify -Pintegration-tests