name: CI on: push: branches: - master pull_request: branches: - master jobs: test: name: "JDK ${{ matrix.java }}" strategy: matrix: java: [ 8, 11 ] runs-on: ubuntu-latest steps: - name: 'Check out repository' uses: actions/checkout@v2 - name: 'Cache local Maven repository' uses: actions/cache@v2.1.4 with: path: ~/.m2/repository key: maven-${{ hashFiles('**/pom.xml') }} restore-keys: | maven- - name: 'Set up JDK ${{ matrix.java }}' uses: actions/setup-java@v1 with: java-version: ${{ matrix.java }} - name: 'Install' shell: bash run: mvn -B dependency:go-offline test clean -U --quiet --fail-never -DskipTests=true -f build-pom.xml - name: 'Test' shell: bash run: mvn -B verify -U --fail-at-end -Dsource.skip=true -Dmaven.javadoc.skip=true -f build-pom.xml publish_snapshot: name: 'Publish snapshot' needs: test if: github.event_name == 'push' && github.repository == 'google/auto' runs-on: ubuntu-latest steps: - name: 'Check out repository' uses: actions/checkout@v2 - name: 'Cache local Maven repository' uses: actions/cache@v2.1.4 with: path: ~/.m2/repository key: maven-${{ hashFiles('**/pom.xml') }} restore-keys: | maven- - name: 'Set up JDK 11' uses: actions/setup-java@v1 with: java-version: 11 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 source:jar javadoc:jar deploy -DskipTests=true -f build-pom.xml generate_docs: name: 'Generate latest docs' needs: test if: github.event_name == 'push' && github.repository == 'google/auto' runs-on: ubuntu-latest steps: - name: 'Check out repository' uses: actions/checkout@v2 - name: 'Cache local Maven repository' uses: actions/cache@v2.1.4 with: path: ~/.m2/repository key: maven-${{ hashFiles('**/pom.xml') }} restore-keys: | maven- - name: 'Set up JDK 11' uses: actions/setup-java@v1 with: java-version: 11 - name: 'Generate latest docs' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: ./util/generate-latest-docs.sh