vargulp=require('gulp');varzip=require('gulp-zip');vardel=require('del');varinstall=require('gulp-install');varrunSequence=require('run-sequence');varawsLambda=require("node-aws-lambda");gulp.task('clean',function(cb){del(['./dist','./dist.zip'],cb);});gulp.task('copy',function(){returngulp.src('index.js').pipe(gulp.dest('dist/'));});gulp.task('node-mods',function(){returngulp.src('./package.json').pipe(gulp.dest('dist/')).pipe(install({production:true}));});// Clean up all aws-sdk directories from node_modules. We don't// need to upload them since the Lambda instance will already// have it available globally.gulp.task('clean-aws-sdk',function(callback){del(['dist/node_modules/**/aws-sdk'],callback);});gulp.task('zip',function(){returngulp.src(['dist/**/*','!dist/package.json']).pipe(zip('dist.zip')).pipe(gulp.dest('./'));});gulp.task('upload',function(callback){awsLambda.deploy('./dist.zip',require("./lambda-config.js"),callback);});gulp.task('deploy',function(callback){returnrunSequence(['clean'],['copy'],['node-mods'],['clean-aws-sdk'],['zip'],['upload'],callback);});
Comments (0)
HTTPSSSH
You can clone a snippet to your computer for local editing.
Learn more.