Skip to content

Commit

Permalink
chore: Java 8 unit test to build code in Java 17 and run tests on Jav…
Browse files Browse the repository at this point in the history
…a 8 (#1800)

* Our Java projects are configured to produce Java 8-compatible bytecode via https://github.com/googleapis/java-shared-config/blob/main/pom.xml#L848. This unit test change ensures this config is applied correctly.

* This change also switches the JDK distribution of GitHub Actions to temurin from zulu.

* For the repositories that mark "dependencies (8)" and "dependencies (11)" as required, they should point to only "dependencies (17)" via `.github/sync-repo-settings.yaml` and repo's Settings tab.
  • Loading branch information
suztomo committed Jun 22, 2023
1 parent 9ad18b6 commit cbe0100
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ branchProtectionRules:
requiresStrictStatusChecks: false
# List of required status check contexts that must pass for commits to be accepted to matching branches.
requiredStatusCheckContexts:
- "dependencies (11)"
- "dependencies (17)"
- "lint"
- "units (8)"
- "units (11)"
Expand Down
26 changes: 24 additions & 2 deletions synthtool/gcp/templates/java_library/.github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
strategy:
fail-fast: false
matrix:
java: [8, 11, 17]
java: [11, 17]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
Expand All @@ -36,6 +36,28 @@ jobs:
- run: .kokoro/build.sh
env:
JOB_TYPE: test
units-java8:
# Building using Java 17 and run the tests with Java 8 runtime
name: "units (8)"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
java-version: 8
distribution: zulu
- name: "Set jvm system property environment variable for surefire plugin (unit tests)"
# Maven surefire plugin (unit tests) allows us to specify JVM to run the tests.
# https://maven.apache.org/surefire/maven-surefire-plugin/test-mojo.html#jvm
run: echo "SUREFIRE_JVM_OPT=-Djvm=${JAVA_HOME}/bin/java" >> $GITHUB_ENV
shell: bash
- uses: actions/setup-java@v3
with:
java-version: 17
distribution: zulu
- run: .kokoro/build.sh
env:
JOB_TYPE: test
windows:
runs-on: windows-latest
steps:
Expand All @@ -54,7 +76,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
java: [8, 11, 17]
java: [17]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
Expand Down
3 changes: 2 additions & 1 deletion synthtool/gcp/templates/java_library/.kokoro/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,8 @@ set +e

case ${JOB_TYPE} in
test)
mvn test -B -ntp -Dclirr.skip=true -Denforcer.skip=true
echo "SUREFIRE_JVM_OPT: ${SUREFIRE_JVM_OPT}"
mvn test -B -ntp -Dclirr.skip=true -Denforcer.skip=true ${SUREFIRE_JVM_OPT}
RETURN_CODE=$?
;;
lint)
Expand Down

0 comments on commit cbe0100

Please sign in to comment.