S3 for other controolers
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
const s3Storage = require("./s3Storage");
|
||||
|
||||
const BACKUP_PREFIX = "backup";
|
||||
const UPLOADS_PREFIX = "uploads";
|
||||
|
||||
const appendS3UploadsToArchive = async (archive) => {
|
||||
const keys = await s3Storage.listObjects(UPLOADS_PREFIX);
|
||||
|
||||
for (const key of keys) {
|
||||
const buffer = await s3Storage.getObjectBuffer(key);
|
||||
archive.append(buffer, { name: key });
|
||||
}
|
||||
};
|
||||
|
||||
const uploadBackupArchive = async (buffer, fileName) => {
|
||||
await s3Storage.uploadBuffer(
|
||||
`${BACKUP_PREFIX}/${fileName}`,
|
||||
buffer,
|
||||
"application/zip"
|
||||
);
|
||||
};
|
||||
|
||||
const deleteOldBackups = async () => {
|
||||
await s3Storage.deleteObjectsByPrefix(BACKUP_PREFIX);
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
BACKUP_PREFIX,
|
||||
UPLOADS_PREFIX,
|
||||
appendS3UploadsToArchive,
|
||||
uploadBackupArchive,
|
||||
deleteOldBackups,
|
||||
};
|
||||
Reference in New Issue
Block a user