name: Build and test on: push: branches: [ main ] pull_request: branches: [ main ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up JDK 11 uses: actions/setup-java@v2 with: distribution: 'adopt' java-version: 11 - name: Cache maven repository uses: actions/cache@v2 with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} restore-keys: | ${{ runner.os }}-maven- - name: Build run: mvn -B clean package --file pom.xml - name: Integration test run: mvn -B failsafe:integration-test failsafe:verify --file pom.xml compatibility: runs-on: ubuntu-latest strategy: matrix: keycloak: [ 12.0.4, 13.0.1, 14.0.0 ] steps: - uses: actions/checkout@v2 - name: Set up JDK 11 uses: actions/setup-java@v2 with: distribution: 'adopt' java-version: 11 - name: Cache maven repository uses: actions/cache@v2 with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} restore-keys: | ${{ runner.os }}-maven- - name: Compatibility tests run: mvn -B clean test-compile failsafe:integration-test failsafe:verify --file pom.xml -Dversion.keycloak=${{ matrix.keycloak }}