Add Java Platform Module System (JPMS) support #1792
Workflow file for this run
This file contains hidden or 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: CI | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
build: | |
name: 'Build with JDK 11' | |
runs-on: ubuntu-latest | |
steps: | |
# Cancel any previous runs for the same branch that are still running. | |
- name: 'Cancel previous runs' | |
uses: styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa | |
with: | |
access_token: ${{ github.token }} | |
- name: 'Check out repository' | |
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 | |
- name: 'Set up JDK 11 for compilation' | |
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 | |
with: | |
java-version: 11 | |
distribution: 'zulu' | |
cache: 'maven' | |
- name: 'Install' | |
shell: bash | |
run: mvn -B -P!standard-with-extra-repos install -U -DskipTests=true | |
- name: 'Javadoc Test Run' | |
shell: bash | |
run: mvn -B -P!standard-with-extra-repos javadoc:aggregate -U | |
- name: 'Upload build artifacts' | |
uses: actions/upload-artifact@v3 | |
with: | |
name: truth-jars | |
path: | | |
**/target/*.jar | |
!**/target/*-sources.jar | |
!**/target/*-javadoc.jar | |
test: | |
name: "Test with JDK ${{ matrix.java }}" | |
needs: build | |
strategy: | |
matrix: | |
java: [ 8, 11, 17 ] | |
runs-on: ubuntu-latest | |
steps: | |
- name: 'Check out repository' | |
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 | |
- name: 'Set up JDK ${{ matrix.java }} for testing' | |
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 | |
with: | |
java-version: ${{ matrix.java }} | |
distribution: 'zulu' | |
cache: 'maven' | |
- name: 'Download build artifacts' | |
uses: actions/download-artifact@v3 | |
with: | |
name: truth-jars | |
- name: 'Test' | |
shell: bash | |
run: mvn -B -P!standard-with-extra-repos verify -U -Dmaven.javadoc.skip=true | |
publish_snapshot: | |
name: 'Publish snapshot' | |
needs: [build, test] | |
if: github.event_name == 'push' && github.repository == 'google/truth' | |
runs-on: ubuntu-latest | |
steps: | |
- name: 'Check out repository' | |
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 | |
- name: 'Set up JDK 11' | |
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 | |
with: | |
java-version: 11 | |
distribution: 'zulu' | |
cache: 'maven' | |
server-id: central | |
server-username: CI_DEPLOY_USERNAME | |
server-password: CI_DEPLOY_PASSWORD | |
- name: 'Publish' | |
env: | |
CI_DEPLOY_USERNAME: ${{ secrets.CI_DEPLOY_USERNAME }} | |
CI_DEPLOY_PASSWORD: ${{ secrets.CI_DEPLOY_PASSWORD }} | |
run: mvn -B clean deploy -DskipTests=true | |
generate_docs: | |
permissions: | |
contents: write | |
name: 'Generate latest docs' | |
needs: [build, test] | |
if: github.event_name == 'push' && github.repository == 'google/truth' | |
runs-on: ubuntu-latest | |
steps: | |
- name: 'Check out repository' | |
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 | |
- name: 'Set up JDK 11' | |
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 | |
with: | |
java-version: 11 | |
distribution: 'zulu' | |
cache: 'maven' | |
- name: 'Generate latest docs' | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: ./util/generate-latest-docs.sh |