blob: b18190297ee310693717dab0f44773530364f38c [file] [log] [blame]
# This workflow will build a Java project with Maven
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
name: Main Mac and Linux
on:
push:
branches:
- master
- 'rel/*'
- "new_*"
paths-ignore:
- 'docs/**'
pull_request:
branches:
- master
- 'rel/*'
- "new_*"
paths-ignore:
- 'docs/**'
# allow manually run the action:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
jobs:
unix:
strategy:
fail-fast: false
max-parallel: 20
matrix:
java: [ 8, 11, 17 ]
os: [ ubuntu-latest, macos-latest ]
runs-on: ${{ matrix.os}}
steps:
- uses: actions/checkout@v2
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
- name: Cache Maven packages
uses: actions/cache@v2
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2-
- name: Check Apache Rat
run: mvn -B apache-rat:check -P site -P code-coverage
- name: IT/UT Test
shell: bash
# we do not compile client-cpp for saving time, it is tested in client.yml
run: mvn -B clean verify -Dtest.port.closed=true -P '!testcontainer'