# Copyright 2020 The Error Prone Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. name: CI on: push: branches: - master pull_request: branches: - master jobs: test: name: "JDK ${{ matrix.java }} on ${{ matrix.os }}" strategy: fail-fast: false matrix: os: [ ubuntu-latest ] java: [ 17, 11 ] experimental: [ false ] include: # Only test on macos and windows with a single recent JDK to avoid a # combinatorial explosion of test configurations. - os: macos-latest java: 17 experimental: false - os: windows-latest java: 17 experimental: false - os: ubuntu-latest java: 18-ea experimental: true runs-on: ${{ matrix.os }} continue-on-error: ${{ matrix.experimental }} steps: - name: Cancel previous uses: styfle/cancel-workflow-action@0.9.1 with: access_token: ${{ github.token }} - name: 'Check out repository' uses: actions/checkout@v2 - name: 'Set up JDK ${{ matrix.java }}' uses: actions/setup-java@v2 with: java-version: ${{ matrix.java }} distribution: 'zulu' cache: 'maven' - name: 'Install' shell: bash run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V - name: 'Test' shell: bash run: mvn test -B publish_snapshot: name: 'Publish snapshot' needs: test if: github.event_name == 'push' && github.repository == 'google/google-java-format' && github.ref == 'refs/heads/master' runs-on: ubuntu-latest steps: - name: 'Check out repository' uses: actions/checkout@v2 - name: 'Set up JDK 17' uses: actions/setup-java@v2 with: java-version: 17 distribution: 'zulu' cache: 'maven' server-id: sonatype-nexus-snapshots 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 -pl '!eclipse_plugin' source:jar deploy -B -DskipTests=true -Dinvoker.skip=true -Dmaven.javadoc.skip=true