Skip to content

Commit 99f06c4

Browse files
authored
Merge branch 'main' into it_fix_test
2 parents a1eadc3 + 32033ca commit 99f06c4

161 files changed

Lines changed: 545 additions & 106 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ jobs:
3636
with:
3737
filters: |
3838
src:
39-
- '!(google-auth-library-java|grpc-gcp-java|java-bigquery|java-bigquerystorage|java-bigtable|java-datastore|java-firestore|java-logging|java-logging-logback|java-pubsub|java-spanner|java-storage)/**/*.java'
40-
- '!(google-auth-library-java|grpc-gcp-java|java-bigquery|java-bigquerystorage|java-bigtable|java-datastore|java-firestore|java-logging|java-logging-logback|java-pubsub|java-spanner|java-storage)/**/pom.xml'
39+
- '!(google-auth-library-java|grpc-gcp-java|java-bigquery|java-bigquery-jdbc|java-bigquerystorage|java-bigtable|java-datastore|java-firestore|java-logging|java-logging-logback|java-pubsub|java-spanner|java-storage)/**/*.java'
40+
- '!(google-auth-library-java|grpc-gcp-java|java-bigquery|java-bigquery-jdbc|java-bigquerystorage|java-bigtable|java-datastore|java-firestore|java-logging|java-logging-logback|java-pubsub|java-spanner|java-storage)/**/pom.xml'
4141
- 'pom.xml'
4242
ci:
4343
- '.github/workflows/ci.yaml'
Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
# Copyright 2026 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
# Github action job to test core java library features on
15+
# downstream client libraries before they are released.
16+
on:
17+
push:
18+
branches:
19+
- main
20+
pull_request:
21+
name: java-bigquery-jdbc ci
22+
env:
23+
BUILD_SUBDIR: java-bigquery-jdbc
24+
jobs:
25+
filter:
26+
runs-on: ubuntu-latest
27+
outputs:
28+
library: ${{ steps.filter.outputs.library }}
29+
steps:
30+
- uses: actions/checkout@v4
31+
- uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1
32+
id: filter
33+
with:
34+
filters: |
35+
library:
36+
- 'java-bigquery/**'
37+
- 'java-bigquery-jdbc/**'
38+
- 'java-bigquerystorage/**'
39+
- '.github/workflows/java-bigquery-jdbc-ci.yaml'
40+
- 'google-auth-library-java/**/*.java'
41+
- 'google-auth-library-java/**/pom.xml'
42+
- 'sdk-platform-java/**/*.java'
43+
- 'sdk-platform-java/java-shared-dependencies/**/pom.xml'
44+
- 'sdk-platform-java/gapic-generator-java-pom-parent/pom.xml'
45+
units:
46+
needs: filter
47+
if: ${{ needs.filter.outputs.library == 'true' }}
48+
runs-on: ubuntu-latest
49+
strategy:
50+
fail-fast: false
51+
matrix:
52+
java: [11, 17, 21, 25]
53+
steps:
54+
- uses: actions/checkout@v4
55+
- uses: actions/setup-java@v4
56+
with:
57+
distribution: temurin
58+
java-version: ${{matrix.java}}
59+
- run: java -version
60+
- run: .kokoro/build.sh
61+
env:
62+
JOB_TYPE: test
63+
units-java8:
64+
needs: filter
65+
if: ${{ needs.filter.outputs.library == 'true' }}
66+
# Building using Java 17 and run the tests with Java 8 runtime
67+
name: "units (8)"
68+
runs-on: ubuntu-latest
69+
steps:
70+
- uses: actions/checkout@v4
71+
- uses: actions/setup-java@v4
72+
with:
73+
java-version: 8
74+
distribution: temurin
75+
- name: "Set jvm system property environment variable for surefire plugin (unit tests)"
76+
# Maven surefire plugin (unit tests) allows us to specify JVM to run the tests.
77+
# https://maven.apache.org/surefire/maven-surefire-plugin/test-mojo.html#jvm
78+
run: echo "SUREFIRE_JVM_OPT=-Djvm=${JAVA_HOME}/bin/java -P !java17" >> $GITHUB_ENV
79+
shell: bash
80+
- uses: actions/setup-java@v4
81+
with:
82+
java-version: 17
83+
distribution: temurin
84+
- run: .kokoro/build.sh
85+
env:
86+
JOB_TYPE: test
87+
windows:
88+
needs: filter
89+
if: ${{ needs.filter.outputs.library == 'true' }}
90+
runs-on: windows-latest
91+
steps:
92+
- name: Support longpaths
93+
run: git config --system core.longpaths true
94+
- name: Support longpaths
95+
run: git config --system core.longpaths true
96+
- uses: actions/checkout@v4
97+
- uses: actions/setup-java@v4
98+
with:
99+
distribution: temurin
100+
java-version: 8
101+
- run: java -version
102+
- run: .kokoro/build.sh
103+
env:
104+
JOB_TYPE: test
105+
dependencies:
106+
needs: filter
107+
if: ${{ needs.filter.outputs.library == 'true' }}
108+
runs-on: ubuntu-latest
109+
steps:
110+
- uses: actions/checkout@v4
111+
- uses: actions/setup-java@v4
112+
with:
113+
distribution: temurin
114+
java-version: 17
115+
- run: .kokoro/dependencies.sh
116+
javadoc:
117+
needs: filter
118+
if: ${{ needs.filter.outputs.library == 'true' }}
119+
runs-on: ubuntu-latest
120+
steps:
121+
- uses: actions/checkout@v4
122+
- uses: actions/setup-java@v4
123+
with:
124+
distribution: temurin
125+
java-version: 17
126+
- run: java -version
127+
- run: .kokoro/build.sh
128+
env:
129+
JOB_TYPE: javadoc
130+
lint:
131+
needs: filter
132+
if: ${{ needs.filter.outputs.library == 'true' }}
133+
runs-on: ubuntu-latest
134+
steps:
135+
- uses: actions/checkout@v4
136+
with:
137+
fetch-depth: 0
138+
- uses: actions/setup-java@v4
139+
with:
140+
distribution: temurin
141+
java-version: 17
142+
- run: java -version
143+
- run: .kokoro/build.sh
144+
env:
145+
JOB_TYPE: lint
146+
HEAD_SHA: ${{ github.event.pull_request.head.sha || github.sha }}
147+
BASE_SHA: ${{ github.event.pull_request.base.sha || github.event.before }}
148+
required:
149+
needs: [ units, units-java8, windows, dependencies, javadoc, lint ]
150+
name: conditional-required-check
151+
if: ${{ always() }} # Always run even if any "needs" jobs fail
152+
runs-on: ubuntu-22.04
153+
steps:
154+
- name: Fail if any previous failure
155+
if: ${{ contains(needs.*.result, 'failure') }}
156+
run: exit 1
157+
- name: Success otherwise
158+
run: echo "Success!"

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,4 +40,4 @@ jobs:
4040
mvn install -B -ntp -DskipTests -Pquick-build
4141
- name: Check the BOM content satisfies the upper-bound-check test case
4242
run: mvn -B -V -ntp verify -Pquick-build
43-
working-directory: sdk-plaform-java/java-shared-dependencies/upper-bound-check
43+
working-directory: sdk-platform-java/java-shared-dependencies/upper-bound-check

