name: "Build" on: [push, pull_request, workflow_dispatch] jobs: test: name: Test (${{ matrix.java }}) runs-on: ubuntu-18.04 strategy: fail-fast: false matrix: java: [ 11, 17 ] steps: - uses: actions/checkout@v2 - name: Cache Maven Local Repo if: ${{ !startsWith(github.ref, 'refs/tags/') }} uses: actions/cache@v2 with: path: | ~/.m2/repository/*/*/*/*/* !~/.m2/repository/org/apache/activemq/**/*-SNAPSHOT !~/.m2/repository/org/apache/activemq/examples !~/.m2/repository/org/apache/activemq/tests key: ${{ runner.os }}-maven-test-${{ hashFiles('**/pom.xml') }} restore-keys: | ${{ runner.os }}-maven-test- - name: Install JDK ${{ matrix.java }} uses: actions/setup-java@v2 with: java-version: ${{ matrix.java }} distribution: 'temurin' # use 'install' so smoke-tests will work # By setting anything to org.apache.activemq.artemis.core.io.aio.AIOSequentialFileFactory.DISABLED we are disabling libaio loading on the testsuite - name: Fast Tests run: | mvn -s .github/maven-settings.xml -Dorg.apache.activemq.artemis.core.io.aio.AIOSequentialFileFactory.DISABLED=AnythingNotNull -Pfast-tests -Ptests-CI install checks: name: Checks (${{ matrix.java }}) runs-on: ubuntu-18.04 strategy: fail-fast: false matrix: java: [ 11, 17 ] steps: - uses: actions/checkout@v2 - name: Cache Maven Local Repo if: ${{ !startsWith(github.ref, 'refs/tags/') }} uses: actions/cache@v2 with: path: | ~/.m2/repository/*/*/*/*/* !~/.m2/repository/org/apache/activemq/**/*-SNAPSHOT !~/.m2/repository/org/apache/activemq/examples !~/.m2/repository/org/apache/activemq/tests key: ${{ runner.os }}-maven-checks-${{ hashFiles('**/pom.xml') }} restore-keys: | ${{ runner.os }}-maven-checks- ${{ runner.os }}-maven-test- - name: Install JDK ${{ matrix.java }} uses: actions/setup-java@v2 with: java-version: ${{ matrix.java }} distribution: 'temurin' - name: Build Main run: | mvn -s .github/maven-settings.xml -DskipTests -Derrorprone -Pdev -Pextra-tests -Pjmh install - name: Build Examples (JDK11 / -Prelease) if: matrix.java == '11' run: | cd examples mvn -s ../.github/maven-settings.xml install -Prelease - name: Build Examples (JDK >11 / -Pexamples,noRun) if: matrix.java != '11' run: | cd examples mvn -s ../.github/maven-settings.xml install -Pexamples,noRun - name: Javadoc Check (JDK11 / -Prelease) if: matrix.java == '11' run: | mvn -s .github/maven-settings.xml javadoc:javadoc -Prelease - name: Javadoc Check (JDK >11) if: matrix.java != '11' run: | mvn -s .github/maven-settings.xml javadoc:javadoc