From dad926ad175b61c8eb7c8764309e4ff0b4fe9dc9 Mon Sep 17 00:00:00 2001 From: Dawid Weiss Date: Tue, 12 Oct 2021 15:19:34 +0200 Subject: [PATCH] LUCENE-10167: Run tests on PRs (and pushes to the main branch) (#376) --- .github/workflows/gradle-precommit.yml | 78 ++++++++++++++++++++++---- 1 file changed, 67 insertions(+), 11 deletions(-) diff --git a/.github/workflows/gradle-precommit.yml b/.github/workflows/gradle-precommit.yml index f1cc6cebbfe..788c5cd014e 100644 --- a/.github/workflows/gradle-precommit.yml +++ b/.github/workflows/gradle-precommit.yml @@ -1,24 +1,36 @@ -name: Gradle Precommit +name: Gradle Precommit Checks on: pull_request: branches: - '*' -jobs: - test: - name: gradle precommit w/ Java 11 + push: + branches: + - main - runs-on: ubuntu-latest +jobs: + # This runs all validation checks without tests. + checks: + name: gradle check -x test (JDK ${{ matrix.java }} on ${{ matrix.os }}) + runs-on: ${{ matrix.os }} + + strategy: + matrix: + # Operating systems to run on. + os: [ubuntu-latest] + # Test JVMs. + java: [ '11' ] steps: - # Setup - uses: actions/checkout@v2 - - name: Set up JDK 11 - uses: actions/setup-java@v1 + - name: Set up JDK + uses: actions/setup-java@v2 with: - java-version: 11 + distribution: 'adopt-hotspot' + java-version: ${{ matrix.java }} + java-package: jdk - name: Grant execute permission for gradlew run: chmod +x gradlew @@ -33,9 +45,53 @@ jobs: ${{ runner.os }}-gradle- - name: Initialize gradle settings - run: ./gradlew localSettings + run: ./gradlew localSettings --max-workers 2 - name: Run gradle check (without tests) - run: ./gradlew check -x test -Ptask.times=true + run: ./gradlew check -x test -Ptask.times=true --max-workers 2 + + - uses: gradle/wrapper-validation-action@v1 + + # This runs all tests without any other validation checks. + tests: + name: gradle test (JDK ${{ matrix.java }} on ${{ matrix.os }}) + runs-on: ${{ matrix.os }} + + strategy: + matrix: + # Operating systems to run on. + # windows-latest: fairly slow to build and results in odd errors (see LUCENE-10167) + # macos-latest: a tad slower than ubuntu and pretty much the same (?) so leaving out. + os: [ubuntu-latest] + # Test JVMs. + java: [ '11' ] + + steps: + - uses: actions/checkout@v2 + + - name: Set up JDK + uses: actions/setup-java@v2 + with: + distribution: 'adopt-hotspot' + java-version: ${{ matrix.java }} + java-package: jdk + + - uses: actions/cache@v2 + with: + path: | + ~/.gradle/caches + key: ${{ runner.os }}-gradle-precommit-${{ hashFiles('versions.lock') }} + restore-keys: | + ${{ runner.os }}-gradle-precommit- + ${{ runner.os }}-gradle- + + - name: Initialize gradle settings + run: ./gradlew localSettings --max-workers 2 + + - name: Echo settings + run: cat gradle.properties + + - name: Run gradle tests + run: ./gradlew test "-Ptask.times=true" "-Ptests.slow=false" --max-workers 2 - uses: gradle/wrapper-validation-action@v1