Skip to content

Commit

Permalink
Add deploy command to deploy skygear.min.js to CDN
Browse files Browse the repository at this point in the history
refs #21
  • Loading branch information
cheungpat authored and rickmak committed Jul 5, 2016
1 parent 715ab75 commit d745bb6
Show file tree
Hide file tree
Showing 4 changed files with 51 additions and 3 deletions.
11 changes: 10 additions & 1 deletion gulp/config.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,14 @@ module.exports = {
dest: './dist',
outputName: 'bundle.js',
debug: gutil.env.type === 'dev'
}
},
minified: {
name: 'skygear.min.js'
},
cdn: {
region: 'us-east-1',
bucket: 'code.skygear.io',
path: 'js',
distribution: 'E1PUX937CX882Y'
}
};
2 changes: 1 addition & 1 deletion gulp/tasks/build.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ gulp.task('dev', ['watch']);
gulp.task('minify', ['browserify'], function() {
return gulp.src(config.browserify.dest + '/' + config.browserify.outputName)
.pipe(sourcemaps.init())
.pipe(concat('skygear.min.js'))
.pipe(concat(config.minified.name))
.pipe(uglify())
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest(config.dest))
Expand Down
34 changes: 34 additions & 0 deletions gulp/tasks/deploy.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
var gulp = require('gulp');

var awsinvalidate = require('gulp-cloudfront-invalidate-aws-publish');
var awspublish = require('gulp-awspublish');
var gutil = require('gulp-util');
var rename = require('gulp-rename');

var config = require('../config');
var packagejson = require('../../package.json')

gulp.task('deploy', ['minify'], function() {
var publisher = awspublish.create({
region: config.cdn.region,
params: {
Bucket: config.cdn.bucket
}
});

return gulp.src(config.dest + '/' + config.minified.name + '*')
.pipe(rename(function(path) {
var version = packagejson.version;
if (gutil.env.latest) {
version = 'latest';
}

path.dirname = config.cdn.path + '/skygear/' + version;
}))
.pipe(publisher.publish())
.pipe(awspublish.reporter())
.pipe(awsinvalidate({
distribution: config.cdn.distribution
}));
});

7 changes: 6 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,9 @@
"chai": "^3.2.0",
"dirty-chai": "^1.2.2",
"gulp": "^3.6.0",
"gulp-awspublish": "^3.2.0",
"gulp-babel": "^5.1.0",
"gulp-cloudfront-invalidate-aws-publish": "^0.1.1",
"gulp-concat": "^2.6.0",
"gulp-connect": "^2.2.0",
"gulp-eslint": "^1.1.0-rc-2",
Expand All @@ -33,6 +35,7 @@
"gulp-nsp": "^2.0.0",
"gulp-plumber": "^1.0.0",
"gulp-preprocess": "^1.2.0",
"gulp-rename": "^1.2.2",
"gulp-sourcemaps": "^1.6.0",
"gulp-uglify": "^1.5.3",
"gulp-util": "^3.0.6",
Expand All @@ -49,7 +52,9 @@
"scripts": {
"dev": "gulp --type dev dev",
"prepublish": "gulp --type production prepublish",
"test": "gulp --type dev"
"test": "gulp --type dev",
"deploy": "gulp deploy --type production",
"deploy-latest": "gulp deploy --type production --latest"
},
"license": "Apache-2.0",
"dependencies": {
Expand Down

0 comments on commit d745bb6

Please sign in to comment.