.kokoro/common.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ excluded_modules=(
2121
'java-vertexai'
2222
'java-logging'
2323
'java-bigquery'
24+
'java-bigquery-jdbc'
2425
'java-bigquerystorage'
2526
'java-datastore'
2627
'java-logging-logback'

.kokoro/presubmit/bigquery-graalvm-native-presubmit.cfg

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,4 @@ env_vars: {
4141
value: "java-bigquery"
4242
}
4343

44-
env_vars: {
45-
key: "INTEGRATION_TEST_ARGS"
46-
value: "-pl !google-cloud-bigquery-jdbc"
47-
}
44+

.kokoro/presubmit/bigquery-integration.cfg

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,4 @@ env_vars: {
3838
value: "java-bigquery"
3939
}
4040

41-
env_vars: {
42-
key: "INTEGRATION_TEST_ARGS"
43-
value: "-pl !google-cloud-bigquery-jdbc"
44-
}
41+

java-bigquery/.cloudbuild/jdbc_nightly.yaml renamed to java-bigquery-jdbc/.cloudbuild/jdbc_nightly.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ steps:
2424
id: "IT Tests"
2525
timeout: 10000s
2626
entrypoint: 'bash'
27-
args: ['java-bigquery/.cloudbuild/scripts/jdbc-nightly.sh']
27+
args: ['java-bigquery-jdbc/.cloudbuild/scripts/jdbc-nightly.sh']
2828
secretEnv: ['SA_EMAIL', 'KMS_RESOURCE_PATH', 'SA_SECRET']
2929

3030
availableSecrets:

java-bigquery/.cloudbuild/jdbc_presubmit.yaml renamed to java-bigquery-jdbc/.cloudbuild/jdbc_presubmit.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ steps:
2727
id: "IT Tests"
2828
timeout: 2000s
2929
entrypoint: 'bash'
30-
args: ['java-bigquery/.cloudbuild/scripts/jdbc-presubmit.sh']
30+
args: ['java-bigquery-jdbc/.cloudbuild/scripts/jdbc-presubmit.sh']
3131
secretEnv: ['SA_EMAIL', 'KMS_RESOURCE_PATH', 'SA_SECRET']
3232
availableSecrets:
3333
secretManager:

java-bigquery/.cloudbuild/scripts/jdbc-nightly.sh renamed to java-bigquery-jdbc/.cloudbuild/scripts/jdbc-nightly.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ ROOT_FOLDER=$(git rev-parse --show-toplevel)
22

33
cd ${ROOT_FOLDER}
44
source .kokoro/common.sh
5-
install_modules java-bigquery
5+
install_modules java-bigquery-jdbc
66

7-
cd ${ROOT_FOLDER}/java-bigquery/google-cloud-bigquery-jdbc
7+
cd ${ROOT_FOLDER}/java-bigquery-jdbc
88
make integration-test test=ITNightlyTests

java-bigquery/.cloudbuild/scripts/jdbc-presubmit.sh renamed to java-bigquery-jdbc/.cloudbuild/scripts/jdbc-presubmit.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ ROOT_FOLDER=$(git rev-parse --show-toplevel)
22

33
cd ${ROOT_FOLDER}
44
source .kokoro/common.sh
5-
install_modules java-bigquery
5+
install_modules java-bigquery-jdbc
66

7-
cd ${ROOT_FOLDER}/java-bigquery/google-cloud-bigquery-jdbc
7+
cd ${ROOT_FOLDER}/java-bigquery-jdbc
88
make integration-test test=ITPresubmitTests

0 commit comments

Comments
 (0)