Shipit task for interact with AWS s3
s3 task is based on gulp-s3-upload, thanks @clineamb for your work.
Features:
- Synchronize assets with your s3 instance
npm install KrashStudio/shipit-aws --save-dev
Configuration file
aws.json
{
"accessKeyId": "ACCESS_KEY_ID",
"secretAccessKey": "SECRET_ACCESS_KEY",
"region": "REGION",
"params": {
"ACL": "ACL",
"Bucket": "BUCKET_NAME",
"StorageClass": "REDUCED_REDUNDANCY"
},
"syncParams": {
"dirname": "NAME_OF_THE_DIR_YOU_WANT_TO_SYNC",
"options": {
"base": "BASE_RELATIVE_PATH_OF_THE_DIR_YOU_WANT_TO_SYNC",
"whitelist": ["DIRNAMES", "OF", "YOUR", "ASSETS"],
"blacklist": [
"RELATIVE_PATTERNS_OF_DIRS_YOU_DONT_WANT_TO_SYNC",
"**/*",
"!**/*.md",
"!**/*.log",
"!**/*.coffee",
"!**/*.map"
]
}
}
}
shipitfile.js
module.exports = function (shipit) {
require('shipit-aws')(shipit);
var aws = require('./aws.json');
shipit.initConfig({
default: {
...
aws: aws,
...
}
});
...
shipit.run('s3');
};
If you want to sync your S3 through CLI, you can execute:
$ shipit YOUR_ENV s3
- Improve log rendering (make it customizable)
- Add support for other AWS services
MIT