|
|
@@ -2,15 +2,33 @@
|
|
|
* fileUploader
|
|
|
*/
|
|
|
|
|
|
-var aws = require('aws-sdk');
|
|
|
-var config = require('config');
|
|
|
|
|
|
-module.exports = {
|
|
|
- // deleteFile: function(filePath, callback) {
|
|
|
+module.exports = function(app) {
|
|
|
+ 'use strict';
|
|
|
+
|
|
|
+ var aws = require('aws-sdk')
|
|
|
+ , debug = require('debug')('crowi:lib:fileUploader')
|
|
|
+ , config = app.set('config')
|
|
|
+ , lib = {}
|
|
|
+ ;
|
|
|
+
|
|
|
+ function getAwsConfig ()
|
|
|
+ {
|
|
|
+ return {
|
|
|
+ accessKeyId: config.crowi['aws:accessKeyId'],
|
|
|
+ secretAccessKey: config.crowi['aws:secretAccessKey'],
|
|
|
+ region: config.crowi['aws:region'],
|
|
|
+ bucket: config.crowi['aws:bucket']
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+ // lib.deleteFile = function(filePath, callback) {
|
|
|
// // TODO 実装する
|
|
|
- // },
|
|
|
- uploadFile: function(filePath, contentType, fileStream, options, callback) {
|
|
|
- var awsConfig = config.aws;
|
|
|
+ // };
|
|
|
+
|
|
|
+ lib.uploadFile = function(filePath, contentType, fileStream, options, callback) {
|
|
|
+ var awsConfig = getAwsConfig();
|
|
|
+
|
|
|
aws.config.update({
|
|
|
accessKeyId: awsConfig.accessKeyId,
|
|
|
secretAccessKey: awsConfig.secretAccessKey,
|
|
|
@@ -27,11 +45,14 @@ module.exports = {
|
|
|
s3.putObject(params, function(err, data) {
|
|
|
callback(err, data);
|
|
|
});
|
|
|
- },
|
|
|
- generateS3FillUrl: function(filePath) {
|
|
|
- var awsConfig = config.aws;
|
|
|
+ };
|
|
|
+
|
|
|
+ lib.generateS3FillUrl = function(filePath) {
|
|
|
+ var awsConfig = getAwsConfig();
|
|
|
var url = 'https://' + awsConfig.bucket +'.s3.amazonaws.com/' + filePath;
|
|
|
|
|
|
return url;
|
|
|
- }
|
|
|
+ };
|
|
|
+
|
|
|
+ return lib;
|
|
|
};
|