fix archive upload to s3

This commit is contained in:
tdurieux
2021-08-13 11:51:15 +02:00
parent fa24ec344d
commit b786a816fb

View File

@@ -160,21 +160,19 @@ export default class S3Storage implements StorageBase {
/** @override */
async extractTar(p: string, data: stream.Readable): Promise<void> {
return new Promise<void>((resolve, reject) => {
const toS3 = new ArchiveStreamToS3(config.S3_BUCKET, p, this.client);
let toS3: ArchiveStreamToS3;
let rootFolder = null;
(ArchiveStreamToS3 as any).prototype.onEntry = function (
header: any,
stream: any,
next: any
) {
if (rootFolder == null) {
rootFolder = header.name.substr(0, header.name.indexOf("/") + 1);
}
header.name = header.name.replace(rootFolder, "");
header.name = header.name.substr(header.name.indexOf("/") + 1);
originalArchiveStreamToS3Entry.call(toS3, header, stream, next);
};
toS3 = new ArchiveStreamToS3(config.S3_BUCKET, p, this.client);
toS3.on("finish", (result) => {
resolve(result);
});