Arrow-flight connector #45
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: arrow flight tests | |
on: | |
pull_request: | |
env: | |
CONTINUOUS_INTEGRATION: true | |
MAVEN_OPTS: "-Xmx1024M -XX:+ExitOnOutOfMemoryError" | |
MAVEN_INSTALL_OPTS: "-Xmx2G -XX:+ExitOnOutOfMemoryError" | |
MAVEN_FAST_INSTALL: "-B -V --quiet -T 1C -DskipTests -Dair.check.skip-all --no-transfer-progress -Dmaven.javadoc.skip=true" | |
MAVEN_TEST: "-B -Dair.check.skip-all -Dmaven.javadoc.skip=true -DLogTestDurationListener.enabled=true --no-transfer-progress --fail-at-end" | |
RETRY: .github/bin/retry | |
jobs: | |
changes: | |
runs-on: ubuntu-latest | |
permissions: | |
pull-requests: read | |
outputs: | |
codechange: ${{ steps.filter.outputs.codechange }} | |
steps: | |
- uses: dorny/paths-filter@v2 | |
id: filter | |
with: | |
filters: | | |
codechange: | |
- '!presto-docs/**' | |
test: | |
runs-on: ubuntu-latest | |
needs: changes | |
strategy: | |
fail-fast: false | |
matrix: | |
modules: | |
- ":presto-base-arrow-flight" # Only run tests for the `presto-base-arrow-flight` module | |
timeout-minutes: 80 | |
concurrency: | |
group: ${{ github.workflow }}-test-${{ matrix.modules }}-${{ github.event.pull_request.number }} | |
cancel-in-progress: true | |
steps: | |
# Checkout the code only if there are changes in the relevant files | |
- uses: actions/checkout@v4 | |
if: needs.changes.outputs.codechange == 'true' | |
with: | |
show-progress: false | |
# Set up Java for the build environment | |
- uses: actions/setup-java@v2 | |
if: needs.changes.outputs.codechange == 'true' | |
with: | |
distribution: 'temurin' | |
java-version: 8 | |
# Cache Maven dependencies to speed up the build | |
- name: Cache local Maven repository | |
if: needs.changes.outputs.codechange == 'true' | |
id: cache-maven | |
uses: actions/cache@v2 | |
with: | |
path: ~/.m2/repository | |
key: ${{ runner.os }}-maven-2-${{ hashFiles('**/pom.xml') }} | |
restore-keys: | | |
${{ runner.os }}-maven-2- | |
# Resolve Maven dependencies (if cache is not found) | |
- name: Populate Maven cache | |
if: steps.cache-maven.outputs.cache-hit != 'true' && needs.changes.outputs.codechange == 'true' | |
run: ./mvnw de.qaware.maven:go-offline-maven-plugin:resolve-dependencies --no-transfer-progress && .github/bin/download_nodejs | |
# Install dependencies for the target module | |
- name: Maven Install | |
if: needs.changes.outputs.codechange == 'true' | |
run: | | |
export MAVEN_OPTS="${MAVEN_INSTALL_OPTS}" | |
./mvnw install ${MAVEN_FAST_INSTALL} -am -pl ${{ matrix.modules }} | |
# Run Maven tests for the target module | |
- name: Maven Tests | |
if: needs.changes.outputs.codechange == 'true' | |
run: ./mvnw test ${MAVEN_TEST} -pl ${{ matrix.modules }} |