name: Keycloak CI on: [push, pull_request] jobs: build: name: Build runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-java@v1 with: java-version: 1.8 - name: Cache Maven packages uses: actions/cache@v2 with: path: ~/.m2/repository key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2 - name: Build run: mvn clean install -B -DskipTests -Pdistribution - name: Tar Maven Repo shell: bash run: tar -czvf maven-repo.tgz -C ~ .m2/repository - name: Persist Maven Repo uses: actions/upload-artifact@v1 with: name: maven-repo path: maven-repo.tgz test: name: Test needs: build runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-java@v1 with: java-version: 1.8 - name: Download Maven Repo uses: actions/download-artifact@v1 with: name: maven-repo path: . - name: Extract Maven Repo shell: bash run: tar -xzvf maven-repo.tgz -C ~ - name: Build testsuite run: mvn clean install -B -Pauth-server-wildfly -DskipTests -f testsuite/pom.xml - name: Run base tests run: mvn clean install -B -Pauth-server-wildfly -f testsuite/integration-arquillian/tests/base/pom.xml | misc/log/trimmer.sh; exit ${PIPESTATUS[0]} test-undertow-map: name: Test undertow - map provider needs: build runs-on: ubuntu-latest env: MAVEN_OPTS: -Xmx2048m steps: - uses: actions/checkout@v2 - uses: actions/setup-java@v1 with: java-version: 1.8 - name: Download Maven Repo uses: actions/download-artifact@v1 with: name: maven-repo path: . - name: Extract Maven Repo shell: bash run: tar -xzvf maven-repo.tgz -C ~ - name: Build testsuite run: mvn clean install -B -DskipTests -f testsuite/pom.xml - name: Run base tests - undertow run: mvn clean install -B -f testsuite/integration-arquillian/tests/base/pom.xml -Dkeycloak.client.provider=map -Dkeycloak.group.provider=map | misc/log/trimmer.sh; exit ${PIPESTATUS[0]}