feat google storage

This commit is contained in:
Quan HL
2023-07-28 15:17:00 +07:00
parent 8e200251ca
commit e02269c004
4 changed files with 205 additions and 29 deletions
+24 -1
View File
@@ -1,4 +1,26 @@
const { S3Client, PutObjectCommand, GetObjectCommand } = require('@aws-sdk/client-s3');
const {Storage} = require('@google-cloud/storage');
const fs = require('fs');
function testGoogleStorage(logger, opts) {
return new Promise((resolve, reject) => {
const serviceKey = JSON.parse(opts.service_key);
const storage = new Storage({
projectId: serviceKey.project_id,
credentials: {
client_email: serviceKey.client_email,
private_key: serviceKey.private_key
},
});
const blob = storage.bucket(opts.name).file('jambonz-sample.text');
fs.createReadStream(`${__dirname}/jambonz-sample.text`)
.pipe(blob.createWriteStream())
.on('error', (err) => reject(err))
.on('finish', () => resolve());
});
}
async function testAwsS3(logger, opts) {
const s3 = new S3Client({
@@ -38,5 +60,6 @@ async function getS3Object(logger, opts) {
module.exports = {
testAwsS3,
getS3Object
getS3Object,
testGoogleStorage
};