0

I tried to use with dependency version google-cloud-secretmanager 2.13.0. is there anyone can help with this? Here is util class to get secret manager value.


public String get(String secretName) {
    try (SecretManagerServiceClient client = SecretManagerServiceClient.create()) {
        SecretVersionName secretVersionName = SecretVersionName.of(projectId, secretName, "latest");

        AccessSecretVersionRequest accessRequest = AccessSecretVersionRequest.newBuilder().setName(secretVersionName.toString()).build();

        ByteString secretValue = client.accessSecretVersion(accessRequest).getPayload().getData();

        String secretString = secretValue.toStringUtf8();

        if (StringUtils.isNotBlank(secretString)) {
            return secretString;
        } else {
            throw new RuntimeException(String.format("Secret of %s is blank", secretName));
        }
    } catch (Exception e) {
        throw new RuntimeException("Caught an error when getting a secret value.", e);
    }
}
Exception in thread "main" java.lang.RuntimeException: Caught an error when getting a secret value.
    at com.rakuten.rcp.cdu.util.SecretManager.get(SecretManager.java:30)
    at com.rakuten.rcp.cdu.FeedToGsp.run(FeedToGsp.java:107)
    at com.rakuten.rcp.cdu.FeedToGsp.main(FeedToGsp.java:101)
Caused by: java.lang.IllegalStateException: getTransportChannel() called when needsExecutor() is true
    at com.google.api.gax.grpc.InstantiatingGrpcChannelProvider.getTransportChannel(InstantiatingGrpcChannelProvider.java:180)
    at com.google.api.gax.rpc.ClientContext.create(ClientContext.java:201)
    at com.google.cloud.secretmanager.v1.stub.GrpcSecretManagerServiceStub.create(GrpcSecretManagerServiceStub.java:248)
    at com.google.cloud.secretmanager.v1.stub.SecretManagerServiceStubSettings.createStub(SecretManagerServiceStubSettings.java:349)
    at com.google.cloud.secretmanager.v1.SecretManagerServiceClient.<init>(SecretManagerServiceClient.java:180)
    at com.google.cloud.secretmanager.v1.SecretManagerServiceClient.create(SecretManagerServiceClient.java:162)
    at com.google.cloud.secretmanager.v1.SecretManagerServiceClient.create(SecretManagerServiceClient.java:153)
    at com.rakuten.rcp.cdu.util.SecretManager.get(SecretManager.java:15)
    ... 2 more```
M. Yousfi
  • 578
  • 5
  • 24

1 Answers1

0

I suspect you are having some dependency conflicts here and mismatching versions of Beam / GAX.

How are you bringing matching versions of dependencies?

The easiest way that I am aware is using the BOM provided by Beam: https://cloud.google.com/dataflow/docs/guides/common-errors#java-dependency-errors

Bruno Volpato
  • 1,382
  • 10
  • 18