diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml index be3b9bde4f..9786771c43 100644 --- a/.github/.OwlBot.lock.yaml +++ b/.github/.OwlBot.lock.yaml @@ -13,4 +13,4 @@ # limitations under the License. docker: image: gcr.io/cloud-devrel-public-resources/owlbot-java:latest - digest: sha256:7062473f423f339256346ddbee3d81fb1de6b784fabc2a4d959d7df2c720e375 + digest: sha256:3c950ed12391ebaffd1ee66d0374766a1c50144ebe6a7a0042300b2e6bb5856b diff --git a/.github/workflows/approve-readme.yaml b/.github/workflows/approve-readme.yaml index c513242798..1bb1823276 100644 --- a/.github/workflows/approve-readme.yaml +++ b/.github/workflows/approve-readme.yaml @@ -1,3 +1,18 @@ +# 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: pull_request: name: auto-merge-readme diff --git a/.github/workflows/auto-release.yaml b/.github/workflows/auto-release.yaml index 59c7cadde3..18e23230d9 100644 --- a/.github/workflows/auto-release.yaml +++ b/.github/workflows/auto-release.yaml @@ -1,3 +1,18 @@ +# 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: pull_request: name: auto-release @@ -16,13 +31,13 @@ jobs: return; } - // only approve PRs like "chore: release " - if ( !context.payload.pull_request.title.startsWith("chore: release") ) { + // only approve PRs like "chore(main): release " + if ( !context.payload.pull_request.title.startsWith("chore(main): release") ) { return; } // only approve PRs with pom.xml and versions.txt changes - const filesPromise = github.pulls.listFiles.endpoint({ + const filesPromise = github.rest.pulls.listFiles.endpoint({ owner: context.repo.owner, repo: context.repo.repo, pull_number: context.payload.pull_request.number, @@ -54,7 +69,7 @@ jobs: return; } - const promise = github.pulls.list.endpoint({ + const promise = github.rest.pulls.list.endpoint({ owner: context.repo.owner, repo: context.repo.repo, state: 'open' @@ -71,7 +86,7 @@ jobs: } // approve release PR - await github.pulls.createReview({ + await github.rest.pulls.createReview({ owner: context.repo.owner, repo: context.repo.repo, body: 'Rubber stamped release!', @@ -80,7 +95,7 @@ jobs: }); // attach kokoro:force-run and automerge labels - await github.issues.addLabels({ + await github.rest.issues.addLabels({ owner: context.repo.owner, repo: context.repo.repo, issue_number: context.payload.pull_request.number, diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 05de1f60dc..6b5e56aaac 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,3 +1,18 @@ +# 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: diff --git a/.github/workflows/samples.yaml b/.github/workflows/samples.yaml index c46230a78c..d5d964df15 100644 --- a/.github/workflows/samples.yaml +++ b/.github/workflows/samples.yaml @@ -1,3 +1,18 @@ +# 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: pull_request: name: samples diff --git a/.kokoro/build.bat b/.kokoro/build.bat index 05826ad93f..cc602c9eba 100644 --- a/.kokoro/build.bat +++ b/.kokoro/build.bat @@ -1,3 +1,18 @@ :: See documentation in type-shell-output.bat +# 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. "C:\Program Files\Git\bin\bash.exe" %~dp0build.sh diff --git a/.kokoro/nightly/java11-integration.cfg b/.kokoro/nightly/java11-integration.cfg new file mode 100644 index 0000000000..58049cc38f --- /dev/null +++ b/.kokoro/nightly/java11-integration.cfg @@ -0,0 +1,37 @@ +# Format: //devtools/kokoro/config/proto/build.proto + +# Configure the docker image for kokoro-trampoline. +env_vars: { + key: "TRAMPOLINE_IMAGE" + value: "gcr.io/cloud-devrel-public-resources/java11014" +} + +env_vars: { + key: "JOB_TYPE" + value: "integration" +} +# TODO: remove this after we've migrated all tests and scripts +env_vars: { + key: "GCLOUD_PROJECT" + value: "gcloud-devel" +} + +env_vars: { + key: "GOOGLE_CLOUD_PROJECT" + value: "gcloud-devel" +} + +env_vars: { + key: "ENABLE_FLAKYBOT" + value: "true" +} + +env_vars: { + key: "GOOGLE_APPLICATION_CREDENTIALS" + value: "secret_manager/java-it-service-account" +} + +env_vars: { + key: "SECRET_MANAGER_KEYS" + value: "java-it-service-account" +} diff --git a/CHANGELOG.md b/CHANGELOG.md index 23b1b4232b..965f672ea2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +### [2.5.3](https://github.com/googleapis/java-bigtable/compare/v2.5.2...v2.5.3) (2022-02-08) + + +### Bug Fixes + +* integration tests ([#1161](https://github.com/googleapis/java-bigtable/issues/1161)) ([8b00b5f](https://github.com/googleapis/java-bigtable/commit/8b00b5fb5b4e3a1ada514b0bdc60fd744833bd01)) + ### [2.5.2](https://github.com/googleapis/java-bigtable/compare/v2.5.1...v2.5.2) (2022-01-31) diff --git a/README.md b/README.md index aaf1faeda1..e285b78f7f 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,7 @@ If you are using Maven without BOM, add this to your dependencies: com.google.cloud google-cloud-bigtable - 2.5.1 + 2.5.2 ``` @@ -56,13 +56,13 @@ implementation 'com.google.cloud:google-cloud-bigtable' If you are using Gradle without BOM, add this to your dependencies ```Groovy -implementation 'com.google.cloud:google-cloud-bigtable:2.5.1' +implementation 'com.google.cloud:google-cloud-bigtable:2.5.2' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-bigtable" % "2.5.1" +libraryDependencies += "com.google.cloud" % "google-cloud-bigtable" % "2.5.2" ``` ## Authentication diff --git a/google-cloud-bigtable-bom/pom.xml b/google-cloud-bigtable-bom/pom.xml index c952d54f97..281d8a7680 100644 --- a/google-cloud-bigtable-bom/pom.xml +++ b/google-cloud-bigtable-bom/pom.xml @@ -3,12 +3,12 @@ 4.0.0 com.google.cloud google-cloud-bigtable-bom - 2.5.2 + 2.5.3 pom com.google.cloud google-cloud-shared-config - 1.2.6 + 1.2.7 Google Cloud Bigtable BOM @@ -62,32 +62,32 @@ com.google.cloud google-cloud-bigtable - 2.5.2 + 2.5.3 com.google.cloud google-cloud-bigtable-emulator - 0.142.2 + 0.142.3 com.google.api.grpc grpc-google-cloud-bigtable-admin-v2 - 2.5.2 + 2.5.3 com.google.api.grpc grpc-google-cloud-bigtable-v2 - 2.5.2 + 2.5.3 com.google.api.grpc proto-google-cloud-bigtable-admin-v2 - 2.5.2 + 2.5.3 com.google.api.grpc proto-google-cloud-bigtable-v2 - 2.5.2 + 2.5.3 diff --git a/google-cloud-bigtable-deps-bom/pom.xml b/google-cloud-bigtable-deps-bom/pom.xml index 43a03f8f02..1d6cdaf886 100644 --- a/google-cloud-bigtable-deps-bom/pom.xml +++ b/google-cloud-bigtable-deps-bom/pom.xml @@ -7,12 +7,12 @@ com.google.cloud google-cloud-shared-config - 1.2.6 + 1.2.7 com.google.cloud google-cloud-bigtable-deps-bom - 2.5.2 + 2.5.3 pom diff --git a/google-cloud-bigtable-emulator/pom.xml b/google-cloud-bigtable-emulator/pom.xml index 1b14dbab35..a3758215ac 100644 --- a/google-cloud-bigtable-emulator/pom.xml +++ b/google-cloud-bigtable-emulator/pom.xml @@ -5,7 +5,7 @@ 4.0.0 google-cloud-bigtable-emulator - 0.142.2 + 0.142.3 Google Cloud Java - Bigtable Emulator https://github.com/googleapis/java-bigtable @@ -14,7 +14,7 @@ com.google.cloud google-cloud-bigtable-parent - 2.5.2 + 2.5.3 scm:git:git@github.com:googleapis/java-bigtable.git @@ -81,14 +81,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.5.2 + 2.5.3 pom import com.google.cloud google-cloud-bigtable-bom - 2.5.2 + 2.5.3 pom import diff --git a/google-cloud-bigtable-stats/pom.xml b/google-cloud-bigtable-stats/pom.xml index a3a0b92ffb..4d55e456d7 100644 --- a/google-cloud-bigtable-stats/pom.xml +++ b/google-cloud-bigtable-stats/pom.xml @@ -5,7 +5,7 @@ com.google.cloud google-cloud-bigtable-parent - 2.5.2 + 2.5.3 4.0.0 @@ -13,7 +13,7 @@ through Stackdriver. Built-in metrics will be implemented with shaded OpenCensus so it won't interfere with customer's application metrics. --> google-cloud-bigtable-stats - 2.5.2 + 2.5.3 Experimental project to shade OpenCensus dependencies. @@ -21,7 +21,7 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.5.2 + 2.5.3 pom import diff --git a/google-cloud-bigtable/pom.xml b/google-cloud-bigtable/pom.xml index ffc484c0ff..c80aa6d05f 100644 --- a/google-cloud-bigtable/pom.xml +++ b/google-cloud-bigtable/pom.xml @@ -2,7 +2,7 @@ 4.0.0 google-cloud-bigtable - 2.5.2 + 2.5.3 jar Google Cloud Bigtable https://github.com/googleapis/java-bigtable @@ -12,11 +12,11 @@ com.google.cloud google-cloud-bigtable-parent - 2.5.2 + 2.5.3 - 2.5.2 + 2.5.3 google-cloud-bigtable @@ -43,14 +43,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.5.2 + 2.5.3 pom import com.google.cloud google-cloud-bigtable-bom - 2.5.2 + 2.5.3 pom import diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java index 56b01e66df..35fe7ced09 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/Version.java @@ -20,6 +20,6 @@ @InternalApi("For internal use only") public final class Version { // {x-version-update-start:google-cloud-bigtable:current} - public static String VERSION = "2.5.2"; + public static String VERSION = "2.5.3"; // {x-version-update-end} } diff --git a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/it/DirectPathFallbackIT.java b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/it/DirectPathFallbackIT.java index ff83192304..8666924a2f 100644 --- a/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/it/DirectPathFallbackIT.java +++ b/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/it/DirectPathFallbackIT.java @@ -29,7 +29,6 @@ import com.google.common.base.Stopwatch; import com.google.common.collect.ImmutableSet; import io.grpc.ManagedChannelBuilder; -import io.grpc.alts.ComputeEngineChannelBuilder; import io.grpc.netty.shaded.io.grpc.netty.NettyChannelBuilder; import io.grpc.netty.shaded.io.netty.channel.ChannelDuplexHandler; import io.grpc.netty.shaded.io.netty.channel.ChannelFactory; @@ -40,7 +39,6 @@ import io.grpc.netty.shaded.io.netty.channel.socket.nio.NioSocketChannel; import io.grpc.netty.shaded.io.netty.util.ReferenceCountUtil; import java.io.IOException; -import java.lang.reflect.Field; import java.net.InetAddress; import java.net.InetSocketAddress; import java.net.SocketAddress; @@ -189,25 +187,12 @@ private boolean exerciseDirectPath() throws InterruptedException, TimeoutExcepti /** * This is a giant hack to enable testing DirectPath CFE fallback. * - *

