Also simplify the s3 backend

This commit is contained in:
Johannes Zellner
2017-04-20 15:35:52 +02:00
parent fe01d1bf28
commit 9f117fcfdc
2 changed files with 73 additions and 100 deletions

View File

@@ -61,29 +61,33 @@ function backup(apiConfig, backupId, source, callback) {
mkdirp(path.dirname(backupFilePath), { mode: 0o777 }, function (error) {
if (error) return callback(new BackupsError(BackupsError.INTERNAL_ERROR, error));
var fileStream = fs.createWriteStream(backupFilePath, { mode: 0o777 });
var pack = tar.pack(source);
var gzip = zlib.createGzip({});
var cipher = crypto.createCipher('aes-256-cbc', apiConfig.key || '');
var encrypt = crypto.createCipher('aes-256-cbc', apiConfig.key || '');
var fileStream = fs.createWriteStream(backupFilePath, { mode: 0o777 });
fileStream.on('error', function (error) {
console.error('[%s] backup: out stream error.', backupId, error);
});
cipher.on('error', function (error) {
console.error('[%s] backup: cipher stream error.', backupId, error);
pack.on('error', function (error) {
console.error('[%s] backup: tar stream error.', backupId, error);
});
gzip.on('error', function (error) {
console.error('[%s] backup: gzip stream error.', backupId, error);
});
encrypt.on('error', function (error) {
console.error('[%s] backup: encrypt stream error.', backupId, error);
});
fileStream.on('error', function (error) {
console.error('[%s] backup: out stream error.', backupId, error);
});
fileStream.on('close', function () {
debug('[%s] backup: done.', backupId);
callback(null);
});
pack.pipe(gzip).pipe(cipher).pipe(fileStream);
pack.pipe(gzip).pipe(encrypt).pipe(fileStream);
});
}