From cd11c01c9bdac501ca9a8d3fee833429e4536816 Mon Sep 17 00:00:00 2001 From: dbroqua Date: Tue, 12 Mar 2019 22:50:05 +0100 Subject: [PATCH] Added catch on imagemin --- libs/aws.js | 48 ++++++++++++++++++++++++++---------------------- 1 file changed, 26 insertions(+), 22 deletions(-) diff --git a/libs/aws.js b/libs/aws.js index 9065ad9..5b365c2 100644 --- a/libs/aws.js +++ b/libs/aws.js @@ -6,14 +6,14 @@ const imageminJpegtran = require('imagemin-jpegtran') const imageminPngquant = require('imagemin-pngquant') class Aws { - constructor () { + constructor() { AWS.config.update({ accessKeyId: process.env.AWS_ACCESS_KEY_ID, secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY }) } - _send (params, callback) { + _send(params, callback) { fs.readFile(params.path, (err, data) => { if (err) { callback(err, null) @@ -40,7 +40,7 @@ class Aws { }) } - _compress (params, callback) { + _compress(params, callback) { const newFile = params.path + '.' + params.filename.split('.')[1] fs.copyFile(params.path, newFile, (err, res) => { @@ -49,24 +49,28 @@ class Aws { return false } - (async () => { - const file = await imagemin([newFile], '/tmp', { - plugins: [ - imageminJpegtran(), - imageminPngquant({ - quality: '65-80' - }) - ] - }) + try { - this._send({ - path: file[0].path, - filename: params.filename - }, (err, res) => { - callback(err, res) - fs.unlink(file[0].path, () => {}) - }) - })() + (async () => { + const file = await imagemin([newFile], '/tmp', { + plugins: [ + imageminJpegtran(), + imageminPngquant({ + quality: '65-80' + }) + ] + }) + + this._send({ + path: file[0].path, + filename: params.filename + }, (err, res) => { + callback(err, res) + fs.unlink(file[0].path, () => { }) + }) + })() + } + catch (callback) }) } @@ -75,7 +79,7 @@ class Aws { * @param {Object} params {path: String, filename: String} * @param {Function} callback */ - upload (params, callback) { + upload(params, callback) { fs.readFile(params.path, (err, data) => { if (err) { callback(err, null) @@ -86,7 +90,7 @@ class Aws { }) } - deleteObjects (files, callback) { + deleteObjects(files, callback) { const s3 = new AWS.S3() const basePath = process.env.AWS_URL + process.env.AWS_BASEFOLDER let items = []