From 2ec068fc2883abd3d9e18afe81cd6be9044414c4 Mon Sep 17 00:00:00 2001 From: Konstantin Burkalev Date: Wed, 25 Sep 2024 19:18:16 +0300 Subject: [PATCH] =?UTF-8?q?update=20extractFilesFromGCS()=20in=C2=A0BaseDr?= =?UTF-8?q?iver=20to=C2=A0receive=20credentials=20instead=20of=C2=A0Storag?= =?UTF-8?q?e=20instance?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/cubejs-base-driver/src/BaseDriver.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/cubejs-base-driver/src/BaseDriver.ts b/packages/cubejs-base-driver/src/BaseDriver.ts index 0482750d760d6..19f77132dae7a 100644 --- a/packages/cubejs-base-driver/src/BaseDriver.ts +++ b/packages/cubejs-base-driver/src/BaseDriver.ts @@ -57,6 +57,10 @@ export type AzureStorageClientConfig = { sasToken?: string, }; +export type GoogleStorageClientConfig = { + credentials: any, +}; + const sortByKeys = (unordered: any) => { const ordered: any = {}; @@ -690,10 +694,14 @@ export abstract class BaseDriver implements DriverInterface { * Returns an array of signed GCS URLs of the unloaded csv files. */ protected async extractFilesFromGCS( - storage: Storage, + gcsConfig: GoogleStorageClientConfig, bucketName: string, tableName: string ): Promise { + const storage = new Storage({ + credentials: gcsConfig.credentials, + projectId: gcsConfig.credentials.project_id + }); const bucket = storage.bucket(bucketName); const [files] = await bucket.getFiles({ prefix: `${tableName}/` }); if (files.length) {