You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by "Frances Perry (JIRA)" <ji...@apache.org> on 2016/11/03 19:56:58 UTC

[jira] [Created] (BEAM-895) Transport.newStorageClient requires credentials

Frances Perry created BEAM-895:
----------------------------------

             Summary: Transport.newStorageClient requires credentials
                 Key: BEAM-895
                 URL: https://issues.apache.org/jira/browse/BEAM-895
             Project: Beam
          Issue Type: Bug
          Components: sdk-java-core
            Reporter: Frances Perry
            Assignee: Davor Bonaci
             Fix For: 0.4.0-incubating


Transport.newStorageClient requires credentials, even if those aren't needed.

Impact: Examples use publicly accessible files on Google Cloud Storage, however reading those is still requiring the user to authenticate with Google Cloud Storage.

java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:293)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: Unable to get application default credentials. Please see https://developers.google.com/accounts/docs/application-default-credentials for details on how to specify credentials. This version of the SDK is dependent on the gcloud core component version 2015.02.05 or newer to be able to get credentials from the currently authorized user via gcloud auth.
	at org.apache.beam.sdk.util.Credentials.getCredential(Credentials.java:123)
	at org.apache.beam.sdk.util.GcpCredentialFactory.getCredential(GcpCredentialFactory.java:43)
	at org.apache.beam.sdk.options.GcpOptions$GcpUserCredentialsFactory.create(GcpOptions.java:264)
	at org.apache.beam.sdk.options.GcpOptions$GcpUserCredentialsFactory.create(GcpOptions.java:254)
	at org.apache.beam.sdk.options.ProxyInvocationHandler.returnDefaultHelper(ProxyInvocationHandler.java:549)
	at org.apache.beam.sdk.options.ProxyInvocationHandler.getDefault(ProxyInvocationHandler.java:490)
	at org.apache.beam.sdk.options.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:152)
	at com.sun.proxy.$Proxy52.getGcpCredential(Unknown Source)
	at org.apache.beam.sdk.util.Transport.newStorageClient(Transport.java:148)
	at org.apache.beam.sdk.util.GcsUtil$GcsUtilFactory.create(GcsUtil.java:96)
	at org.apache.beam.sdk.util.GcsUtil$GcsUtilFactory.create(GcsUtil.java:84)
	at org.apache.beam.sdk.options.ProxyInvocationHandler.returnDefaultHelper(ProxyInvocationHandler.java:549)
	at org.apache.beam.sdk.options.ProxyInvocationHandler.getDefault(ProxyInvocationHandler.java:490)
	at org.apache.beam.sdk.options.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:152)
	at com.sun.proxy.$Proxy52.getGcsUtil(Unknown Source)
	at org.apache.beam.sdk.util.GcsIOChannelFactory.match(GcsIOChannelFactory.java:43)
	at org.apache.beam.sdk.io.TextIO$Read$Bound.apply(TextIO.java:283)
	at org.apache.beam.sdk.io.TextIO$Read$Bound.apply(TextIO.java:195)
	at org.apache.beam.sdk.runners.PipelineRunner.apply(PipelineRunner.java:76)
	at org.apache.beam.runners.direct.DirectRunner.apply(DirectRunner.java:226)
	at org.apache.beam.sdk.Pipeline.applyInternal(Pipeline.java:400)
	at org.apache.beam.sdk.Pipeline.applyTransform(Pipeline.java:323)
	at org.apache.beam.sdk.values.PBegin.apply(PBegin.java:58)
	at org.apache.beam.sdk.Pipeline.apply(Pipeline.java:173)
	at org.apache.beam.examples.WordCount.main(WordCount.java:195)
	... 6 more
Caused by: java.io.IOException: The Application Default Credentials are not available. They are available if running on Google App Engine, Google Compute Engine, or Google Cloud Shell. Otherwise, the environment variable GOOGLE_APPLICATION_CREDENTIALS must be defined pointing to a file defining the credentials. See https://developers.google.com/accounts/docs/application-default-credentials for more information.
	at com.google.api.client.googleapis.auth.oauth2.DefaultCredentialProvider.getDefaultCredential(DefaultCredentialProvider.java:98)
	at com.google.api.client.googleapis.auth.oauth2.GoogleCredential.getApplicationDefault(GoogleCredential.java:213)
	at com.google.api.client.googleapis.auth.oauth2.GoogleCredential.getApplicationDefault(GoogleCredential.java:191)
	at org.apache.beam.sdk.util.Credentials.getCredential(Credentials.java:121)
	... 30 more




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)