| # Copyright 2022 Google LLC | |
| # | |
| # 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. | |
| # Github action job to test core java library features on | |
| # downstream client libraries before they are released. | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| name: ci | |
| jobs: | |
| units: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| java: [8, 11, 17] | |
| steps: | |
| - name: Get current week within the year | |
| id: date | |
| run: echo "::set-output name=week_of_year::$(date +'%W' --utc)" | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-java@v3 | |
| with: | |
| distribution: zulu | |
| java-version: ${{matrix.java}} | |
| - run: java -version | |
| - uses: actions/cache@v3 | |
| id: mvn-cache | |
| with: | |
| path: ~/.m2/repository | |
| key: ${{ runner.os }}-maven-unified-${{ steps.date.outputs.week_of_year }} | |
| - run: .kokoro/build.sh | |
| env: | |
| JOB_TYPE: test | |
| JOB_NAME: units-${{matrix.java}} | |
| windows: | |
| runs-on: windows-latest | |
| steps: | |
| - name: Support longpaths | |
| run: git config --system core.longpaths true | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-java@v3 | |
| with: | |
| distribution: zulu | |
| java-version: 11 | |
| cache: 'maven' | |
| - run: java -version | |
| - run: .kokoro/build.sh | |
| env: | |
| JOB_TYPE: test | |
| JOB_NAME: windows-units | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Get current week within the year | |
| id: date | |
| run: echo "::set-output name=week_of_year::$(date +'%W' --utc)" | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-java@v3 | |
| with: | |
| distribution: zulu | |
| java-version: 11 | |
| - run: java -version | |
| - uses: actions/cache@v3 | |
| id: mvn-cache | |
| with: | |
| path: ~/.m2/repository | |
| key: ${{ runner.os }}-maven-unified-${{ steps.date.outputs.week_of_year }} | |
| - run: java -version | |
| - run: mvn -B -ntp com.coveo:fmt-maven-plugin:check | |
| - run: mvn -B -ntp checkstyle:check@checkstyle | |
| enforcer: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Get current week within the year | |
| id: date | |
| run: echo "::set-output name=week_of_year::$(date +'%W' --utc)" | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-java@v3 | |
| with: | |
| distribution: zulu | |
| java-version: 11 | |
| - run: java -version | |
| - uses: actions/cache@v3 | |
| id: mvn-cache | |
| with: | |
| path: ~/.m2/repository | |
| key: ${{ runner.os }}-maven-unified-${{ steps.date.outputs.week_of_year }} | |
| - run: java -version | |
| - run: mvn -B -ntp enforcer:enforce@enforce -T 1C | |
| requirements-kokoro: | |
| runs-on: ubuntu-latest | |
| container: gcr.io/cloud-devrel-public-resources/java8 | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - run: python3 --version | |
| - run: python3 -m pip install --require-hashes -r .kokoro/requirements.txt | |
| gapic-libraries-bom: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-java@v3 | |
| with: | |
| java-version: 11 | |
| distribution: temurin | |
| cache: maven | |
| - name: Install Maven modules to local Maven repository | |
| run: | | |
| mvn install -B -ntp -T 1C -DskipTests -Dclirr.skip -Dcheckstyle.skip | |
| - name: Validate gapic-libraries-bom | |
| uses: googleapis/java-cloud-bom/tests/validate-bom@v26.13.0 | |
| with: | |
| bom-path: gapic-libraries-bom/pom.xml | |
| # TODO: Uncomment the needed Github Actions | |
| # dependencies: | |
| # runs-on: ubuntu-latest | |
| # strategy: | |
| # matrix: | |
| # java: [8, 11, 17] | |
| # steps: | |
| # - uses: actions/checkout@v3 | |
| # - uses: actions/setup-java@v3 | |
| # with: | |
| # distribution: zulu | |
| # java-version: ${{matrix.java}} | |
| # - run: java -version | |
| # - run: .kokoro/dependencies.sh | |
| # clirr: | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - uses: actions/checkout@v3 | |
| # - uses: actions/setup-java@v3 | |
| # with: | |
| # distribution: zulu | |
| # java-version: 8 | |
| # - run: java -version | |
| # - run: .kokoro/build.sh | |
| # env: | |
| # JOB_TYPE: clirr |