| name: "Build" |
| |
| on: [push, pull_request, workflow_dispatch] |
| |
| jobs: |
| build: |
| runs-on: ubuntu-18.04 |
| strategy: |
| fail-fast: false |
| matrix: |
| java: [ 8, 11, 16 ] |
| |
| steps: |
| - uses: actions/checkout@v2 |
| - uses: actions/cache@v2 |
| with: |
| path: | |
| ~/.m2/repository |
| !~/.m2/repository/org/apache/activemq/artemis-* |
| key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} |
| restore-keys: | |
| ${{ runner.os }}-maven- |
| |
| - name: Install JDK ${{ matrix.java }} |
| uses: actions/setup-java@v2 |
| with: |
| java-version: ${{ matrix.java }} |
| distribution: 'adopt' |
| |
| # use 'install' so smoke-tests will work |
| # use '-Pextra-tests' to ensure extra-tests compiles even though they won't actually run |
| # By setting anything to org.apache.activemq.artemis.core.io.aio.AIOSequentialFileFactory.DISABLED we are disabling libaio loading on the testsuite |
| - name: Build Main |
| run: | |
| mvn -Dorg.apache.activemq.artemis.core.io.aio.AIOSequentialFileFactory.DISABLED=AnythingNotNull -Derrorprone -Pfast-tests -Pextra-tests -Ptests-CI -Pjmh install |
| |
| - name: Build Examples (JDK8 / -Prelease) |
| if: matrix.java == '8' |
| run: | |
| cd examples |
| mvn install -Prelease |
| |
| - name: Build Examples (JDK 11+ / -Pexamples,noRun) |
| if: matrix.java != '8' |
| run: | |
| cd examples |
| mvn install -Pexamples,noRun |
| |
| - name: Javadoc Check (JDK8 / -Prelease) |
| if: matrix.java == '8' |
| run: | |
| mvn javadoc:javadoc -Prelease |
| |
| - name: Javadoc Check (JDK 11+) |
| if: matrix.java != '8' |
| run: | |
| mvn javadoc:javadoc |