Bump ruby/setup-ruby from 1.176.0 to 1.187.0 #61
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: Check Matrix | |
on: | |
pull_request: {} | |
permissions: read-all | |
jobs: | |
preliminary: | |
name: preliminary sanity checks | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b | |
with: | |
fetch-depth: 0 #needed by spotless | |
- uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 | |
with: | |
distribution: 'temurin' | |
java-version: 8 | |
- name: spotless (license header) | |
if: always() | |
run: ./gradlew clean spotlessCheck -PspotlessFrom=origin/${{ github.base_ref }} | |
- name: api compatibility | |
if: always() | |
run: ./gradlew clean japicmp | |
- name: how to fix | |
if: failure() | |
# the foreground (38;5) color code 208 is orange. we also have bold, white bg (38;5;0;48;5;255m), white fg on black bg... | |
run: | | |
echo -e "\n\033[38;5;0;48;5;208m \u001b[1m How to deal with errors in preliminary job: \u001b[0m\033[0m" | |
echo "(Have a look at the steps above to see what failed exactly)" | |
echo -e "\n - \u001b[1mSpotless (license headers)\u001b[0m failures on touched java files \033[38;5;255;48;5;0m\u001b[1mcan be automatically fixed by running\u001b[0m:" | |
echo -e " \033[38;5;0;48;5;255m ./gradlew spotlessApply \033[0m" | |
echo -e "\n - \u001b[1mAPI Compatibility\u001b[0m failures should be considered carefully and \033[38;5;255;48;5;0m\u001b[1mdiscussed with maintainers in the PR\u001b[0m" | |
echo " If there are failures, the detail should be available in the step's log:" | |
echo -e " Look for the \033[38;5;0;48;5;255m API compatibility failures \033[0m block(s)." | |
echo " Alternatively, locally run the following command to get access to the full report:" | |
echo -e " \033[38;5;0;48;5;255m ./gradlew japicmp \033[0m" | |
echo "" | |
exit -1 | |
build: | |
needs: preliminary | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-20.04, macos-12, windows-2019] | |
transport: [native, nio] | |
exclude: | |
# excludes native on Windows (there's none) | |
- os: windows-2019 | |
transport: native | |
steps: | |
- uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b | |
- uses: gradle/actions/wrapper-validation@db19848a5fa7950289d3668fb053140cf3028d43 | |
- name: Set up JDK 1.8 | |
uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 | |
with: | |
distribution: 'temurin' | |
java-version: '8' | |
- name: Build with Gradle | |
run: ./gradlew clean check --no-daemon -x spotlessCheck -PforceTransport=${{ matrix.transport }} |