Skip to content

Commit 79f2562

Browse files
authored
Merge branch 'main' into maven-fast-profile
2 parents bf7e2df + 92f300a commit 79f2562

File tree

15 files changed

+278
-169
lines changed

15 files changed

+278
-169
lines changed

.github/workflows/ci.yaml

Lines changed: 88 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,85 @@ jobs:
5353
id: date
5454
run: echo "::set-output name=week_of_year::$(date +'%W' --utc)"
5555
- uses: actions/checkout@v4
56+
- uses: actions/setup-java@v4
57+
with:
58+
java-version: 8
59+
distribution: temurin
60+
- name: "Set jvm system property environment variable for surefire plugin (unit tests)"
61+
# Maven surefire plugin (unit tests) allows us to specify JVM to run the tests.
62+
# https://maven.apache.org/surefire/maven-surefire-plugin/test-mojo.html#jvm
63+
run: echo "SUREFIRE_JVM_OPT=-Djvm=${JAVA_HOME}/bin/java" >> $GITHUB_ENV
64+
shell: bash
65+
- uses: actions/setup-java@v4
66+
with:
67+
java-version: 11
68+
distribution: temurin
69+
cache: maven
70+
- uses: actions/cache@v4
71+
id: mvn-cache
72+
with:
73+
path: ~/.m2/repository
74+
key: ${{ runner.os }}-maven-unified-${{ steps.date.outputs.week_of_year }}
75+
- run: .kokoro/build.sh
76+
shell: bash
77+
env:
78+
JOB_TYPE: test
79+
JOB_NAME: units-8-runtime-${{matrix.java}}
80+
# detect which libraries have changed
81+
changes:
82+
runs-on: ubuntu-latest
83+
permissions:
84+
pull-requests: read
85+
outputs:
86+
packages: ${{ steps.filter.outputs.changes }}
87+
steps:
88+
- uses: dorny/paths-filter@v4
89+
id: filter
90+
with:
91+
filters: |
92+
java-bigquery: java-bigquery/**
93+
java-bigquerystorage: java-bigquerystorage/**
94+
java-datastore: java-datastore/**
95+
java-logging: java-logging/**
96+
java-logging-logback: java-logging-logback/**
97+
java-spanner: java-spanner/**
98+
sdk-platform-java: sdk-platform-java/**
99+
split-units:
100+
runs-on: ubuntu-latest
101+
needs: changes
102+
strategy:
103+
fail-fast: false
104+
matrix:
105+
package: ${{ fromJSON(needs.changes.outputs.packages) }}
106+
java: [11, 17, 21, 25]
107+
steps:
108+
- name: Get current week within the year
109+
id: date
110+
run: echo "::set-output name=week_of_year::$(date +'%W' --utc)"
111+
- uses: actions/checkout@v4
112+
- uses: actions/setup-java@v4
113+
with:
114+
distribution: temurin
115+
java-version: ${{matrix.java}}
116+
- run: .kokoro/build.sh
117+
env:
118+
BUILD_SUBDIR: ${{matrix.package}}
119+
JOB_TYPE: test
120+
JOB_NAME: units-${{matrix.package}}-${{matrix.java}}
121+
split-units-8:
122+
runs-on: ubuntu-latest
123+
name: "split-units"
124+
needs: changes
125+
strategy:
126+
fail-fast: false
127+
matrix:
128+
package: ${{ fromJSON(needs.changes.outputs.packages) }}
129+
java: [8]
130+
steps:
131+
- name: Get current week within the year
132+
id: date
133+
run: echo "::set-output name=week_of_year::$(date +'%W' --utc)"
134+
- uses: actions/checkout@v4
56135
- uses: actions/setup-java@v4
57136
with:
58137
java-version: 11
@@ -66,27 +145,30 @@ jobs:
66145
key: ${{ runner.os }}-maven-unified-${{ steps.date.outputs.week_of_year }}
67146
- name: Install all modules using Java 11
68147
shell: bash
69-
run: |
70-
mvn -V -B -ntp clean install -Pfast -DskipTests
71-
working-directory: sdk-platform-java
148+
run: .kokoro/build.sh
149+
env:
150+
BUILD_SUBDIR: ${{matrix.package}}
151+
JOB_TYPE: install
72152
- uses: actions/setup-java@v4
73153
with:
74-
java-version: 8
154+
java-version: ${{matrix.java}}
75155
distribution: temurin
76156
- run: java -version
77-
- name: Run tests in Java 8 with the source compiled in Java 11
157+
- name: Run tests in Java ${{matrix.java}} with the source compiled in Java 11
78158
run: |
79159
mvn test \
80160
-B -ntp \
81161
-Pfast \
82162
-Dorg.slf4j.simpleLogger.showDateTime=true \
83163
-Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss:SSS \
84164
-Dmaven.wagon.http.retryHandler.count=5 \
165+
--also-make \
85166
-T 1C
86167
env:
168+
BUILD_SUBDIR: ${{matrix.package}}
87169
JOB_TYPE: test
88170
JOB_NAME: units-8-runtime-${{matrix.java}}
89-
working-directory: sdk-platform-java
171+
working-directory: ${{matrix.package}}
90172
windows:
91173
runs-on: windows-latest
92174
steps:

.github/workflows/java-bigquery-ci.yaml

Lines changed: 0 additions & 143 deletions
This file was deleted.

.github/workflows/sdk-platform-java-ci.yaml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -429,8 +429,11 @@ jobs:
429429
- name: Checkout sdk-platform-java @ PR merge commit
430430
uses: actions/checkout@v3
431431
- name: Install sdk-platform-java @ PR merge commit
432-
run: mvn install -B -ntp -T 1C -DskipTests
433-
working-directory: sdk-platform-java
432+
shell: bash
433+
run: .kokoro/build.sh
434+
env:
435+
JOB_TYPE: install
436+
BUILD_SUBDIR: sdk-platform-java
434437
# Showcase golden test ensures that src changes are already reflected in the PR.
435438
- name: Clirr check
436439
working-directory: sdk-platform-java/java-showcase

.kokoro/build.sh

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,9 @@ case ${JOB_TYPE} in
4343
install_modules "${BUILD_SUBDIR}"
4444
echo "Running in subdir: ${BUILD_SUBDIR}"
4545
pushd "${BUILD_SUBDIR}"
46+
EXTRA_PROFILE_OPTS=()
4647
else
48+
EXTRA_PROFILE_OPTS=("-PbulkTests")
4749
install_modules "sdk-platform-java"
4850
fi
4951
echo "SUREFIRE_JVM_OPT: ${SUREFIRE_JVM_OPT}"
@@ -55,7 +57,7 @@ case ${JOB_TYPE} in
5557
-Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss:SSS \
5658
-Dmaven.wagon.http.retryHandler.count=5 \
5759
--also-make \
58-
${SUREFIRE_JVM_OPT}
60+
${SUREFIRE_JVM_OPT} "${EXTRA_PROFILE_OPTS[@]}"
5961
RETURN_CODE=$?
6062

6163
if [[ -n "${BUILD_SUBDIR}" ]]
@@ -65,6 +67,28 @@ case ${JOB_TYPE} in
6567
fi
6668
echo "Finished running unit tests"
6769
;;
70+
install)
71+
if [[ -n "${BUILD_SUBDIR}" ]]
72+
then
73+
echo "Compiling and building all modules for ${BUILD_SUBDIR}"
74+
install_modules "${BUILD_SUBDIR}"
75+
else
76+
install_modules "sdk-platform-java"
77+
mvn install \
78+
-B -ntp \
79+
-Dorg.slf4j.simpleLogger.showDateTime=true \
80+
-Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss:SSS \
81+
-Dclirr.skip=true \
82+
-Denforcer.skip=true \
83+
-Dcheckstyle.skip=true \
84+
-Dflatten.skip=true \
85+
-Danimal.sniffer.skip=true \
86+
-Dmaven.wagon.http.retryHandler.count=5 \
87+
-DskipTests=true \
88+
--also-make \
89+
-T 1C
90+
fi
91+
;;
6892
integration)
6993
generate_modified_modules_list
7094
if [[ "$(release_please_snapshot_pull_request)" == "true" ]]; then

0 commit comments

Comments
 (0)