@vulcan-sql/extension-store-canner
Version:
Canner persistence store for Vulcan SQL
51 lines (50 loc) • 2.08 kB
TypeScript
export interface CannerStoreConfig {
storage: StorageServiceOptions;
properties: CannnerDriverProfileProperties;
profile: CannerDriverProfileOptions;
}
export interface CannnerDriverProfileProperties {
rootUserId?: string;
}
export interface CannerDriverProfileOptions {
user?: string;
password?: string;
host?: string;
port?: number;
max?: number;
}
export interface StorageServiceOptions {
provider?: string;
minioUrl?: string;
minioSSL?: boolean;
minioPort?: number;
minioBucket?: string;
minioAccessKey?: string;
minioSecretKey?: string;
/**
* Azure Provider options: we still need to set some env @azure/identity needed.
* Azure used the DefaultAzureCredential to create credentials beside the below options need declare.
* You could also refer https://github.com/Canner/canner-storage for some part way from env.
* Otherwise, you could also see full different way to create credentials from https://www.npmjs.com/package/@azure/identity.
* */
azureBucket?: string;
azureAccountName?: string;
/**
* AWS Provider options: we still need to set some env AWS SDK needed.
* AWS used the CredentialProviderChain to create credentials beside the below options need declare.
* Please refer to our @canner/canner-storage for details: https://github.com/Canner/canner-storage
*/
awsBucket?: string;
/**
* GCP Provider options: we still need to set some env GCP SDK needed
* GCP used the GoogleAuth to create auth beside the below options need declare.
* Please refer https://github.com/googleapis/google-api-nodejs-client#authentication-and-authorization to set credentials files path by "GOOGLE_APPLICATION_CREDENTIALS" env
* Or you could also use another env "GCP_KEY_FILE_PATH" by referring https://github.com/Canner/canner-storage
*/
gcpBucket?: string;
}
/**
* Get canner persistence store used environment variable config
* @returns CannerStoreConfig
*/
export declare const getEnvConfig: () => CannerStoreConfig;