Joran Elias created ARROW-17894:
-----------------------------------

             Summary: [R] Documentation for json_credentials is misleading
                 Key: ARROW-17894
                 URL: https://issues.apache.org/jira/browse/ARROW-17894
             Project: Apache Arrow
          Issue Type: Bug
          Components: R
    Affects Versions: 9.0.1
            Reporter: Joran Elias


For authenticating with GCS via a JSON credentials file, the documentation 
under ?FileSystem for GcsFileSystem$create() says:

 
 * {{{}json_credentials{}}}: optional string for authentication. Point to a 
JSON credentials file downloaded from GCS.

 

Additionally, the GCS Authentication section of Working with Cloud Storage (S3, 
GCS) in the file system vignette says:
{quote}or {{{}json_credentials{}}}, to reference a downloaded credentials file.
{quote}
 

Both of these seem to imply that json_credentials expects a path to a JSON 
credentials file downloaded from GCP. However, when a file path is provided you 
get an invalid argument error:

 
{code:java}
> bucket <- gs_bucket(bucket = 'pinned_data',json_credentials = json_path)
> bucket$ls(recursive = TRUE)
Error: Invalid: google::cloud::Status(INVALID_ARGUMENT: Permanent error in 
ListObjects: Invalid ServiceAccountCredentials,parsing failed on data loaded 
from memory). Detail: [errno 22] Invalid argument
{code}
 

However, if you pass a string containing the raw JSON from the file itself, the 
above code snippet works and returns the names of the objects in the bucket.

Both sections of the documentation should be clarified to explicitly say that 
the argument expects the actual JSON rather than a file path to the JSON file.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to