Speed up Refaster
bug checker
#2640
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: Build and verify | |
on: | |
pull_request: | |
push: | |
branches: [ master ] | |
permissions: | |
contents: read | |
jobs: | |
build: | |
strategy: | |
matrix: | |
os: [ ubuntu-24.04 ] | |
jdk: [ 17.0.13, 21.0.5, 23.0.1 ] | |
distribution: [ temurin ] | |
experimental: [ false ] | |
include: | |
- os: macos-14 | |
jdk: 17.0.13 | |
distribution: temurin | |
experimental: false | |
- os: windows-2022 | |
jdk: 17.0.13 | |
distribution: temurin | |
experimental: false | |
runs-on: ${{ matrix.os }} | |
continue-on-error: ${{ matrix.experimental }} | |
steps: | |
- name: Install Harden-Runner | |
uses: step-security/harden-runner@0080882f6c36860b6ba35c610c98ce87d4e2f26f # v2.10.2 | |
with: | |
disable-sudo: true | |
egress-policy: block | |
allowed-endpoints: > | |
api.adoptium.net:443 | |
github.com:443 | |
jitpack.io:443 | |
objects.githubusercontent.com:443 | |
repo.maven.apache.org:443 | |
# We run the build twice for each supported JDK: once against the | |
# original Error Prone release, using only Error Prone checks available | |
# on Maven Central, and once against the Picnic Error Prone fork, | |
# additionally enabling all checks defined in this project and any Error | |
# Prone checks available only from other artifact repositories. | |
- name: Check out code and set up JDK and Maven | |
uses: s4u/setup-maven-action@9a27433d289dd99d73851f653607c39d3444e8ba # v1.17.0 | |
with: | |
java-version: ${{ matrix.jdk }} | |
java-distribution: ${{ matrix.distribution }} | |
maven-version: 3.9.9 | |
- name: Display build environment details | |
run: mvn --version | |
- name: Build project against vanilla Error Prone, compile Javadoc | |
run: mvn -T1C install javadoc:jar | |
- name: Build project with self-check against Error Prone fork | |
run: mvn -T1C clean verify -Perror-prone-fork -Pnon-maven-central -Pself-check -s settings.xml | |
- name: Remove installed project artifacts | |
run: mvn dependency:purge-local-repository -DmanualInclude='${project.groupId}' -DresolutionFuzziness=groupId | |
# XXX: Enable Codecov once we "go public". |