diff --git a/.github/trusted-contribution.yml b/.github/trusted-contribution.yml new file mode 100644 index 00000000..f247d5c7 --- /dev/null +++ b/.github/trusted-contribution.yml @@ -0,0 +1,2 @@ +trustedContributors: +- renovate-bot \ No newline at end of file diff --git a/.kokoro/build.sh b/.kokoro/build.sh index f1ae5840..6d60be15 100755 --- a/.kokoro/build.sh +++ b/.kokoro/build.sh @@ -37,19 +37,23 @@ if [[ ! -z "${GOOGLE_APPLICATION_CREDENTIALS}" && "${GOOGLE_APPLICATION_CREDENTI export GOOGLE_APPLICATION_CREDENTIALS=$(realpath ${KOKORO_ROOT}/src/${GOOGLE_APPLICATION_CREDENTIALS}) fi +RETURN_CODE=0 +set +e + case ${JOB_TYPE} in test) mvn test -B -Dclirr.skip=true -Denforcer.skip=true - bash ${KOKORO_GFILE_DIR}/codecov.sh - bash .kokoro/coerce_logs.sh + RETURN_CODE=$? ;; lint) mvn \ -Penable-samples \ com.coveo:fmt-maven-plugin:check + RETURN_CODE=$? ;; javadoc) mvn javadoc:javadoc javadoc:test-javadoc + RETURN_CODE=$? ;; integration) mvn -B ${INTEGRATION_TEST_ARGS} \ @@ -59,21 +63,46 @@ integration) -Denforcer.skip=true \ -fae \ verify - bash .kokoro/coerce_logs.sh + RETURN_CODE=$? ;; samples) - mvn -B \ - -Penable-samples \ - -DtrimStackTrace=false \ - -Dclirr.skip=true \ - -Denforcer.skip=true \ - -fae \ - verify - bash .kokoro/coerce_logs.sh + if [[ -f samples/pom.xml ]] + then + pushd samples + mvn -B \ + -Penable-samples \ + -DtrimStackTrace=false \ + -Dclirr.skip=true \ + -Denforcer.skip=true \ + -fae \ + verify + RETURN_CODE=$? + popd + else + echo "no sample pom.xml found - skipping sample tests" + fi ;; clirr) mvn -B -Denforcer.skip=true clirr:check + RETURN_CODE=$? ;; *) ;; esac + +if [ "${REPORT_COVERAGE}" == "true" ] +then + bash ${KOKORO_GFILE_DIR}/codecov.sh +fi + +# fix output location of logs +bash .kokoro/coerce_logs.sh + +if [[ "${ENABLE_BUILD_COP}" == "true" ]] +then + chmod +x ${KOKORO_GFILE_DIR}/linux_amd64/buildcop + ${KOKORO_GFILE_DIR}/linux_amd64/buildcop -repo=googleapis/java-redis +fi + +echo "exiting with ${RETURN_CODE}" +exit ${RETURN_CODE} diff --git a/.kokoro/continuous/java8.cfg b/.kokoro/continuous/java8.cfg index 3b017fc8..495cc7ba 100644 --- a/.kokoro/continuous/java8.cfg +++ b/.kokoro/continuous/java8.cfg @@ -5,3 +5,8 @@ env_vars: { key: "TRAMPOLINE_IMAGE" value: "gcr.io/cloud-devrel-kokoro-resources/java8" } + +env_vars: { + key: "REPORT_COVERAGE" + value: "true" +} diff --git a/.kokoro/nightly/java8.cfg b/.kokoro/nightly/java8.cfg index 3b017fc8..495cc7ba 100644 --- a/.kokoro/nightly/java8.cfg +++ b/.kokoro/nightly/java8.cfg @@ -5,3 +5,8 @@ env_vars: { key: "TRAMPOLINE_IMAGE" value: "gcr.io/cloud-devrel-kokoro-resources/java8" } + +env_vars: { + key: "REPORT_COVERAGE" + value: "true" +} diff --git a/.kokoro/nightly/samples.cfg b/.kokoro/nightly/samples.cfg index 9a910249..b4b051cd 100644 --- a/.kokoro/nightly/samples.cfg +++ b/.kokoro/nightly/samples.cfg @@ -2,23 +2,28 @@ # Configure the docker image for kokoro-trampoline. env_vars: { - key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-kokoro-resources/java8" + key: "TRAMPOLINE_IMAGE" + value: "gcr.io/cloud-devrel-kokoro-resources/java8" } env_vars: { - key: "JOB_TYPE" - value: "samples" + key: "JOB_TYPE" + value: "samples" } env_vars: { - key: "GCLOUD_PROJECT" - value: "gcloud-devel" + key: "GCLOUD_PROJECT" + value: "gcloud-devel" } env_vars: { - key: "GOOGLE_APPLICATION_CREDENTIALS" - value: "keystore/73713_java_it_service_account" + key: "GOOGLE_APPLICATION_CREDENTIALS" + value: "keystore/73713_java_it_service_account" +} + +env_vars: { + key: "ENABLE_BUILD_COP" + value: "true" } before_action { diff --git a/.kokoro/presubmit/java8.cfg b/.kokoro/presubmit/java8.cfg index 3b017fc8..495cc7ba 100644 --- a/.kokoro/presubmit/java8.cfg +++ b/.kokoro/presubmit/java8.cfg @@ -5,3 +5,8 @@ env_vars: { key: "TRAMPOLINE_IMAGE" value: "gcr.io/cloud-devrel-kokoro-resources/java8" } + +env_vars: { + key: "REPORT_COVERAGE" + value: "true" +} diff --git a/.repo-metadata.json b/.repo-metadata.json index 67143a7a..7f9f534a 100644 --- a/.repo-metadata.json +++ b/.repo-metadata.json @@ -4,7 +4,7 @@ "product_documentation": "https://cloud.google.com/memorystore/docs/redis/", "client_documentation": "https://googleapis.dev/java/google-cloud-redis/latest/", "issue_tracker": "https://issuetracker.google.com/savedsearches/5169231", - "release_level": "beta", + "release_level": "ga", "language": "java", "repo": "googleapis/java-redis", "repo_short": "java-redis", diff --git a/CHANGELOG.md b/CHANGELOG.md index 00901316..bce8f3d4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,27 @@ # Changelog +## [1.0.0](https://www.github.com/googleapis/java-redis/compare/v0.119.0...v1.0.0) (2020-02-29) + + +### Features + +* promote to GA ([#76](https://www.github.com/googleapis/java-redis/issues/76)) ([b8ea41f](https://www.github.com/googleapis/java-redis/commit/b8ea41f49eddbb931a1af37e693674026a33ff9b)) + + +### Dependencies + +* update core dependency ([#62](https://www.github.com/googleapis/java-redis/issues/62)) ([15742cc](https://www.github.com/googleapis/java-redis/commit/15742cc4b4221180ed1f55f63738547c25ca2cea)) +* update core libraries ([#79](https://www.github.com/googleapis/java-redis/issues/79)) ([ca3ebd9](https://www.github.com/googleapis/java-redis/commit/ca3ebd926d5c3bd83e316bb38022a7da7e1c336e)) +* update dependency com.google.cloud:google-cloud-core to v1.92.5 ([eeef8c1](https://www.github.com/googleapis/java-redis/commit/eeef8c17dccc634142ea35f363d6f22b524f231d)) +* update dependency com.google.protobuf:protobuf-bom to v3.11.4 ([ba87bb6](https://www.github.com/googleapis/java-redis/commit/ba87bb626a02341b9e06d60346061ce208f545dd)) +* update dependency io.grpc:grpc-bom to v1.27.1 ([a7da0ae](https://www.github.com/googleapis/java-redis/commit/a7da0ae1f1ed2773ccfeed0ebf2823393163c712)) + + +### Documentation + +* **regen:** update generated samples for UpdateInstance ([#65](https://www.github.com/googleapis/java-redis/issues/65)) ([c21e230](https://www.github.com/googleapis/java-redis/commit/c21e2301698c6d4fb2de1dce9d60c477031ee7f4)) +* **regen:** update sample code to set total timeout, add API client header test ([e0790c9](https://www.github.com/googleapis/java-redis/commit/e0790c90b5b3e7d819cfc6c5305b957b6460ad14)) + ## [0.119.0](https://www.github.com/googleapis/java-redis/compare/v0.118.1...v0.119.0) (2020-02-05) diff --git a/README.md b/README.md index 75870be2..ea7054d0 100644 --- a/README.md +++ b/README.md @@ -8,9 +8,6 @@ Java idiomatic client for [Cloud Redis][product-docs]. - [Product Documentation][product-docs] - [Client Library Documentation][javadocs] -> Note: This client is a work-in-progress, and may occasionally -> make backwards-incompatible changes. - ## Quickstart If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file @@ -20,13 +17,12 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file com.google.cloud libraries-bom - 3.5.0 + 4.2.0 pom import - com.google.cloud @@ -43,17 +39,17 @@ If you are using Maven without BOM, add this to your dependencies: com.google.cloud google-cloud-redis - 0.119.0 + 1.0.0 ``` If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.cloud:google-cloud-redis:0.119.0' +compile 'com.google.cloud:google-cloud-redis:1.0.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-redis" % "0.119.0" +libraryDependencies += "com.google.cloud" % "google-cloud-redis" % "1.0.0" ``` [//]: # ({x-version-update-end}) @@ -87,6 +83,8 @@ use this Cloud Redis Client Library. + + ## Troubleshooting To get help, follow the instructions in the [shared Troubleshooting document][troubleshooting]. @@ -104,9 +102,6 @@ Java 7 or above is required for using this client. This library follows [Semantic Versioning](http://semver.org/). -It is currently in major version zero (``0.y.z``), which means that anything may change at any time -and the public API should not be considered stable. - ## Contributing @@ -145,7 +140,7 @@ Java 11 | [![Kokoro CI][kokoro-badge-image-5]][kokoro-badge-link-5] [kokoro-badge-link-4]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-redis/java8-win.html [kokoro-badge-image-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-redis/java11.svg [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-redis/java11.html -[stability-image]: https://img.shields.io/badge/stability-beta-yellow +[stability-image]: https://img.shields.io/badge/stability-ga-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-redis.svg [maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-redis&core=gav [authentication]: https://github.com/googleapis/google-cloud-java#authentication @@ -158,4 +153,5 @@ Java 11 | [![Kokoro CI][kokoro-badge-image-5]][kokoro-badge-link-5] [license]: https://github.com/googleapis/java-redis/blob/master/LICENSE [enable-billing]: https://cloud.google.com/apis/docs/getting-started#enabling_billing [enable-api]: https://console.cloud.google.com/flows/enableapi?apiid=redis.googleapis.com -[libraries-bom]: https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM \ No newline at end of file +[libraries-bom]: https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM +[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png diff --git a/google-cloud-redis-bom/pom.xml b/google-cloud-redis-bom/pom.xml index 4bdf2db3..cd87cf8e 100644 --- a/google-cloud-redis-bom/pom.xml +++ b/google-cloud-redis-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-redis-bom - 0.119.0 + 1.0.0 pom com.google.cloud @@ -64,27 +64,27 @@ com.google.api.grpc grpc-google-cloud-redis-v1beta1 - 0.84.0 + 0.85.0 com.google.api.grpc grpc-google-cloud-redis-v1 - 0.84.0 + 1.0.0 com.google.api.grpc proto-google-cloud-redis-v1 - 0.84.0 + 1.0.0 com.google.api.grpc proto-google-cloud-redis-v1beta1 - 0.84.0 + 0.85.0 com.google.cloud google-cloud-redis - 0.119.0 + 1.0.0 diff --git a/google-cloud-redis/pom.xml b/google-cloud-redis/pom.xml index 195db428..7d5e5688 100644 --- a/google-cloud-redis/pom.xml +++ b/google-cloud-redis/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-redis - 0.119.0 + 1.0.0 jar Google Cloud Redis https://github.com/googleapis/java-redis @@ -11,7 +11,7 @@ com.google.cloud google-cloud-redis-parent - 0.119.0 + 1.0.0 google-cloud-redis diff --git a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/CloudRedisClient.java b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/CloudRedisClient.java index c69be1f2..9edce6fb 100644 --- a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/CloudRedisClient.java +++ b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/CloudRedisClient.java @@ -704,9 +704,13 @@ public final UnaryCallable createInstanceCalla * FieldMask updateMask = FieldMask.newBuilder() * .addAllPaths(paths) * .build(); - * String displayName = " instance.memory_size_gb=4"; + * String displayName = "UpdatedDisplayName"; + * String name = "projects/<project-name>/locations/<location>/instances/<instance>"; + * int memorySizeGb = 4; * Instance instance = Instance.newBuilder() * .setDisplayName(displayName) + * .setName(name) + * .setMemorySizeGb(memorySizeGb) * .build(); * Instance response = cloudRedisClient.updateInstanceAsync(updateMask, instance).get(); * } @@ -746,9 +750,13 @@ public final OperationFuture updateInstanceAsync( * FieldMask updateMask = FieldMask.newBuilder() * .addAllPaths(paths) * .build(); - * String displayName = " instance.memory_size_gb=4"; + * String displayName = "UpdatedDisplayName"; + * String name = "projects/<project-name>/locations/<location>/instances/<instance>"; + * int memorySizeGb = 4; * Instance instance = Instance.newBuilder() * .setDisplayName(displayName) + * .setName(name) + * .setMemorySizeGb(memorySizeGb) * .build(); * UpdateInstanceRequest request = UpdateInstanceRequest.newBuilder() * .setUpdateMask(updateMask) @@ -786,9 +794,13 @@ public final OperationFuture updateInstanceAsync( * FieldMask updateMask = FieldMask.newBuilder() * .addAllPaths(paths) * .build(); - * String displayName = " instance.memory_size_gb=4"; + * String displayName = "UpdatedDisplayName"; + * String name = "projects/<project-name>/locations/<location>/instances/<instance>"; + * int memorySizeGb = 4; * Instance instance = Instance.newBuilder() * .setDisplayName(displayName) + * .setName(name) + * .setMemorySizeGb(memorySizeGb) * .build(); * UpdateInstanceRequest request = UpdateInstanceRequest.newBuilder() * .setUpdateMask(updateMask) @@ -824,9 +836,13 @@ public final OperationFuture updateInstanceAsync( * FieldMask updateMask = FieldMask.newBuilder() * .addAllPaths(paths) * .build(); - * String displayName = " instance.memory_size_gb=4"; + * String displayName = "UpdatedDisplayName"; + * String name = "projects/<project-name>/locations/<location>/instances/<instance>"; + * int memorySizeGb = 4; * Instance instance = Instance.newBuilder() * .setDisplayName(displayName) + * .setName(name) + * .setMemorySizeGb(memorySizeGb) * .build(); * UpdateInstanceRequest request = UpdateInstanceRequest.newBuilder() * .setUpdateMask(updateMask) diff --git a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/CloudRedisSettings.java b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/CloudRedisSettings.java index 9fd72b60..e1039828 100644 --- a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/CloudRedisSettings.java +++ b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/CloudRedisSettings.java @@ -57,8 +57,12 @@ * * CloudRedisSettings.Builder cloudRedisSettingsBuilder = * CloudRedisSettings.newBuilder(); - * cloudRedisSettingsBuilder.getInstanceSettings().getRetrySettings().toBuilder() - * .setTotalTimeout(Duration.ofSeconds(30)); + * cloudRedisSettingsBuilder + * .getInstanceSettings() + * .setRetrySettings( + * cloudRedisSettingsBuilder.getInstanceSettings().getRetrySettings().toBuilder() + * .setTotalTimeout(Duration.ofSeconds(30)) + * .build()); * CloudRedisSettings cloudRedisSettings = cloudRedisSettingsBuilder.build(); * * diff --git a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/stub/CloudRedisStubSettings.java b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/stub/CloudRedisStubSettings.java index 72d2528c..05d5d77c 100644 --- a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/stub/CloudRedisStubSettings.java +++ b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1/stub/CloudRedisStubSettings.java @@ -86,8 +86,12 @@ * * CloudRedisStubSettings.Builder cloudRedisSettingsBuilder = * CloudRedisStubSettings.newBuilder(); - * cloudRedisSettingsBuilder.getInstanceSettings().getRetrySettings().toBuilder() - * .setTotalTimeout(Duration.ofSeconds(30)); + * cloudRedisSettingsBuilder + * .getInstanceSettings() + * .setRetrySettings( + * cloudRedisSettingsBuilder.getInstanceSettings().getRetrySettings().toBuilder() + * .setTotalTimeout(Duration.ofSeconds(30)) + * .build()); * CloudRedisStubSettings cloudRedisSettings = cloudRedisSettingsBuilder.build(); * * diff --git a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisClient.java b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisClient.java index 9f2d3c4e..2d5baa3c 100644 --- a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisClient.java +++ b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisClient.java @@ -705,9 +705,11 @@ public final UnaryCallable createInstanceCalla * .addAllPaths(paths) * .build(); * String displayName = "UpdatedDisplayName"; + * String name = "projects/<project-name>/locations/<location>/instances/<instance>"; * int memorySizeGb = 4; * Instance instance = Instance.newBuilder() * .setDisplayName(displayName) + * .setName(name) * .setMemorySizeGb(memorySizeGb) * .build(); * Instance response = cloudRedisClient.updateInstanceAsync(updateMask, instance).get(); @@ -749,9 +751,11 @@ public final OperationFuture updateInstanceAsync( * .addAllPaths(paths) * .build(); * String displayName = "UpdatedDisplayName"; + * String name = "projects/<project-name>/locations/<location>/instances/<instance>"; * int memorySizeGb = 4; * Instance instance = Instance.newBuilder() * .setDisplayName(displayName) + * .setName(name) * .setMemorySizeGb(memorySizeGb) * .build(); * UpdateInstanceRequest request = UpdateInstanceRequest.newBuilder() @@ -790,9 +794,11 @@ public final OperationFuture updateInstanceAsync(UpdateInstanceRe * .addAllPaths(paths) * .build(); * String displayName = "UpdatedDisplayName"; + * String name = "projects/<project-name>/locations/<location>/instances/<instance>"; * int memorySizeGb = 4; * Instance instance = Instance.newBuilder() * .setDisplayName(displayName) + * .setName(name) * .setMemorySizeGb(memorySizeGb) * .build(); * UpdateInstanceRequest request = UpdateInstanceRequest.newBuilder() @@ -830,9 +836,11 @@ public final OperationFuture updateInstanceAsync(UpdateInstanceRe * .addAllPaths(paths) * .build(); * String displayName = "UpdatedDisplayName"; + * String name = "projects/<project-name>/locations/<location>/instances/<instance>"; * int memorySizeGb = 4; * Instance instance = Instance.newBuilder() * .setDisplayName(displayName) + * .setName(name) * .setMemorySizeGb(memorySizeGb) * .build(); * UpdateInstanceRequest request = UpdateInstanceRequest.newBuilder() diff --git a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisSettings.java b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisSettings.java index 2a73ce25..10a87819 100644 --- a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisSettings.java +++ b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisSettings.java @@ -58,8 +58,12 @@ * * CloudRedisSettings.Builder cloudRedisSettingsBuilder = * CloudRedisSettings.newBuilder(); - * cloudRedisSettingsBuilder.getInstanceSettings().getRetrySettings().toBuilder() - * .setTotalTimeout(Duration.ofSeconds(30)); + * cloudRedisSettingsBuilder + * .getInstanceSettings() + * .setRetrySettings( + * cloudRedisSettingsBuilder.getInstanceSettings().getRetrySettings().toBuilder() + * .setTotalTimeout(Duration.ofSeconds(30)) + * .build()); * CloudRedisSettings cloudRedisSettings = cloudRedisSettingsBuilder.build(); * * diff --git a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/stub/CloudRedisStubSettings.java b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/stub/CloudRedisStubSettings.java index c937b88f..17cd4bba 100644 --- a/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/stub/CloudRedisStubSettings.java +++ b/google-cloud-redis/src/main/java/com/google/cloud/redis/v1beta1/stub/CloudRedisStubSettings.java @@ -87,8 +87,12 @@ * * CloudRedisStubSettings.Builder cloudRedisSettingsBuilder = * CloudRedisStubSettings.newBuilder(); - * cloudRedisSettingsBuilder.getInstanceSettings().getRetrySettings().toBuilder() - * .setTotalTimeout(Duration.ofSeconds(30)); + * cloudRedisSettingsBuilder + * .getInstanceSettings() + * .setRetrySettings( + * cloudRedisSettingsBuilder.getInstanceSettings().getRetrySettings().toBuilder() + * .setTotalTimeout(Duration.ofSeconds(30)) + * .build()); * CloudRedisStubSettings cloudRedisSettings = cloudRedisSettingsBuilder.build(); * * diff --git a/google-cloud-redis/src/test/java/com/google/cloud/redis/v1/CloudRedisClientTest.java b/google-cloud-redis/src/test/java/com/google/cloud/redis/v1/CloudRedisClientTest.java index 9fb36838..1208774c 100644 --- a/google-cloud-redis/src/test/java/com/google/cloud/redis/v1/CloudRedisClientTest.java +++ b/google-cloud-redis/src/test/java/com/google/cloud/redis/v1/CloudRedisClientTest.java @@ -284,7 +284,7 @@ public void createInstanceExceptionTest() throws Exception { @Test @SuppressWarnings("all") public void updateInstanceTest() throws Exception { - InstanceName name = InstanceName.of("[PROJECT]", "[LOCATION]", "[INSTANCE]"); + InstanceName name2 = InstanceName.of("[PROJECT]", "[LOCATION]", "[INSTANCE]"); String displayName2 = "displayName21615000987"; String locationId = "locationId552319461"; String alternativeLocationId = "alternativeLocationId-718920621"; @@ -294,12 +294,12 @@ public void updateInstanceTest() throws Exception { int port = 3446913; String currentLocationId = "currentLocationId1312712735"; String statusMessage = "statusMessage-239442758"; - int memorySizeGb = 34199707; + int memorySizeGb2 = 1493816946; String authorizedNetwork = "authorizedNetwork-1733809270"; String persistenceIamIdentity = "persistenceIamIdentity1061944584"; Instance expectedResponse = Instance.newBuilder() - .setName(name.toString()) + .setName(name2.toString()) .setDisplayName(displayName2) .setLocationId(locationId) .setAlternativeLocationId(alternativeLocationId) @@ -309,7 +309,7 @@ public void updateInstanceTest() throws Exception { .setPort(port) .setCurrentLocationId(currentLocationId) .setStatusMessage(statusMessage) - .setMemorySizeGb(memorySizeGb) + .setMemorySizeGb(memorySizeGb2) .setAuthorizedNetwork(authorizedNetwork) .setPersistenceIamIdentity(persistenceIamIdentity) .build(); @@ -325,8 +325,15 @@ public void updateInstanceTest() throws Exception { String pathsElement2 = "memory_size_gb"; List paths = Arrays.asList(pathsElement, pathsElement2); FieldMask updateMask = FieldMask.newBuilder().addAllPaths(paths).build(); - String displayName = " instance.memory_size_gb=4"; - Instance instance = Instance.newBuilder().setDisplayName(displayName).build(); + String displayName = "UpdatedDisplayName"; + String name = "projects//locations//instances/"; + int memorySizeGb = 4; + Instance instance = + Instance.newBuilder() + .setDisplayName(displayName) + .setName(name) + .setMemorySizeGb(memorySizeGb) + .build(); Instance actualResponse = client.updateInstanceAsync(updateMask, instance).get(); Assert.assertEquals(expectedResponse, actualResponse); @@ -354,8 +361,15 @@ public void updateInstanceExceptionTest() throws Exception { String pathsElement2 = "memory_size_gb"; List paths = Arrays.asList(pathsElement, pathsElement2); FieldMask updateMask = FieldMask.newBuilder().addAllPaths(paths).build(); - String displayName = " instance.memory_size_gb=4"; - Instance instance = Instance.newBuilder().setDisplayName(displayName).build(); + String displayName = "UpdatedDisplayName"; + String name = "projects//locations//instances/"; + int memorySizeGb = 4; + Instance instance = + Instance.newBuilder() + .setDisplayName(displayName) + .setName(name) + .setMemorySizeGb(memorySizeGb) + .build(); client.updateInstanceAsync(updateMask, instance).get(); Assert.fail("No exception raised"); diff --git a/google-cloud-redis/src/test/java/com/google/cloud/redis/it/ITSystemTest.java b/google-cloud-redis/src/test/java/com/google/cloud/redis/v1/it/ITSystemTest.java similarity index 88% rename from google-cloud-redis/src/test/java/com/google/cloud/redis/it/ITSystemTest.java rename to google-cloud-redis/src/test/java/com/google/cloud/redis/v1/it/ITSystemTest.java index 2c4b2444..451cac83 100644 --- a/google-cloud-redis/src/test/java/com/google/cloud/redis/it/ITSystemTest.java +++ b/google-cloud-redis/src/test/java/com/google/cloud/redis/v1/it/ITSystemTest.java @@ -1,5 +1,5 @@ /* - * Copyright 2019 Google LLC + * Copyright 2020 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,15 +14,15 @@ * limitations under the License. */ -package com.google.cloud.redis.it; +package com.google.cloud.redis.v1.it; import static org.junit.Assert.assertEquals; import com.google.cloud.ServiceOptions; -import com.google.cloud.redis.v1beta1.CloudRedisClient; -import com.google.cloud.redis.v1beta1.Instance; -import com.google.cloud.redis.v1beta1.InstanceName; -import com.google.cloud.redis.v1beta1.LocationName; +import com.google.cloud.redis.v1.CloudRedisClient; +import com.google.cloud.redis.v1.Instance; +import com.google.cloud.redis.v1.InstanceName; +import com.google.cloud.redis.v1.LocationName; import com.google.common.collect.Lists; import java.util.List; import java.util.UUID; @@ -46,7 +46,7 @@ public class ITSystemTest { private static final String AUTHORIZED_NETWORK = System.getProperty("redis.network", "default"); @BeforeClass - public static void beforeClass() throws Exception { + public static void setUp() throws Exception { client = CloudRedisClient.create(); projectId = ServiceOptions.getDefaultProjectId(); @@ -64,7 +64,7 @@ public static void beforeClass() throws Exception { } @AfterClass - public static void afterClass() { + public static void tearDown() { /** Deletes a specific Redis instance. Instance stops serving and data is deleted. */ InstanceName name = InstanceName.of(projectId, LOCATION, INSTANCE); @@ -82,7 +82,7 @@ public void testGetInstance() { } @Test - public void testListInstance() { + public void testListInstances() { LocationName parent = LocationName.of(projectId, LOCATION); CloudRedisClient.ListInstancesPagedResponse pagedListResponse = client.listInstances(parent); List resources = Lists.newArrayList(pagedListResponse.iterateAll()); diff --git a/google-cloud-redis/src/test/java/com/google/cloud/redis/v1beta1/CloudRedisClientTest.java b/google-cloud-redis/src/test/java/com/google/cloud/redis/v1beta1/CloudRedisClientTest.java index df94b1a8..05137664 100644 --- a/google-cloud-redis/src/test/java/com/google/cloud/redis/v1beta1/CloudRedisClientTest.java +++ b/google-cloud-redis/src/test/java/com/google/cloud/redis/v1beta1/CloudRedisClientTest.java @@ -284,7 +284,7 @@ public void createInstanceExceptionTest() throws Exception { @Test @SuppressWarnings("all") public void updateInstanceTest() throws Exception { - InstanceName name = InstanceName.of("[PROJECT]", "[LOCATION]", "[INSTANCE]"); + InstanceName name2 = InstanceName.of("[PROJECT]", "[LOCATION]", "[INSTANCE]"); String displayName2 = "displayName21615000987"; String locationId = "locationId552319461"; String alternativeLocationId = "alternativeLocationId-718920621"; @@ -299,7 +299,7 @@ public void updateInstanceTest() throws Exception { String persistenceIamIdentity = "persistenceIamIdentity1061944584"; Instance expectedResponse = Instance.newBuilder() - .setName(name.toString()) + .setName(name2.toString()) .setDisplayName(displayName2) .setLocationId(locationId) .setAlternativeLocationId(alternativeLocationId) @@ -326,9 +326,14 @@ public void updateInstanceTest() throws Exception { List paths = Arrays.asList(pathsElement, pathsElement2); FieldMask updateMask = FieldMask.newBuilder().addAllPaths(paths).build(); String displayName = "UpdatedDisplayName"; + String name = "projects//locations//instances/"; int memorySizeGb = 4; Instance instance = - Instance.newBuilder().setDisplayName(displayName).setMemorySizeGb(memorySizeGb).build(); + Instance.newBuilder() + .setDisplayName(displayName) + .setName(name) + .setMemorySizeGb(memorySizeGb) + .build(); Instance actualResponse = client.updateInstanceAsync(updateMask, instance).get(); Assert.assertEquals(expectedResponse, actualResponse); @@ -357,9 +362,14 @@ public void updateInstanceExceptionTest() throws Exception { List paths = Arrays.asList(pathsElement, pathsElement2); FieldMask updateMask = FieldMask.newBuilder().addAllPaths(paths).build(); String displayName = "UpdatedDisplayName"; + String name = "projects//locations//instances/"; int memorySizeGb = 4; Instance instance = - Instance.newBuilder().setDisplayName(displayName).setMemorySizeGb(memorySizeGb).build(); + Instance.newBuilder() + .setDisplayName(displayName) + .setName(name) + .setMemorySizeGb(memorySizeGb) + .build(); client.updateInstanceAsync(updateMask, instance).get(); Assert.fail("No exception raised"); diff --git a/google-cloud-redis/src/test/java/com/google/cloud/redis/v1beta1/it/ITSystemTest.java b/google-cloud-redis/src/test/java/com/google/cloud/redis/v1beta1/it/ITSystemTest.java new file mode 100644 index 00000000..ece5262f --- /dev/null +++ b/google-cloud-redis/src/test/java/com/google/cloud/redis/v1beta1/it/ITSystemTest.java @@ -0,0 +1,109 @@ +/* + * Copyright 2019 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.redis.v1beta1.it; + +import static org.junit.Assert.assertEquals; + +import com.google.cloud.ServiceOptions; +import com.google.cloud.redis.v1beta1.CloudRedisClient; +import com.google.cloud.redis.v1beta1.Instance; +import com.google.cloud.redis.v1beta1.InstanceName; +import com.google.cloud.redis.v1beta1.LocationName; +import com.google.cloud.redis.v1beta1.UpdateInstanceRequest; +import com.google.common.collect.Lists; +import com.google.protobuf.FieldMask; +import java.util.Arrays; +import java.util.List; +import java.util.UUID; +import java.util.concurrent.ExecutionException; +import java.util.logging.Logger; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; + +public class ITSystemTest { + + private static CloudRedisClient client; + + private static final Logger LOG = Logger.getLogger(ITSystemTest.class.getName()); + private static final String PROJECT_ID = ServiceOptions.getDefaultProjectId(); + private static final String NETWORK = System.getProperty("redis.network", "default"); + private static final String INSTANCE = + "test-instance-" + UUID.randomUUID().toString().substring(0, 8); + private static final String LOCATION = "us-central1"; + private static final String AUTHORIZED_NETWORK = + "projects/" + PROJECT_ID + "/global/networks/" + NETWORK; + private static final Instance.Tier TIER = Instance.Tier.BASIC; + private static final LocationName PARENT = LocationName.of(PROJECT_ID, LOCATION); + private static final InstanceName INSTANCE_NAME = InstanceName.of(PROJECT_ID, LOCATION, INSTANCE); + + @BeforeClass + public static void setUp() throws Exception { + client = CloudRedisClient.create(); + /* Creates a Redis instance based on the specified tier and memory size. */ + Instance instance = + Instance.newBuilder() + .setTier(TIER) + .setMemorySizeGb(1) + .setAuthorizedNetwork(AUTHORIZED_NETWORK) + .build(); + client.createInstanceAsync(PARENT, INSTANCE, instance).get(); + LOG.info("redis instance created successfully."); + } + + @AfterClass + public static void tearDown() { + /* Deletes a specific Redis instance. Instance stops serving and data is deleted. */ + client.deleteInstanceAsync(INSTANCE_NAME); + LOG.info("redis instance deleted successfully."); + client.close(); + } + + @Test + public void testGetInstance() { + Instance response = client.getInstance(INSTANCE_NAME); + assertEquals(TIER, response.getTier()); + assertEquals(INSTANCE_NAME.toString(), response.getName()); + } + + @Test + public void testListInstances() { + List instances = Lists.newArrayList(client.listInstances(PARENT).iterateAll()); + for (Instance instance : instances) { + if (INSTANCE_NAME.toString().equals(instance.getName())) { + assertEquals(TIER, instance.getTier()); + assertEquals(INSTANCE_NAME.toString(), instance.getName()); + } + } + } + + @Test + public void testUpdateInstance() throws ExecutionException, InterruptedException { + int memorySizeGb = 4; + FieldMask updateMask = + FieldMask.newBuilder().addAllPaths(Arrays.asList("memory_size_gb")).build(); + Instance instance = + Instance.newBuilder() + .setName(INSTANCE_NAME.toString()) + .setMemorySizeGb(memorySizeGb) + .build(); + UpdateInstanceRequest updateInstanceRequest = + UpdateInstanceRequest.newBuilder().setInstance(instance).setUpdateMask(updateMask).build(); + Instance actualInstance = client.updateInstanceAsync(updateInstanceRequest).get(); + assertEquals(memorySizeGb, actualInstance.getMemorySizeGb()); + } +} diff --git a/grpc-google-cloud-redis-v1/pom.xml b/grpc-google-cloud-redis-v1/pom.xml index 9868935c..3f915c2a 100644 --- a/grpc-google-cloud-redis-v1/pom.xml +++ b/grpc-google-cloud-redis-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-redis-v1 - 0.84.0 + 1.0.0 grpc-google-cloud-redis-v1 GRPC library for grpc-google-cloud-redis-v1 com.google.cloud google-cloud-redis-parent - 0.119.0 + 1.0.0 diff --git a/grpc-google-cloud-redis-v1beta1/pom.xml b/grpc-google-cloud-redis-v1beta1/pom.xml index 8d89f83e..b2142d7e 100644 --- a/grpc-google-cloud-redis-v1beta1/pom.xml +++ b/grpc-google-cloud-redis-v1beta1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-redis-v1beta1 - 0.84.0 + 0.85.0 grpc-google-cloud-redis-v1beta1 GRPC library for grpc-google-cloud-redis-v1beta1 com.google.cloud google-cloud-redis-parent - 0.119.0 + 1.0.0 diff --git a/pom.xml b/pom.xml index 04ace2ff..b81bc9c4 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-redis-parent pom - 0.119.0 + 1.0.0 Google Cloud Redis Parent https://github.com/googleapis/java-redis @@ -63,12 +63,12 @@ UTF-8 github google-cloud-redis-parent - 1.91.1 + 1.93.0 1.8.1 1.17.0 - 1.53.1 - 1.27.0 - 3.11.3 + 1.54.0 + 1.27.2 + 3.11.4 4.13 28.2-android 1.4.1 @@ -81,27 +81,27 @@ com.google.api.grpc proto-google-cloud-redis-v1 - 0.84.0 + 1.0.0 com.google.api.grpc proto-google-cloud-redis-v1beta1 - 0.84.0 + 0.85.0 com.google.api.grpc grpc-google-cloud-redis-v1beta1 - 0.84.0 + 0.85.0 com.google.api.grpc grpc-google-cloud-redis-v1 - 0.84.0 + 1.0.0 com.google.cloud google-cloud-redis - 0.119.0 + 1.0.0 @@ -168,7 +168,7 @@ com.google.cloud google-cloud-core - 1.92.4 + ${google.core.version} @@ -279,4 +279,4 @@ - \ No newline at end of file + diff --git a/proto-google-cloud-redis-v1/pom.xml b/proto-google-cloud-redis-v1/pom.xml index e3700f8a..c68cf67a 100644 --- a/proto-google-cloud-redis-v1/pom.xml +++ b/proto-google-cloud-redis-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-redis-v1 - 0.84.0 + 1.0.0 proto-google-cloud-redis-v1 PROTO library for proto-google-cloud-redis-v1 com.google.cloud google-cloud-redis-parent - 0.119.0 + 1.0.0 diff --git a/proto-google-cloud-redis-v1beta1/pom.xml b/proto-google-cloud-redis-v1beta1/pom.xml index 2c46d9bd..236f8bdc 100644 --- a/proto-google-cloud-redis-v1beta1/pom.xml +++ b/proto-google-cloud-redis-v1beta1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-redis-v1beta1 - 0.84.0 + 0.85.0 proto-google-cloud-redis-v1beta1 PROTO library for proto-google-cloud-redis-v1beta1 com.google.cloud google-cloud-redis-parent - 0.119.0 + 1.0.0 diff --git a/renovate.json b/renovate.json index 268a4669..fc641270 100644 --- a/renovate.json +++ b/renovate.json @@ -54,6 +54,13 @@ "semanticCommitType": "build", "semanticCommitScope": "deps" }, + { + "packagePatterns": [ + "^com.google.cloud:libraries-bom" + ], + "semanticCommitType": "chore", + "semanticCommitScope": "deps" + }, { "packagePatterns": [ "^com.google.cloud:google-cloud-" diff --git a/synth.metadata b/synth.metadata index 6ea997e2..48b20087 100644 --- a/synth.metadata +++ b/synth.metadata @@ -1,27 +1,27 @@ { - "updateTime": "2020-02-05T08:59:46.510803Z", + "updateTime": "2020-02-28T20:16:22.499931Z", "sources": [ { "generator": { "name": "artman", - "version": "0.44.4", - "dockerImage": "googleapis/artman@sha256:19e945954fc960a4bdfee6cb34695898ab21a8cf0bac063ee39b91f00a1faec8" + "version": "0.46.0", + "dockerImage": "googleapis/artman@sha256:6248a21fba8f0d618c3b032669cec2618e684b66922bb70391fe08c41b05f6ee" } }, { "git": { "name": "googleapis", "remote": "https://github.com/googleapis/googleapis.git", - "sha": "a8ed9d921fdddc61d8467bfd7c1668f0ad90435c", - "internalRef": "293257997", - "log": "a8ed9d921fdddc61d8467bfd7c1668f0ad90435c\nfix: set Ruby module name for OrgPolicy\n\nPiperOrigin-RevId: 293257997\n\n6c7d28509bd8315de8af0889688ee20099594269\nredis: v1beta1 add UpgradeInstance and connect_mode field to Instance\n\nPiperOrigin-RevId: 293242878\n\nae0abed4fcb4c21f5cb67a82349a049524c4ef68\nredis: v1 add connect_mode field to Instance\n\nPiperOrigin-RevId: 293241914\n\n3f7a0d29b28ee9365771da2b66edf7fa2b4e9c56\nAdds service config definition for bigqueryreservation v1beta1\n\nPiperOrigin-RevId: 293234418\n\n0c88168d5ed6fe353a8cf8cbdc6bf084f6bb66a5\naddition of BUILD & configuration for accessapproval v1\n\nPiperOrigin-RevId: 293219198\n\n39bedc2e30f4778ce81193f6ba1fec56107bcfc4\naccessapproval: v1 publish protos\n\nPiperOrigin-RevId: 293167048\n\n69d9945330a5721cd679f17331a78850e2618226\nAdd file-level `Session` resource definition\n\nPiperOrigin-RevId: 293080182\n\nf6a1a6b417f39694275ca286110bc3c1ca4db0dc\nAdd file-level `Session` resource definition\n\nPiperOrigin-RevId: 293080178\n\n" + "sha": "e9e90a787703ec5d388902e2cb796aaed3a385b4", + "internalRef": "297671458", + "log": "e9e90a787703ec5d388902e2cb796aaed3a385b4\nDialogflow weekly v2/v2beta1 library update:\n - adding get validation result\n - adding field mask override control for output audio config\nImportant updates are also posted at:\nhttps://cloud.google.com/dialogflow/docs/release-notes\n\nPiperOrigin-RevId: 297671458\n\n1a2b05cc3541a5f7714529c665aecc3ea042c646\nAdding .yaml and .json config files.\n\nPiperOrigin-RevId: 297570622\n\ndfe1cf7be44dee31d78f78e485d8c95430981d6e\nPublish `QueryOptions` proto.\n\nIntroduced a `query_options` input in `ExecuteSqlRequest`.\n\nPiperOrigin-RevId: 297497710\n\ndafc905f71e5d46f500b41ed715aad585be062c3\npubsub: revert pull init_rpc_timeout & max_rpc_timeout back to 25 seconds and reset multiplier to 1.0\n\nPiperOrigin-RevId: 297486523\n\nf077632ba7fee588922d9e8717ee272039be126d\nfirestore: add update_transform\n\nPiperOrigin-RevId: 297405063\n\n0aba1900ffef672ec5f0da677cf590ee5686e13b\ncluster: use square brace for cross-reference\n\nPiperOrigin-RevId: 297204568\n\n5dac2da18f6325cbaed54603c43f0667ecd50247\nRestore retry params in gapic config because securitycenter has non-standard default retry params.\nRestore a few retry codes for some idempotent methods.\n\nPiperOrigin-RevId: 297196720\n\n1eb61455530252bba8b2c8d4bc9832960e5a56f6\npubsub: v1 replace IAM HTTP rules\n\nPiperOrigin-RevId: 297188590\n\n80b2d25f8d43d9d47024ff06ead7f7166548a7ba\nDialogflow weekly v2/v2beta1 library update:\n - updates to mega agent api\n - adding field mask override control for output audio config\nImportant updates are also posted at:\nhttps://cloud.google.com/dialogflow/docs/release-notes\n\nPiperOrigin-RevId: 297187629\n\n0b1876b35e98f560f9c9ca9797955f020238a092\nUse an older version of protoc-docs-plugin that is compatible with the specified gapic-generator and protobuf versions.\n\nprotoc-docs-plugin >=0.4.0 (see commit https://github.com/googleapis/protoc-docs-plugin/commit/979f03ede6678c487337f3d7e88bae58df5207af) is incompatible with protobuf 3.9.1.\n\nPiperOrigin-RevId: 296986742\n\n" } }, { "template": { "name": "java_library", "origin": "synthtool.gcp", - "version": "2019.10.17" + "version": "2020.2.4" } } ], diff --git a/versions.txt b/versions.txt index 915c6be6..28b025e2 100644 --- a/versions.txt +++ b/versions.txt @@ -1,8 +1,8 @@ # Format: # module:released-version:current-version -proto-google-cloud-redis-v1:0.84.0:0.84.0 -proto-google-cloud-redis-v1beta1:0.84.0:0.84.0 -grpc-google-cloud-redis-v1beta1:0.84.0:0.84.0 -grpc-google-cloud-redis-v1:0.84.0:0.84.0 -google-cloud-redis:0.119.0:0.119.0 \ No newline at end of file +proto-google-cloud-redis-v1:1.0.0:1.0.0:q +proto-google-cloud-redis-v1beta1:0.85.0:0.85.0 +grpc-google-cloud-redis-v1beta1:0.85.0:0.85.0 +grpc-google-cloud-redis-v1:1.0.0:1.0.0 +google-cloud-redis:1.0.0:1.0.0 \ No newline at end of file