UNPKG

generator-gulp-of-drano

Version:

Yeoman generator for an angular.js site. CoffeeScript, stylus, jade, gulp.js. Bootstrap, angular-strap, nib, angular-ui-router. Heroku + s3 deployment tasks included.

36 lines (29 loc) 942 B
var crypto = require('crypto'); // params: dir, key, secret, expiration, bucket, acl, type, redirect module.exports = function(params) { var date = new Date(); var s3Policy = { expiration: params.expiration, conditions: [ ["starts-with", "$key", params.dir], {bucket: params.bucket}, {acl: params.acl}, ['starts-with', "$Content-Type", params.type] ] } // stringify and encode policy var stringPolicy = JSON.stringify(s3Policy); var base64Policy = Buffer(stringPolicy, 'utf-8').toString('base64'); // sign the base64 encoded policy var signature = crypto.createHmac('sha1', params.secret) .update(new Buffer(base64Policy, 'utf-8')) .digest('base64'); return { key: params.dir+"${filename}", AWSAccessKeyId: params.key, signature: signature, policy: base64Policy, acl: params.acl, 'Content-Type': params.type }; }