mirror of
https://github.com/jlengrand/error-prone-support.git
synced 2026-03-10 08:11:25 +00:00
60 lines
2.1 KiB
YAML
60 lines
2.1 KiB
YAML
name: Build and verify
|
|
on:
|
|
pull_request:
|
|
push:
|
|
branches: [ master ]
|
|
permissions:
|
|
contents: read
|
|
jobs:
|
|
build:
|
|
strategy:
|
|
matrix:
|
|
os: [ ubuntu-22.04 ]
|
|
jdk: [ 17.0.10, 21.0.2 ]
|
|
distribution: [ temurin ]
|
|
experimental: [ false ]
|
|
include:
|
|
- os: macos-14
|
|
jdk: 17.0.10
|
|
distribution: temurin
|
|
experimental: false
|
|
- os: windows-2022
|
|
jdk: 17.0.10
|
|
distribution: temurin
|
|
experimental: false
|
|
runs-on: ${{ matrix.os }}
|
|
continue-on-error: ${{ matrix.experimental }}
|
|
steps:
|
|
- name: Install Harden-Runner
|
|
uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0
|
|
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@489441643219d2b93ee2a127b2402eb640a1b947 # v1.13.0
|
|
with:
|
|
java-version: ${{ matrix.jdk }}
|
|
java-distribution: ${{ matrix.distribution }}
|
|
maven-version: 3.9.6
|
|
- 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 build-helper:remove-project-artifact
|
|
|
|
# XXX: Enable Codecov once we "go public".
|