It unwraps the {@link ComputeEngineChannelBuilder} to inject a NettyChannelHandler to signal - * IPv6 packet loss. + *

Injects a NettyChannelHandler to signal IPv6 packet loss. */ private void injectNettyChannelHandler(ManagedChannelBuilder channelBuilder) { - try { - // Extract the delegate NettyChannelBuilder using reflection - Field delegateField = ComputeEngineChannelBuilder.class.getDeclaredField("delegate"); - delegateField.setAccessible(true); - - ComputeEngineChannelBuilder gceChannelBuilder = - ((ComputeEngineChannelBuilder) channelBuilder); - Object delegateChannelBuilder = delegateField.get(gceChannelBuilder); - - NettyChannelBuilder nettyChannelBuilder = (NettyChannelBuilder) delegateChannelBuilder; - nettyChannelBuilder.channelFactory(channelFactory); - nettyChannelBuilder.eventLoopGroup(eventLoopGroup); - } catch (NoSuchFieldException | IllegalAccessException e) { - throw new RuntimeException("Failed to inject the netty ChannelHandler", e); - } + NettyChannelBuilder nettyChannelBuilder = (NettyChannelBuilder) channelBuilder; + nettyChannelBuilder.channelFactory(channelFactory); + nettyChannelBuilder.eventLoopGroup(eventLoopGroup); } /** @see com.google.cloud.bigtable.data.v2.it.DirectPathFallbackIT.MyChannelHandler */ diff --git a/grpc-google-cloud-bigtable-admin-v2/pom.xml b/grpc-google-cloud-bigtable-admin-v2/pom.xml index 10f9d89486..72e7e5cdc6 100644 --- a/grpc-google-cloud-bigtable-admin-v2/pom.xml +++ b/grpc-google-cloud-bigtable-admin-v2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-bigtable-admin-v2 - 2.5.2 + 2.5.3 grpc-google-cloud-bigtable-admin-v2 GRPC library for grpc-google-cloud-bigtable-admin-v2 com.google.cloud google-cloud-bigtable-parent - 2.5.2 + 2.5.3 @@ -18,14 +18,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.5.2 + 2.5.3 pom import com.google.cloud google-cloud-bigtable-bom - 2.5.2 + 2.5.3 pom import diff --git a/grpc-google-cloud-bigtable-v2/pom.xml b/grpc-google-cloud-bigtable-v2/pom.xml index b3f1938ce7..8d7d9566f1 100644 --- a/grpc-google-cloud-bigtable-v2/pom.xml +++ b/grpc-google-cloud-bigtable-v2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-bigtable-v2 - 2.5.2 + 2.5.3 grpc-google-cloud-bigtable-v2 GRPC library for grpc-google-cloud-bigtable-v2 com.google.cloud google-cloud-bigtable-parent - 2.5.2 + 2.5.3 @@ -18,14 +18,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.5.2 + 2.5.3 pom import com.google.cloud google-cloud-bigtable-bom - 2.5.2 + 2.5.3 pom import diff --git a/pom.xml b/pom.xml index 167819a5d2..e8e5ef249e 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ google-cloud-bigtable-parent pom - 2.5.2 + 2.5.3 Google Cloud Bigtable Parent https://github.com/googleapis/java-bigtable @@ -14,7 +14,7 @@ com.google.cloud google-cloud-shared-config - 1.2.6 + 1.2.7 @@ -152,33 +152,33 @@ com.google.api.grpc proto-google-cloud-bigtable-v2 - 2.5.2 + 2.5.3 com.google.api.grpc proto-google-cloud-bigtable-admin-v2 - 2.5.2 + 2.5.3 com.google.api.grpc grpc-google-cloud-bigtable-v2 - 2.5.2 + 2.5.3 com.google.api.grpc grpc-google-cloud-bigtable-admin-v2 - 2.5.2 + 2.5.3 com.google.cloud google-cloud-bigtable - 2.5.2 + 2.5.3 com.google.cloud google-cloud-conformance-tests - 0.2.6 + 0.2.7 com.google.truth diff --git a/proto-google-cloud-bigtable-admin-v2/pom.xml b/proto-google-cloud-bigtable-admin-v2/pom.xml index 5481ee232e..8037ba0f9e 100644 --- a/proto-google-cloud-bigtable-admin-v2/pom.xml +++ b/proto-google-cloud-bigtable-admin-v2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-bigtable-admin-v2 - 2.5.2 + 2.5.3 proto-google-cloud-bigtable-admin-v2 PROTO library for proto-google-cloud-bigtable-admin-v2 com.google.cloud google-cloud-bigtable-parent - 2.5.2 + 2.5.3 @@ -18,14 +18,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.5.2 + 2.5.3 pom import com.google.cloud google-cloud-bigtable-bom - 2.5.2 + 2.5.3 pom import diff --git a/proto-google-cloud-bigtable-v2/pom.xml b/proto-google-cloud-bigtable-v2/pom.xml index 79290c0067..de2ae94dd9 100644 --- a/proto-google-cloud-bigtable-v2/pom.xml +++ b/proto-google-cloud-bigtable-v2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-bigtable-v2 - 2.5.2 + 2.5.3 proto-google-cloud-bigtable-v2 PROTO library for proto-google-cloud-bigtable-v2 com.google.cloud google-cloud-bigtable-parent - 2.5.2 + 2.5.3 @@ -18,14 +18,14 @@ com.google.cloud google-cloud-bigtable-deps-bom - 2.5.2 + 2.5.3 pom import com.google.cloud google-cloud-bigtable-bom - 2.5.2 + 2.5.3 pom import diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 69943b480d..fa3331966a 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -29,7 +29,7 @@ com.google.cloud google-cloud-bigtable - 2.5.1 + 2.5.2 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index 2ef8241428..5f66a02cfd 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -28,7 +28,7 @@ com.google.cloud google-cloud-bigtable - 2.5.2 + 2.5.3 diff --git a/versions.txt b/versions.txt index d9a57dce23..63dc15cc87 100644 --- a/versions.txt +++ b/versions.txt @@ -1,9 +1,9 @@ # Format: # module:released-version:current-version -google-cloud-bigtable:2.5.2:2.5.2 -grpc-google-cloud-bigtable-admin-v2:2.5.2:2.5.2 -grpc-google-cloud-bigtable-v2:2.5.2:2.5.2 -proto-google-cloud-bigtable-admin-v2:2.5.2:2.5.2 -proto-google-cloud-bigtable-v2:2.5.2:2.5.2 -google-cloud-bigtable-emulator:0.142.2:0.142.2 +google-cloud-bigtable:2.5.3:2.5.3 +grpc-google-cloud-bigtable-admin-v2:2.5.3:2.5.3 +grpc-google-cloud-bigtable-v2:2.5.3:2.5.3 +proto-google-cloud-bigtable-admin-v2:2.5.3:2.5.3 +proto-google-cloud-bigtable-v2:2.5.3:2.5.3 +google-cloud-bigtable-emulator:0.142.3:0.142.3