Remove the use of GCS APIs provided from GAE SDK (#1228)

The API provided by the GAE SDK will not be available outside GAE
runtime. This presents a problem when we migrate off of GAE. More
pressingly, the RDE pipeline migration to Beam requires that we write to
GCS on GCE. Previously we were able to sidestep the issue by delegating
the writes to FileIO provided by Beam, which knows how to write to GCS.
However the RDE pipeline cannot use FileIO directly as it needs to write
to multiple files in one go and explicit use of GCS API is needed.

An unfortunate side effect of the API migration is that the new testing
library contains a bug which makes serializing GcsUtils impossible. It
is fixed upstream but not released yet. The fix has been backported for
the time being.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/google/nomulus/1228)
<!-- Reviewable:end -->
This commit is contained in:
Lai Jiang 2021-07-13 14:52:37 -04:00 committed by GitHub
parent 62c556cebf
commit 676616a172
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
186 changed files with 2415 additions and 1600 deletions

View file

@ -42,10 +42,12 @@ dependencies {
compile deps['com.google.api-client:google-api-client']
compile deps['com.google.apis:google-api-services-cloudkms']
compile deps['com.google.apis:google-api-services-monitoring']
compile deps['com.google.apis:google-api-services-storage']
compile deps['com.google.auth:google-auth-library-credentials']
compile deps['com.google.auth:google-auth-library-oauth2-http']
compile deps['com.google.auto.value:auto-value-annotations']
compile deps['com.google.cloud:google-cloud-core']
compile deps['com.google.cloud:google-cloud-core-http']
compile deps['com.google.cloud:google-cloud-storage']
compile deps['com.google.code.findbugs:jsr305']
compile deps['com.google.code.gson:gson']
compile deps['com.google.dagger:dagger']

View file

@ -2,37 +2,51 @@
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.beust:jcommander:1.60
com.fasterxml.jackson.core:jackson-core:2.12.1
com.fasterxml.jackson:jackson-bom:2.12.1
com.google.api-client:google-api-client:1.31.3
com.google.api.grpc:proto-google-common-protos:2.1.0
com.google.api.grpc:proto-google-iam-v1:1.0.10
com.google.api:api-common:1.10.1
com.google.api:gax-httpjson:0.79.0
com.google.api:gax:1.62.0
com.google.apis:google-api-services-cloudkms:v1-rev108-1.25.0
com.google.apis:google-api-services-monitoring:v3-rev540-1.25.0
com.google.apis:google-api-services-storage:v1-rev171-1.25.0
com.google.apis:google-api-services-storage:v1-rev20210127-1.31.0
com.google.appengine:appengine-api-1.0-sdk:1.9.86
com.google.appengine:appengine-testing:1.9.86
com.google.auth:google-auth-library-credentials:0.24.1
com.google.auth:google-auth-library-oauth2-http:0.24.1
com.google.auto.value:auto-value-annotations:1.7.4
com.google.auto.value:auto-value:1.7.4
com.google.cloud:google-cloud-core-http:1.94.3
com.google.cloud:google-cloud-core:1.94.3
com.google.cloud:google-cloud-storage:1.113.12
com.google.code.findbugs:jsr305:3.0.2
com.google.code.gson:gson:2.8.6
com.google.dagger:dagger:2.33
com.google.errorprone:error_prone_annotations:2.3.4
com.google.errorprone:error_prone_annotations:2.5.1
com.google.flogger:flogger-system-backend:0.5.1
com.google.flogger:flogger:0.5.1
com.google.guava:failureaccess:1.0.1
com.google.guava:guava:30.1-jre
com.google.guava:guava:30.1.1-jre
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
com.google.http-client:google-http-client-apache-v2:1.39.0
com.google.http-client:google-http-client-appengine:1.39.0
com.google.http-client:google-http-client-gson:1.39.0
com.google.http-client:google-http-client-jackson2:1.39.0
com.google.http-client:google-http-client:1.39.0
com.google.j2objc:j2objc-annotations:1.3
com.google.monitoring-client:metrics:1.0.7
com.google.monitoring-client:stackdriver:1.0.7
com.google.oauth-client:google-oauth-client:1.31.4
com.google.protobuf:protobuf-java-util:3.15.3
com.google.protobuf:protobuf-java:3.15.3
com.google.re2j:re2j:1.6
com.ibm.icu:icu4j:68.2
commons-codec:commons-codec:1.11
commons-logging:commons-logging:1.2
io.grpc:grpc-context:1.27.2
io.grpc:grpc-context:1.36.0
io.netty:netty-buffer:4.1.59.Final
io.netty:netty-codec-http:4.1.59.Final
io.netty:netty-codec:4.1.59.Final
@ -44,6 +58,7 @@ io.netty:netty-transport:4.1.59.Final
io.opencensus:opencensus-api:0.28.0
io.opencensus:opencensus-contrib-http-util:0.28.0
javax.activation:activation:1.1
javax.annotation:javax.annotation-api:1.3.2
javax.inject:javax.inject:1
javax.mail:mail:1.4
javax.xml.bind:jaxb-api:2.3.0
@ -52,6 +67,7 @@ org.apache.httpcomponents:httpclient:4.5.13
org.apache.httpcomponents:httpcore:4.4.14
org.bouncycastle:bcpkix-jdk15on:1.61
org.bouncycastle:bcprov-jdk15on:1.61
org.checkerframework:checker-compat-qual:2.5.3
org.checkerframework:checker-qual:3.5.0
org.checkerframework:checker-compat-qual:2.5.5
org.checkerframework:checker-qual:3.8.0
org.threeten:threetenbp:1.5.0
org.yaml:snakeyaml:1.17

View file

@ -2,37 +2,51 @@
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.beust:jcommander:1.60
com.fasterxml.jackson.core:jackson-core:2.12.1
com.fasterxml.jackson:jackson-bom:2.12.1
com.google.api-client:google-api-client:1.31.3
com.google.api.grpc:proto-google-common-protos:2.1.0
com.google.api.grpc:proto-google-iam-v1:1.0.10
com.google.api:api-common:1.10.1
com.google.api:gax-httpjson:0.79.0
com.google.api:gax:1.62.0
com.google.apis:google-api-services-cloudkms:v1-rev108-1.25.0
com.google.apis:google-api-services-monitoring:v3-rev540-1.25.0
com.google.apis:google-api-services-storage:v1-rev171-1.25.0
com.google.apis:google-api-services-storage:v1-rev20210127-1.31.0
com.google.appengine:appengine-api-1.0-sdk:1.9.86
com.google.appengine:appengine-testing:1.9.86
com.google.auth:google-auth-library-credentials:0.24.1
com.google.auth:google-auth-library-oauth2-http:0.24.1
com.google.auto.value:auto-value-annotations:1.7.4
com.google.auto.value:auto-value:1.7.4
com.google.cloud:google-cloud-core-http:1.94.3
com.google.cloud:google-cloud-core:1.94.3
com.google.cloud:google-cloud-storage:1.113.12
com.google.code.findbugs:jsr305:3.0.2
com.google.code.gson:gson:2.8.6
com.google.dagger:dagger:2.33
com.google.errorprone:error_prone_annotations:2.3.4
com.google.errorprone:error_prone_annotations:2.5.1
com.google.flogger:flogger-system-backend:0.5.1
com.google.flogger:flogger:0.5.1
com.google.guava:failureaccess:1.0.1
com.google.guava:guava:30.1-jre
com.google.guava:guava:30.1.1-jre
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
com.google.http-client:google-http-client-apache-v2:1.39.0
com.google.http-client:google-http-client-appengine:1.39.0
com.google.http-client:google-http-client-gson:1.39.0
com.google.http-client:google-http-client-jackson2:1.39.0
com.google.http-client:google-http-client:1.39.0
com.google.j2objc:j2objc-annotations:1.3
com.google.monitoring-client:metrics:1.0.7
com.google.monitoring-client:stackdriver:1.0.7
com.google.oauth-client:google-oauth-client:1.31.4
com.google.protobuf:protobuf-java-util:3.15.3
com.google.protobuf:protobuf-java:3.15.3
com.google.re2j:re2j:1.6
com.ibm.icu:icu4j:68.2
commons-codec:commons-codec:1.11
commons-logging:commons-logging:1.2
io.grpc:grpc-context:1.27.2
io.grpc:grpc-context:1.36.0
io.netty:netty-buffer:4.1.59.Final
io.netty:netty-codec-http:4.1.59.Final
io.netty:netty-codec:4.1.59.Final
@ -44,6 +58,7 @@ io.netty:netty-transport:4.1.59.Final
io.opencensus:opencensus-api:0.28.0
io.opencensus:opencensus-contrib-http-util:0.28.0
javax.activation:activation:1.1
javax.annotation:javax.annotation-api:1.3.2
javax.inject:javax.inject:1
javax.mail:mail:1.4
javax.xml.bind:jaxb-api:2.3.0
@ -52,6 +67,7 @@ org.apache.httpcomponents:httpclient:4.5.13
org.apache.httpcomponents:httpcore:4.4.14
org.bouncycastle:bcpkix-jdk15on:1.61
org.bouncycastle:bcprov-jdk15on:1.61
org.checkerframework:checker-compat-qual:2.5.3
org.checkerframework:checker-qual:3.5.0
org.checkerframework:checker-compat-qual:2.5.5
org.checkerframework:checker-qual:3.8.0
org.threeten:threetenbp:1.5.0
org.yaml:snakeyaml:1.17

View file

@ -2,37 +2,51 @@
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.beust:jcommander:1.60
com.fasterxml.jackson.core:jackson-core:2.12.1
com.fasterxml.jackson:jackson-bom:2.12.1
com.google.api-client:google-api-client:1.31.3
com.google.api.grpc:proto-google-common-protos:2.1.0
com.google.api.grpc:proto-google-iam-v1:1.0.10
com.google.api:api-common:1.10.1
com.google.api:gax-httpjson:0.79.0
com.google.api:gax:1.62.0
com.google.apis:google-api-services-cloudkms:v1-rev108-1.25.0
com.google.apis:google-api-services-monitoring:v3-rev540-1.25.0
com.google.apis:google-api-services-storage:v1-rev171-1.25.0
com.google.apis:google-api-services-storage:v1-rev20210127-1.31.0
com.google.appengine:appengine-api-1.0-sdk:1.9.86
com.google.appengine:appengine-testing:1.9.86
com.google.auth:google-auth-library-credentials:0.24.1
com.google.auth:google-auth-library-oauth2-http:0.24.1
com.google.auto.value:auto-value-annotations:1.7.4
com.google.auto.value:auto-value:1.7.4
com.google.cloud:google-cloud-core-http:1.94.3
com.google.cloud:google-cloud-core:1.94.3
com.google.cloud:google-cloud-storage:1.113.12
com.google.code.findbugs:jsr305:3.0.2
com.google.code.gson:gson:2.8.6
com.google.dagger:dagger:2.33
com.google.errorprone:error_prone_annotations:2.3.4
com.google.errorprone:error_prone_annotations:2.5.1
com.google.flogger:flogger-system-backend:0.5.1
com.google.flogger:flogger:0.5.1
com.google.guava:failureaccess:1.0.1
com.google.guava:guava:30.1-jre
com.google.guava:guava:30.1.1-jre
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
com.google.http-client:google-http-client-apache-v2:1.39.0
com.google.http-client:google-http-client-appengine:1.39.0
com.google.http-client:google-http-client-gson:1.39.0
com.google.http-client:google-http-client-jackson2:1.39.0
com.google.http-client:google-http-client:1.39.0
com.google.j2objc:j2objc-annotations:1.3
com.google.monitoring-client:metrics:1.0.7
com.google.monitoring-client:stackdriver:1.0.7
com.google.oauth-client:google-oauth-client:1.31.4
com.google.protobuf:protobuf-java-util:3.15.3
com.google.protobuf:protobuf-java:3.15.3
com.google.re2j:re2j:1.6
com.ibm.icu:icu4j:68.2
commons-codec:commons-codec:1.11
commons-logging:commons-logging:1.2
io.grpc:grpc-context:1.27.2
io.grpc:grpc-context:1.36.0
io.netty:netty-buffer:4.1.59.Final
io.netty:netty-codec-http:4.1.59.Final
io.netty:netty-codec:4.1.59.Final
@ -44,6 +58,7 @@ io.netty:netty-transport:4.1.59.Final
io.opencensus:opencensus-api:0.28.0
io.opencensus:opencensus-contrib-http-util:0.28.0
javax.activation:activation:1.1
javax.annotation:javax.annotation-api:1.3.2
javax.inject:javax.inject:1
javax.mail:mail:1.4
javax.xml.bind:jaxb-api:2.3.0
@ -52,6 +67,7 @@ org.apache.httpcomponents:httpclient:4.5.13
org.apache.httpcomponents:httpcore:4.4.14
org.bouncycastle:bcpkix-jdk15on:1.61
org.bouncycastle:bcprov-jdk15on:1.61
org.checkerframework:checker-compat-qual:2.5.3
org.checkerframework:checker-qual:3.5.0
org.checkerframework:checker-compat-qual:2.5.5
org.checkerframework:checker-qual:3.8.0
org.threeten:threetenbp:1.5.0
org.yaml:snakeyaml:1.17

View file

@ -2,37 +2,51 @@
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.beust:jcommander:1.60
com.fasterxml.jackson.core:jackson-core:2.12.1
com.fasterxml.jackson:jackson-bom:2.12.1
com.google.api-client:google-api-client:1.31.3
com.google.api.grpc:proto-google-common-protos:2.1.0
com.google.api.grpc:proto-google-iam-v1:1.0.10
com.google.api:api-common:1.10.1
com.google.api:gax-httpjson:0.79.0
com.google.api:gax:1.62.0
com.google.apis:google-api-services-cloudkms:v1-rev108-1.25.0
com.google.apis:google-api-services-monitoring:v3-rev540-1.25.0
com.google.apis:google-api-services-storage:v1-rev171-1.25.0
com.google.apis:google-api-services-storage:v1-rev20210127-1.31.0
com.google.appengine:appengine-api-1.0-sdk:1.9.86
com.google.appengine:appengine-testing:1.9.86
com.google.auth:google-auth-library-credentials:0.24.1
com.google.auth:google-auth-library-oauth2-http:0.24.1
com.google.auto.value:auto-value-annotations:1.7.4
com.google.auto.value:auto-value:1.7.4
com.google.cloud:google-cloud-core-http:1.94.3
com.google.cloud:google-cloud-core:1.94.3
com.google.cloud:google-cloud-storage:1.113.12
com.google.code.findbugs:jsr305:3.0.2
com.google.code.gson:gson:2.8.6
com.google.dagger:dagger:2.33
com.google.errorprone:error_prone_annotations:2.3.4
com.google.errorprone:error_prone_annotations:2.5.1
com.google.flogger:flogger-system-backend:0.5.1
com.google.flogger:flogger:0.5.1
com.google.guava:failureaccess:1.0.1
com.google.guava:guava:30.1-jre
com.google.guava:guava:30.1.1-jre
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
com.google.http-client:google-http-client-apache-v2:1.39.0
com.google.http-client:google-http-client-appengine:1.39.0
com.google.http-client:google-http-client-gson:1.39.0
com.google.http-client:google-http-client-jackson2:1.39.0
com.google.http-client:google-http-client:1.39.0
com.google.j2objc:j2objc-annotations:1.3
com.google.monitoring-client:metrics:1.0.7
com.google.monitoring-client:stackdriver:1.0.7
com.google.oauth-client:google-oauth-client:1.31.4
com.google.protobuf:protobuf-java-util:3.15.3
com.google.protobuf:protobuf-java:3.15.3
com.google.re2j:re2j:1.6
com.ibm.icu:icu4j:68.2
commons-codec:commons-codec:1.11
commons-logging:commons-logging:1.2
io.grpc:grpc-context:1.27.2
io.grpc:grpc-context:1.36.0
io.netty:netty-buffer:4.1.59.Final
io.netty:netty-codec-http:4.1.59.Final
io.netty:netty-codec:4.1.59.Final
@ -44,6 +58,7 @@ io.netty:netty-transport:4.1.59.Final
io.opencensus:opencensus-api:0.28.0
io.opencensus:opencensus-contrib-http-util:0.28.0
javax.activation:activation:1.1
javax.annotation:javax.annotation-api:1.3.2
javax.inject:javax.inject:1
javax.mail:mail:1.4
javax.xml.bind:jaxb-api:2.3.0
@ -52,6 +67,7 @@ org.apache.httpcomponents:httpclient:4.5.13
org.apache.httpcomponents:httpcore:4.4.14
org.bouncycastle:bcpkix-jdk15on:1.61
org.bouncycastle:bcprov-jdk15on:1.61
org.checkerframework:checker-compat-qual:2.5.3
org.checkerframework:checker-qual:3.5.0
org.checkerframework:checker-compat-qual:2.5.5
org.checkerframework:checker-qual:3.8.0
org.threeten:threetenbp:1.5.0
org.yaml:snakeyaml:1.17

View file

@ -2,37 +2,51 @@
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.beust:jcommander:1.60
com.fasterxml.jackson.core:jackson-core:2.12.1
com.fasterxml.jackson:jackson-bom:2.12.1
com.google.api-client:google-api-client:1.31.3
com.google.api.grpc:proto-google-common-protos:2.1.0
com.google.api.grpc:proto-google-iam-v1:1.0.10
com.google.api:api-common:1.10.1
com.google.api:gax-httpjson:0.79.0
com.google.api:gax:1.62.0
com.google.apis:google-api-services-cloudkms:v1-rev108-1.25.0
com.google.apis:google-api-services-monitoring:v3-rev540-1.25.0
com.google.apis:google-api-services-storage:v1-rev171-1.25.0
com.google.apis:google-api-services-storage:v1-rev20210127-1.31.0
com.google.appengine:appengine-api-1.0-sdk:1.9.86
com.google.appengine:appengine-testing:1.9.86
com.google.auth:google-auth-library-credentials:0.24.1
com.google.auth:google-auth-library-oauth2-http:0.24.1
com.google.auto.value:auto-value-annotations:1.7.4
com.google.auto.value:auto-value:1.7.4
com.google.cloud:google-cloud-core-http:1.94.3
com.google.cloud:google-cloud-core:1.94.3
com.google.cloud:google-cloud-storage:1.113.12
com.google.code.findbugs:jsr305:3.0.2
com.google.code.gson:gson:2.8.6
com.google.dagger:dagger:2.33
com.google.errorprone:error_prone_annotations:2.3.4
com.google.errorprone:error_prone_annotations:2.5.1
com.google.flogger:flogger-system-backend:0.5.1
com.google.flogger:flogger:0.5.1
com.google.guava:failureaccess:1.0.1
com.google.guava:guava:30.1-jre
com.google.guava:guava:30.1.1-jre
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
com.google.http-client:google-http-client-apache-v2:1.39.0
com.google.http-client:google-http-client-appengine:1.39.0
com.google.http-client:google-http-client-gson:1.39.0
com.google.http-client:google-http-client-jackson2:1.39.0
com.google.http-client:google-http-client:1.39.0
com.google.j2objc:j2objc-annotations:1.3
com.google.monitoring-client:metrics:1.0.7
com.google.monitoring-client:stackdriver:1.0.7
com.google.oauth-client:google-oauth-client:1.31.4
com.google.protobuf:protobuf-java-util:3.15.3
com.google.protobuf:protobuf-java:3.15.3
com.google.re2j:re2j:1.6
com.ibm.icu:icu4j:68.2
commons-codec:commons-codec:1.11
commons-logging:commons-logging:1.2
io.grpc:grpc-context:1.27.2
io.grpc:grpc-context:1.36.0
io.netty:netty-buffer:4.1.59.Final
io.netty:netty-codec-http:4.1.59.Final
io.netty:netty-codec:4.1.59.Final
@ -44,6 +58,7 @@ io.netty:netty-transport:4.1.59.Final
io.opencensus:opencensus-api:0.28.0
io.opencensus:opencensus-contrib-http-util:0.28.0
javax.activation:activation:1.1
javax.annotation:javax.annotation-api:1.3.2
javax.inject:javax.inject:1
javax.mail:mail:1.4
javax.xml.bind:jaxb-api:2.3.0
@ -52,6 +67,7 @@ org.apache.httpcomponents:httpclient:4.5.13
org.apache.httpcomponents:httpcore:4.4.14
org.bouncycastle:bcpkix-jdk15on:1.61
org.bouncycastle:bcprov-jdk15on:1.61
org.checkerframework:checker-compat-qual:2.5.3
org.checkerframework:checker-qual:3.5.0
org.checkerframework:checker-compat-qual:2.5.5
org.checkerframework:checker-qual:3.8.0
org.threeten:threetenbp:1.5.0
org.yaml:snakeyaml:1.17

View file

@ -2,37 +2,51 @@
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.beust:jcommander:1.60
com.fasterxml.jackson.core:jackson-core:2.12.1
com.fasterxml.jackson:jackson-bom:2.12.1
com.google.api-client:google-api-client:1.31.3
com.google.api.grpc:proto-google-common-protos:2.1.0
com.google.api.grpc:proto-google-iam-v1:1.0.10
com.google.api:api-common:1.10.1
com.google.api:gax-httpjson:0.79.0
com.google.api:gax:1.62.0
com.google.apis:google-api-services-cloudkms:v1-rev108-1.25.0
com.google.apis:google-api-services-monitoring:v3-rev540-1.25.0
com.google.apis:google-api-services-storage:v1-rev171-1.25.0
com.google.apis:google-api-services-storage:v1-rev20210127-1.31.0
com.google.appengine:appengine-api-1.0-sdk:1.9.86
com.google.appengine:appengine-testing:1.9.86
com.google.auth:google-auth-library-credentials:0.24.1
com.google.auth:google-auth-library-oauth2-http:0.24.1
com.google.auto.value:auto-value-annotations:1.7.4
com.google.auto.value:auto-value:1.7.4
com.google.cloud:google-cloud-core-http:1.94.3
com.google.cloud:google-cloud-core:1.94.3
com.google.cloud:google-cloud-storage:1.113.12
com.google.code.findbugs:jsr305:3.0.2
com.google.code.gson:gson:2.8.6
com.google.dagger:dagger:2.33
com.google.errorprone:error_prone_annotations:2.3.4
com.google.errorprone:error_prone_annotations:2.5.1
com.google.flogger:flogger-system-backend:0.5.1
com.google.flogger:flogger:0.5.1
com.google.guava:failureaccess:1.0.1
com.google.guava:guava:30.1-jre
com.google.guava:guava:30.1.1-jre
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
com.google.http-client:google-http-client-apache-v2:1.39.0
com.google.http-client:google-http-client-appengine:1.39.0
com.google.http-client:google-http-client-gson:1.39.0
com.google.http-client:google-http-client-jackson2:1.39.0
com.google.http-client:google-http-client:1.39.0
com.google.j2objc:j2objc-annotations:1.3
com.google.monitoring-client:metrics:1.0.7
com.google.monitoring-client:stackdriver:1.0.7
com.google.oauth-client:google-oauth-client:1.31.4
com.google.protobuf:protobuf-java-util:3.15.3
com.google.protobuf:protobuf-java:3.15.3
com.google.re2j:re2j:1.6
com.ibm.icu:icu4j:68.2
commons-codec:commons-codec:1.11
commons-logging:commons-logging:1.2
io.grpc:grpc-context:1.27.2
io.grpc:grpc-context:1.36.0
io.netty:netty-buffer:4.1.59.Final
io.netty:netty-codec-http:4.1.59.Final
io.netty:netty-codec:4.1.59.Final
@ -44,6 +58,7 @@ io.netty:netty-transport:4.1.59.Final
io.opencensus:opencensus-api:0.28.0
io.opencensus:opencensus-contrib-http-util:0.28.0
javax.activation:activation:1.1
javax.annotation:javax.annotation-api:1.3.2
javax.inject:javax.inject:1
javax.mail:mail:1.4
javax.xml.bind:jaxb-api:2.3.0
@ -52,6 +67,7 @@ org.apache.httpcomponents:httpclient:4.5.13
org.apache.httpcomponents:httpcore:4.4.14
org.bouncycastle:bcpkix-jdk15on:1.61
org.bouncycastle:bcprov-jdk15on:1.61
org.checkerframework:checker-compat-qual:2.5.3
org.checkerframework:checker-qual:3.5.0
org.checkerframework:checker-compat-qual:2.5.5
org.checkerframework:checker-qual:3.8.0
org.threeten:threetenbp:1.5.0
org.yaml:snakeyaml:1.17

View file

@ -2,16 +2,26 @@
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.beust:jcommander:1.60
com.fasterxml.jackson.core:jackson-core:2.12.1
com.fasterxml.jackson:jackson-bom:2.12.1
com.google.api-client:google-api-client:1.31.3
com.google.api.grpc:proto-google-common-protos:2.1.0
com.google.api.grpc:proto-google-iam-v1:1.0.10
com.google.api:api-common:1.10.1
com.google.api:gax-httpjson:0.79.0
com.google.api:gax:1.62.0
com.google.apis:google-api-services-cloudkms:v1-rev108-1.25.0
com.google.apis:google-api-services-monitoring:v3-rev540-1.25.0
com.google.apis:google-api-services-storage:v1-rev171-1.25.0
com.google.apis:google-api-services-storage:v1-rev20210127-1.31.0
com.google.appengine:appengine-api-1.0-sdk:1.9.86
com.google.appengine:appengine-testing:1.9.86
com.google.auth:google-auth-library-credentials:0.24.1
com.google.auth:google-auth-library-oauth2-http:0.24.1
com.google.auto.value:auto-value-annotations:1.7.4
com.google.auto.value:auto-value:1.7.4
com.google.cloud:google-cloud-core-http:1.94.3
com.google.cloud:google-cloud-core:1.94.3
com.google.cloud:google-cloud-storage:1.113.12
com.google.code.findbugs:jsr305:3.0.2
com.google.code.gson:gson:2.8.6
com.google.dagger:dagger:2.33
@ -19,22 +29,26 @@ com.google.errorprone:error_prone_annotations:2.5.1
com.google.flogger:flogger-system-backend:0.5.1
com.google.flogger:flogger:0.5.1
com.google.guava:failureaccess:1.0.1
com.google.guava:guava:30.1-jre
com.google.guava:guava:30.1.1-jre
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
com.google.http-client:google-http-client-apache-v2:1.39.0
com.google.http-client:google-http-client-appengine:1.39.0
com.google.http-client:google-http-client-gson:1.39.0
com.google.http-client:google-http-client-jackson2:1.39.0
com.google.http-client:google-http-client:1.39.0
com.google.j2objc:j2objc-annotations:1.3
com.google.monitoring-client:contrib:1.0.7
com.google.monitoring-client:metrics:1.0.7
com.google.monitoring-client:stackdriver:1.0.7
com.google.oauth-client:google-oauth-client:1.31.4
com.google.protobuf:protobuf-java-util:3.15.3
com.google.protobuf:protobuf-java:3.15.3
com.google.re2j:re2j:1.6
com.google.truth:truth:1.1.2
com.ibm.icu:icu4j:68.2
commons-codec:commons-codec:1.11
commons-logging:commons-logging:1.2
io.grpc:grpc-context:1.27.2
io.grpc:grpc-context:1.36.0
io.netty:netty-buffer:4.1.59.Final
io.netty:netty-codec-http:4.1.59.Final
io.netty:netty-codec:4.1.59.Final
@ -46,6 +60,7 @@ io.netty:netty-transport:4.1.59.Final
io.opencensus:opencensus-api:0.28.0
io.opencensus:opencensus-contrib-http-util:0.28.0
javax.activation:activation:1.1
javax.annotation:javax.annotation-api:1.3.2
javax.inject:javax.inject:1
javax.mail:mail:1.4
javax.xml.bind:jaxb-api:2.3.0
@ -58,7 +73,7 @@ org.apache.httpcomponents:httpcore:4.4.14
org.apiguardian:apiguardian-api:1.1.0
org.bouncycastle:bcpkix-jdk15on:1.61
org.bouncycastle:bcprov-jdk15on:1.61
org.checkerframework:checker-compat-qual:2.5.3
org.checkerframework:checker-compat-qual:2.5.5
org.checkerframework:checker-qual:3.9.1
org.hamcrest:hamcrest-core:1.3
org.junit.jupiter:junit-jupiter-api:5.6.2
@ -71,4 +86,5 @@ org.mockito:mockito-core:3.7.7
org.objenesis:objenesis:3.1
org.opentest4j:opentest4j:1.2.0
org.ow2.asm:asm:9.0
org.threeten:threetenbp:1.5.0
org.yaml:snakeyaml:1.17

View file

@ -2,16 +2,26 @@
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.beust:jcommander:1.60
com.fasterxml.jackson.core:jackson-core:2.12.1
com.fasterxml.jackson:jackson-bom:2.12.1
com.google.api-client:google-api-client:1.31.3
com.google.api.grpc:proto-google-common-protos:2.1.0
com.google.api.grpc:proto-google-iam-v1:1.0.10
com.google.api:api-common:1.10.1
com.google.api:gax-httpjson:0.79.0
com.google.api:gax:1.62.0
com.google.apis:google-api-services-cloudkms:v1-rev108-1.25.0
com.google.apis:google-api-services-monitoring:v3-rev540-1.25.0
com.google.apis:google-api-services-storage:v1-rev171-1.25.0
com.google.apis:google-api-services-storage:v1-rev20210127-1.31.0
com.google.appengine:appengine-api-1.0-sdk:1.9.86
com.google.appengine:appengine-testing:1.9.86
com.google.auth:google-auth-library-credentials:0.24.1
com.google.auth:google-auth-library-oauth2-http:0.24.1
com.google.auto.value:auto-value-annotations:1.7.4
com.google.auto.value:auto-value:1.7.4
com.google.cloud:google-cloud-core-http:1.94.3
com.google.cloud:google-cloud-core:1.94.3
com.google.cloud:google-cloud-storage:1.113.12
com.google.code.findbugs:jsr305:3.0.2
com.google.code.gson:gson:2.8.6
com.google.dagger:dagger:2.33
@ -19,22 +29,26 @@ com.google.errorprone:error_prone_annotations:2.5.1
com.google.flogger:flogger-system-backend:0.5.1
com.google.flogger:flogger:0.5.1
com.google.guava:failureaccess:1.0.1
com.google.guava:guava:30.1-jre
com.google.guava:guava:30.1.1-jre
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
com.google.http-client:google-http-client-apache-v2:1.39.0
com.google.http-client:google-http-client-appengine:1.39.0
com.google.http-client:google-http-client-gson:1.39.0
com.google.http-client:google-http-client-jackson2:1.39.0
com.google.http-client:google-http-client:1.39.0
com.google.j2objc:j2objc-annotations:1.3
com.google.monitoring-client:contrib:1.0.7
com.google.monitoring-client:metrics:1.0.7
com.google.monitoring-client:stackdriver:1.0.7
com.google.oauth-client:google-oauth-client:1.31.4
com.google.protobuf:protobuf-java-util:3.15.3
com.google.protobuf:protobuf-java:3.15.3
com.google.re2j:re2j:1.6
com.google.truth:truth:1.1.2
com.ibm.icu:icu4j:68.2
commons-codec:commons-codec:1.11
commons-logging:commons-logging:1.2
io.grpc:grpc-context:1.27.2
io.grpc:grpc-context:1.36.0
io.netty:netty-buffer:4.1.59.Final
io.netty:netty-codec-http:4.1.59.Final
io.netty:netty-codec:4.1.59.Final
@ -46,6 +60,7 @@ io.netty:netty-transport:4.1.59.Final
io.opencensus:opencensus-api:0.28.0
io.opencensus:opencensus-contrib-http-util:0.28.0
javax.activation:activation:1.1
javax.annotation:javax.annotation-api:1.3.2
javax.inject:javax.inject:1
javax.mail:mail:1.4
javax.xml.bind:jaxb-api:2.3.0
@ -58,7 +73,7 @@ org.apache.httpcomponents:httpcore:4.4.14
org.apiguardian:apiguardian-api:1.1.0
org.bouncycastle:bcpkix-jdk15on:1.61
org.bouncycastle:bcprov-jdk15on:1.61
org.checkerframework:checker-compat-qual:2.5.3
org.checkerframework:checker-compat-qual:2.5.5
org.checkerframework:checker-qual:3.9.1
org.hamcrest:hamcrest-core:1.3
org.junit.jupiter:junit-jupiter-api:5.6.2
@ -71,4 +86,5 @@ org.mockito:mockito-core:3.7.7
org.objenesis:objenesis:3.1
org.opentest4j:opentest4j:1.2.0
org.ow2.asm:asm:9.0
org.threeten:threetenbp:1.5.0
org.yaml:snakeyaml:1.17

View file

@ -2,16 +2,26 @@
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.beust:jcommander:1.60
com.fasterxml.jackson.core:jackson-core:2.12.1
com.fasterxml.jackson:jackson-bom:2.12.1
com.google.api-client:google-api-client:1.31.3
com.google.api.grpc:proto-google-common-protos:2.1.0
com.google.api.grpc:proto-google-iam-v1:1.0.10
com.google.api:api-common:1.10.1
com.google.api:gax-httpjson:0.79.0
com.google.api:gax:1.62.0
com.google.apis:google-api-services-cloudkms:v1-rev108-1.25.0
com.google.apis:google-api-services-monitoring:v3-rev540-1.25.0
com.google.apis:google-api-services-storage:v1-rev171-1.25.0
com.google.apis:google-api-services-storage:v1-rev20210127-1.31.0
com.google.appengine:appengine-api-1.0-sdk:1.9.86
com.google.appengine:appengine-testing:1.9.86
com.google.auth:google-auth-library-credentials:0.24.1
com.google.auth:google-auth-library-oauth2-http:0.24.1
com.google.auto.value:auto-value-annotations:1.7.4
com.google.auto.value:auto-value:1.7.4
com.google.cloud:google-cloud-core-http:1.94.3
com.google.cloud:google-cloud-core:1.94.3
com.google.cloud:google-cloud-storage:1.113.12
com.google.code.findbugs:jsr305:3.0.2
com.google.code.gson:gson:2.8.6
com.google.dagger:dagger:2.33
@ -19,22 +29,26 @@ com.google.errorprone:error_prone_annotations:2.5.1
com.google.flogger:flogger-system-backend:0.5.1
com.google.flogger:flogger:0.5.1
com.google.guava:failureaccess:1.0.1
com.google.guava:guava:30.1-jre
com.google.guava:guava:30.1.1-jre
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
com.google.http-client:google-http-client-apache-v2:1.39.0
com.google.http-client:google-http-client-appengine:1.39.0
com.google.http-client:google-http-client-gson:1.39.0
com.google.http-client:google-http-client-jackson2:1.39.0
com.google.http-client:google-http-client:1.39.0
com.google.j2objc:j2objc-annotations:1.3
com.google.monitoring-client:contrib:1.0.7
com.google.monitoring-client:metrics:1.0.7
com.google.monitoring-client:stackdriver:1.0.7
com.google.oauth-client:google-oauth-client:1.31.4
com.google.protobuf:protobuf-java-util:3.15.3
com.google.protobuf:protobuf-java:3.15.3
com.google.re2j:re2j:1.6
com.google.truth:truth:1.1.2
com.ibm.icu:icu4j:68.2
commons-codec:commons-codec:1.11
commons-logging:commons-logging:1.2
io.grpc:grpc-context:1.27.2
io.grpc:grpc-context:1.36.0
io.netty:netty-buffer:4.1.59.Final
io.netty:netty-codec-http:4.1.59.Final
io.netty:netty-codec:4.1.59.Final
@ -46,6 +60,7 @@ io.netty:netty-transport:4.1.59.Final
io.opencensus:opencensus-api:0.28.0
io.opencensus:opencensus-contrib-http-util:0.28.0
javax.activation:activation:1.1
javax.annotation:javax.annotation-api:1.3.2
javax.inject:javax.inject:1
javax.mail:mail:1.4
javax.xml.bind:jaxb-api:2.3.0
@ -58,7 +73,7 @@ org.apache.httpcomponents:httpcore:4.4.14
org.apiguardian:apiguardian-api:1.1.0
org.bouncycastle:bcpkix-jdk15on:1.61
org.bouncycastle:bcprov-jdk15on:1.61
org.checkerframework:checker-compat-qual:2.5.3
org.checkerframework:checker-compat-qual:2.5.5
org.checkerframework:checker-qual:3.9.1
org.hamcrest:hamcrest-core:1.3
org.junit.jupiter:junit-jupiter-api:5.6.2
@ -71,4 +86,5 @@ org.mockito:mockito-core:3.7.7
org.objenesis:objenesis:3.1
org.opentest4j:opentest4j:1.2.0
org.ow2.asm:asm:9.0
org.threeten:threetenbp:1.5.0
org.yaml:snakeyaml:1.17

View file

@ -2,16 +2,26 @@
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.beust:jcommander:1.60
com.fasterxml.jackson.core:jackson-core:2.12.1
com.fasterxml.jackson:jackson-bom:2.12.1
com.google.api-client:google-api-client:1.31.3
com.google.api.grpc:proto-google-common-protos:2.1.0
com.google.api.grpc:proto-google-iam-v1:1.0.10
com.google.api:api-common:1.10.1
com.google.api:gax-httpjson:0.79.0
com.google.api:gax:1.62.0
com.google.apis:google-api-services-cloudkms:v1-rev108-1.25.0
com.google.apis:google-api-services-monitoring:v3-rev540-1.25.0
com.google.apis:google-api-services-storage:v1-rev171-1.25.0
com.google.apis:google-api-services-storage:v1-rev20210127-1.31.0
com.google.appengine:appengine-api-1.0-sdk:1.9.86
com.google.appengine:appengine-testing:1.9.86
com.google.auth:google-auth-library-credentials:0.24.1
com.google.auth:google-auth-library-oauth2-http:0.24.1
com.google.auto.value:auto-value-annotations:1.7.4
com.google.auto.value:auto-value:1.7.4
com.google.cloud:google-cloud-core-http:1.94.3
com.google.cloud:google-cloud-core:1.94.3
com.google.cloud:google-cloud-storage:1.113.12
com.google.code.findbugs:jsr305:3.0.2
com.google.code.gson:gson:2.8.6
com.google.dagger:dagger:2.33
@ -19,22 +29,26 @@ com.google.errorprone:error_prone_annotations:2.5.1
com.google.flogger:flogger-system-backend:0.5.1
com.google.flogger:flogger:0.5.1
com.google.guava:failureaccess:1.0.1
com.google.guava:guava:30.1-jre
com.google.guava:guava:30.1.1-jre
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
com.google.http-client:google-http-client-apache-v2:1.39.0
com.google.http-client:google-http-client-appengine:1.39.0
com.google.http-client:google-http-client-gson:1.39.0
com.google.http-client:google-http-client-jackson2:1.39.0
com.google.http-client:google-http-client:1.39.0
com.google.j2objc:j2objc-annotations:1.3
com.google.monitoring-client:contrib:1.0.7
com.google.monitoring-client:metrics:1.0.7
com.google.monitoring-client:stackdriver:1.0.7
com.google.oauth-client:google-oauth-client:1.31.4
com.google.protobuf:protobuf-java-util:3.15.3
com.google.protobuf:protobuf-java:3.15.3
com.google.re2j:re2j:1.6
com.google.truth:truth:1.1.2
com.ibm.icu:icu4j:68.2
commons-codec:commons-codec:1.11
commons-logging:commons-logging:1.2
io.grpc:grpc-context:1.27.2
io.grpc:grpc-context:1.36.0
io.netty:netty-buffer:4.1.59.Final
io.netty:netty-codec-http:4.1.59.Final
io.netty:netty-codec:4.1.59.Final
@ -46,6 +60,7 @@ io.netty:netty-transport:4.1.59.Final
io.opencensus:opencensus-api:0.28.0
io.opencensus:opencensus-contrib-http-util:0.28.0
javax.activation:activation:1.1
javax.annotation:javax.annotation-api:1.3.2
javax.inject:javax.inject:1
javax.mail:mail:1.4
javax.xml.bind:jaxb-api:2.3.0
@ -58,7 +73,7 @@ org.apache.httpcomponents:httpcore:4.4.14
org.apiguardian:apiguardian-api:1.1.0
org.bouncycastle:bcpkix-jdk15on:1.61
org.bouncycastle:bcprov-jdk15on:1.61
org.checkerframework:checker-compat-qual:2.5.3
org.checkerframework:checker-compat-qual:2.5.5
org.checkerframework:checker-qual:3.9.1
org.hamcrest:hamcrest-core:1.3
org.junit.jupiter:junit-jupiter-api:5.6.2
@ -71,4 +86,5 @@ org.mockito:mockito-core:3.7.7
org.objenesis:objenesis:3.1
org.opentest4j:opentest4j:1.2.0
org.ow2.asm:asm:9.0
org.threeten:threetenbp:1.5.0
org.yaml:snakeyaml:1.17

View file

@ -22,8 +22,12 @@ import com.beust.jcommander.Parameter;
import com.beust.jcommander.ParameterException;
import com.google.api.services.cloudkms.v1.CloudKMS;
import com.google.api.services.cloudkms.v1.model.DecryptRequest;
import com.google.api.services.storage.Storage;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.cloud.http.HttpTransportOptions;
import com.google.cloud.storage.BlobId;
import com.google.cloud.storage.Storage;
import com.google.cloud.storage.StorageException;
import com.google.cloud.storage.StorageOptions;
import com.google.common.flogger.LoggerConfig;
import com.google.monitoring.metrics.MetricReporter;
import dagger.Component;
@ -46,7 +50,6 @@ import io.netty.handler.logging.LogLevel;
import io.netty.handler.logging.LoggingHandler;
import io.netty.handler.ssl.OpenSsl;
import io.netty.handler.ssl.SslProvider;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.time.Duration;
import java.util.Arrays;
@ -245,13 +248,15 @@ public class ProxyModule {
@Singleton
@Provides
static Storage provideStorage(GoogleCredentialsBundle credentialsBundle, ProxyConfig config) {
return new Storage.Builder(
credentialsBundle.getHttpTransport(),
credentialsBundle.getJsonFactory(),
credentialsBundle.getHttpRequestInitializer())
.setApplicationName(config.projectId)
.build();
static Storage provideStorage(GoogleCredentialsBundle credentialsBundle) {
return StorageOptions.newBuilder()
.setTransportOptions(
HttpTransportOptions.newBuilder()
.setHttpTransportFactory(credentialsBundle::getHttpTransport)
.build())
.setCredentials(credentialsBundle.getGoogleCredentials())
.build()
.getService();
}
// This binding should not be used directly. Use those provided in CertificateModule instead.
@ -259,13 +264,9 @@ public class ProxyModule {
@Named("encryptedPemBytes")
static byte[] provideEncryptedPemBytes(Storage storage, ProxyConfig config) {
try {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
storage
.objects()
.get(config.gcs.bucket, config.gcs.sslPemFilename)
.executeMediaAndDownloadTo(outputStream);
return Base64.getMimeDecoder().decode(outputStream.toByteArray());
} catch (IOException e) {
return Base64.getMimeDecoder()
.decode(storage.readAllBytes(BlobId.of(config.gcs.bucket, config.gcs.sslPemFilename)));
} catch (StorageException e) {
throw new RuntimeException(
String.format(
"Error reading encrypted PEM file %s from GCS bucket %s",