Repository navigation
Google Cloud Storage
Robin Rodricks edited this page May 14, 2024
·
17 revisions
In order to use Google Cloud Storage reference package first.
You definitely want to use FluentStorage for working with Google Storage, as it solves quite a few issues which are hard to beat with raw SDK:
- Listing of files and folders
- Recursive and non-recursive listing
- Upload and download operations are continuing to be optimised
If you have credentials stored in an environment variable.
As described here
IBlobStorage storage = StorageFactory.Blobs.GoogleCloudStorageFromEnvironmentVariable(string bucketName);If you have credentials stored in an external file.
IBlobStorage storage = StorageFactory.Blobs.GoogleCloudStorageFromEnvironmentVariable(string bucketName, string credentialsFilePath);If you have credentials passed in a string.
IBlobStorage storage = StorageFactory.Blobs.GoogleCloudStorageFromEnvironmentVariable(
string bucketName,
string credentialsJsonString,
bool isBase64EncodedString = false);The last parameter says whether the string is base64 encoded or not, which is handy if credentials are stored in some sort of config file.
First, don't forget to initialise the module:
StorageFactory.Modules.UseGoogleCloudStorage();Then, use the string:
IBlobStorage storage = StorageFactory.Blobs.FromConnectionString("google.storage://bucket=...;cred=...");Where cred is a BASE64 encoded credential string.
- AWS S3 Storage
- Azure Blob Storage
- Azure File Storage
- Azure Data Lake
- Azure Key Vault
- GCP Storage
- Cloudflare R2 Storage
- MinIO Storage
- DigitalOcean Spaces
- Wasabi Storage
- Backblaze B2 Storage
- Hetzner Storage
- Vultr Storage
- MongoDB GridFS Storage
- Alibaba OSS Storage
- FTP Storage
- SFTP Storage
- Git Repository Storage