diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml index be3b9bde..9786771c 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 c5132427..1bb18232 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 59c7cadd..18e23230 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 05de1f60..6b5e56aa 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 c46230a7..d5d964df 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 05826ad9..cc602c9e 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 00000000..58049cc3 --- /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 a6217e57..b48812fc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +### [2.3.3](https://github.com/googleapis/java-container/compare/v2.3.2...v2.3.3) (2022-02-11) + + +### Dependencies + +* update actions/github-script action to v6 ([#680](https://github.com/googleapis/java-container/issues/680)) ([c6b62b0](https://github.com/googleapis/java-container/commit/c6b62b0b17717ab7af2b50701a6c3b53fdc480d7)) + ### [2.3.2](https://github.com/googleapis/java-container/compare/v2.3.1...v2.3.2) (2022-02-01) diff --git a/README.md b/README.md index c80467de..a051efe2 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file com.google.cloud libraries-bom - 24.2.0 + 24.3.0 pom import @@ -41,7 +41,7 @@ If you are using Maven without BOM, add this to your dependencies: com.google.cloud google-cloud-container - 2.3.1 + 2.3.2 ``` @@ -49,20 +49,20 @@ If you are using Maven without BOM, add this to your dependencies: If you are using Gradle 5.x or later, add this to your dependencies ```Groovy -implementation platform('com.google.cloud:libraries-bom:24.2.0') +implementation platform('com.google.cloud:libraries-bom:24.3.0') implementation 'com.google.cloud:google-cloud-container' ``` If you are using Gradle without BOM, add this to your dependencies ```Groovy -implementation 'com.google.cloud:google-cloud-container:2.3.1' +implementation 'com.google.cloud:google-cloud-container:2.3.2' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-container" % "2.3.1" +libraryDependencies += "com.google.cloud" % "google-cloud-container" % "2.3.2" ``` ## Authentication diff --git a/google-cloud-container-bom/pom.xml b/google-cloud-container-bom/pom.xml index 83fb590f..ed888209 100644 --- a/google-cloud-container-bom/pom.xml +++ b/google-cloud-container-bom/pom.xml @@ -3,12 +3,12 @@ 4.0.0 com.google.cloud google-cloud-container-bom - 2.3.2 + 2.3.3 pom com.google.cloud google-cloud-shared-config - 1.2.6 + 1.2.7 Google Cloud container BOM @@ -52,27 +52,27 @@ com.google.cloud google-cloud-container - 2.3.2 + 2.3.3 com.google.api.grpc grpc-google-cloud-container-v1 - 2.3.2 + 2.3.3 com.google.api.grpc grpc-google-cloud-container-v1beta1 - 2.3.2 + 2.3.3 com.google.api.grpc proto-google-cloud-container-v1 - 2.3.2 + 2.3.3 com.google.api.grpc proto-google-cloud-container-v1beta1 - 2.3.2 + 2.3.3 diff --git a/google-cloud-container/pom.xml b/google-cloud-container/pom.xml index 8e3896d3..7adb3ce9 100644 --- a/google-cloud-container/pom.xml +++ b/google-cloud-container/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-container - 2.3.2 + 2.3.3 jar Google Cloud Container https://github.com/googleapis/java-container @@ -11,7 +11,7 @@ com.google.cloud google-cloud-container-parent - 2.3.2 + 2.3.3 google-cloud-container diff --git a/google-cloud-container/src/test/java/com/google/cloud/container/v1/it/ITSystemTest.java b/google-cloud-container/src/test/java/com/google/cloud/container/v1/it/ITSystemTest.java index 84e1a8ab..ec3a71cb 100644 --- a/google-cloud-container/src/test/java/com/google/cloud/container/v1/it/ITSystemTest.java +++ b/google-cloud-container/src/test/java/com/google/cloud/container/v1/it/ITSystemTest.java @@ -61,6 +61,7 @@ public class ITSystemTest { @BeforeClass public static void beforeClass() throws Exception { client = ClusterManagerClient.create(); + Util.cleanUpExistingInstanceCluster(PROJECT_ID, ZONE, client); /** create node pool* */ NodePool nodePool = diff --git a/google-cloud-container/src/test/java/com/google/cloud/container/v1/it/Util.java b/google-cloud-container/src/test/java/com/google/cloud/container/v1/it/Util.java new file mode 100644 index 00000000..426bd42f --- /dev/null +++ b/google-cloud-container/src/test/java/com/google/cloud/container/v1/it/Util.java @@ -0,0 +1,53 @@ +/* + * 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. + */ + +package com.google.cloud.container.v1.it; + +import com.google.cloud.container.v1.ClusterManagerClient; +import com.google.container.v1.Cluster; +import com.google.container.v1.ListClustersResponse; +import java.io.IOException; +import java.time.Instant; +import java.time.OffsetDateTime; +import java.time.temporal.ChronoUnit; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class Util { + // Cleans existing test resources if any. + private static final int DELETION_THRESHOLD_TIME_HOURS = 24; + + /** tear down any clusters that are older than 24 hours * */ + public static void cleanUpExistingInstanceCluster( + String projectId, String zone, ClusterManagerClient client) + throws IOException, ExecutionException, InterruptedException { + + ListClustersResponse clustersResponse = client.listClusters(projectId, zone); + List clusters = clustersResponse.getClustersList(); + + for (Cluster cluster : clusters) { + if (isCreatedBeforeThresholdTime(cluster.getCreateTime())) { + client.deleteCluster(projectId, zone, cluster.getName()); + } + } + } + + private static boolean isCreatedBeforeThresholdTime(String timestamp) { + return OffsetDateTime.parse(timestamp) + .toInstant() + .isBefore(Instant.now().minus(DELETION_THRESHOLD_TIME_HOURS, ChronoUnit.HOURS)); + } +} diff --git a/grpc-google-cloud-container-v1/pom.xml b/grpc-google-cloud-container-v1/pom.xml index 8b58ed5d..f10a23ac 100644 --- a/grpc-google-cloud-container-v1/pom.xml +++ b/grpc-google-cloud-container-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-container-v1 - 2.3.2 + 2.3.3 grpc-google-cloud-container-v1 GRPC library for grpc-google-cloud-container-v1 com.google.cloud google-cloud-container-parent - 2.3.2 + 2.3.3 diff --git a/grpc-google-cloud-container-v1beta1/pom.xml b/grpc-google-cloud-container-v1beta1/pom.xml index a97ad51d..1232c9e8 100644 --- a/grpc-google-cloud-container-v1beta1/pom.xml +++ b/grpc-google-cloud-container-v1beta1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-container-v1beta1 - 2.3.2 + 2.3.3 grpc-google-cloud-container-v1beta1 GRPC library for google-cloud-container com.google.cloud google-cloud-container-parent - 2.3.2 + 2.3.3 diff --git a/pom.xml b/pom.xml index 0167fef5..b1e03aa4 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-container-parent pom - 2.3.2 + 2.3.3 Google Cloud Container Parent https://github.com/googleapis/java-container @@ -14,7 +14,7 @@ com.google.cloud google-cloud-shared-config - 1.2.6 + 1.2.7 @@ -61,27 +61,27 @@ com.google.api.grpc proto-google-cloud-container-v1 - 2.3.2 + 2.3.3 com.google.api.grpc proto-google-cloud-container-v1beta1 - 2.3.2 + 2.3.3 com.google.api.grpc grpc-google-cloud-container-v1beta1 - 2.3.2 + 2.3.3 com.google.api.grpc grpc-google-cloud-container-v1 - 2.3.2 + 2.3.3 com.google.cloud google-cloud-container - 2.3.2 + 2.3.3 @@ -132,7 +132,7 @@ org.apache.maven.plugins maven-project-info-reports-plugin - 3.1.2 + 3.2.1 @@ -159,7 +159,7 @@ org.apache.maven.plugins maven-javadoc-plugin - 3.3.1 + 3.3.2 html diff --git a/proto-google-cloud-container-v1/pom.xml b/proto-google-cloud-container-v1/pom.xml index fbbfecfa..ae013b13 100644 --- a/proto-google-cloud-container-v1/pom.xml +++ b/proto-google-cloud-container-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-container-v1 - 2.3.2 + 2.3.3 proto-google-cloud-container-v1 PROTO library for proto-google-cloud-container-v1 com.google.cloud google-cloud-container-parent - 2.3.2 + 2.3.3 diff --git a/proto-google-cloud-container-v1beta1/pom.xml b/proto-google-cloud-container-v1beta1/pom.xml index 5674b664..3bcd0219 100644 --- a/proto-google-cloud-container-v1beta1/pom.xml +++ b/proto-google-cloud-container-v1beta1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-container-v1beta1 - 2.3.2 + 2.3.3 proto-google-cloud-container-v1beta1 Proto library for google-cloud-container com.google.cloud google-cloud-container-parent - 2.3.2 + 2.3.3 diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 4db26867..1a026b97 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -29,7 +29,7 @@ com.google.cloud google-cloud-container - 2.3.1 + 2.3.2 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index ea09b694..425a56fe 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -28,7 +28,7 @@ com.google.cloud google-cloud-container - 2.3.1 + 2.3.2 diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index 7064c3df..3114bcc6 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -30,7 +30,7 @@ com.google.cloud libraries-bom - 24.2.0 + 24.3.0 pom import diff --git a/versions.txt b/versions.txt index 6157f770..19b711aa 100644 --- a/versions.txt +++ b/versions.txt @@ -1,8 +1,8 @@ # Format: # module:released-version:current-version -google-cloud-container:2.3.2:2.3.2 -grpc-google-cloud-container-v1:2.3.2:2.3.2 -grpc-google-cloud-container-v1beta1:2.3.2:2.3.2 -proto-google-cloud-container-v1:2.3.2:2.3.2 -proto-google-cloud-container-v1beta1:2.3.2:2.3.2 +google-cloud-container:2.3.3:2.3.3 +grpc-google-cloud-container-v1:2.3.3:2.3.3 +grpc-google-cloud-container-v1beta1:2.3.3:2.3.3 +proto-google-cloud-container-v1:2.3.3:2.3.3 +proto-google-cloud-container-v1beta1:2.3.3:2.3.3