From cdcb1403e6ffeda50d0bb0ca5aab4ac68978069f Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Fri, 22 Jun 2018 16:15:55 +0200 Subject: deleting files will delete on s3 --- app/server/db/model.js | 4 ++++ app/server/util/upload.js | 9 +++++++++ 2 files changed, 13 insertions(+) diff --git a/app/server/db/model.js b/app/server/db/model.js index 98cca41..c5faf03 100644 --- a/app/server/db/model.js +++ b/app/server/db/model.js @@ -1,5 +1,6 @@ const Loader = require('./loader') const db_crud = require('./crud') +const upload = require('../util/upload') module.exports = function modelScope(type, db_model, _props) { @@ -136,6 +137,9 @@ module.exports = function modelScope(type, db_model, _props) { console.error('no record found', id) return reject('no record found') } + if (type === 'file') { + upload.destroyFile(data) + } crud.destroy(id).then( (destroyData) => { resolve(data.toJSON()) })// .catch( () => res.sendStatus(500) ) diff --git a/app/server/util/upload.js b/app/server/util/upload.js index fdda98d..1511830 100644 --- a/app/server/util/upload.js +++ b/app/server/util/upload.js @@ -127,3 +127,12 @@ module.exports.put = function (opt) { s3res && s3res.resume && s3res.resume() }) } + +module.exports.destroyFile = function(file){ + if (file.url.indexOf(process.env.S3_PATH) === -1) return + console.log('delete', file.url) + s3.deleteFile(file.url, function(err, res){ + console.log('file deleted!') + // check `err`, then do `res.pipe(..)` or `res.resume()` or whatever. + }) +} -- cgit v1.2.3-70-g09d2