8000 Throw on failures by DeviaVir · Pull Request #72 · motdotla/node-lambda · GitHub
[go: up one dir, main page]

Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 11 additions & 19 deletions lib/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ Lambda.prototype._rsync = function (program, codeDirectory, callback) {
var excludeArgs = excludes.map(function(exclude) { return '--exclude=' + exclude; }).join(' ');
exec('rsync -r ' + excludeArgs + ' . ' + codeDirectory, function (err) {
if (err) {
throw err;
return callback(err);
}

return callback(null, true);
Expand All @@ -123,7 +123,7 @@ Lambda.prototype._rsync = function (program, codeDirectory, callback) {
Lambda.prototype._npmInstall = function (program, codeDirectory, callback) {
exec('npm install --production --prefix ' + codeDirectory, function (err) {
if (err) {
throw err;
return callback(err);
}

return callback(null, true);
Expand Down Expand Up @@ -248,14 +248,12 @@ Lambda.prototype._archive = function (program, archive_callback) {

_this._rsync(program, codeDirectory, function (err) {
if (err) {
console.error(err);
return;
return archive_callback(err);
}
console.log('=> Running npm install --production');
_this._npmInstall(program, codeDirectory, function (err) {
if (err) {
console.error(err);
return;
return archive_callback(err);
}

// Add custom environment variables if program.configFile is defined
Expand All @@ -275,39 +273,34 @@ Lambda.prototype._archive = function (program, archive_callback) {
Lambda.prototype.package = function (program) {
var _this = this;
if (!program.packageDirectory) {
console.error('packageDirectory not specified!');
return;
throw 'packageDirectory not specified!';
} else {
try {
var isDir = fs.lstatSync(program.packageDirectory).isDirectory();

if (!isDir) {
console.error(program.packageDirectory + ' is not a directory!');
return;
throw program.packageDirectory + ' is not a directory!';
}
} catch(err) {
if (err.code === 'ENOENT') {
console.log('=> Creating package directory');
fs.mkdirSync(program.packageDirectory);
} else {
console.error(err);
return;
throw err;
}
}
}

_this._archive(program, function (err, buffer) {
if (err) {
console.error(err);
return;
throw err;
}
var basename = program.functionName + (program.environment ? '-' + program.environment : '');
var zipfile = path.join(program.packageDirectory, basename + '.zip');
console.log('=> Writing packaged zip');
fs.writeFile(zipfile, buffer, function(err) {
if (err) {
console.error(err);
return;
throw err;
}
console.log('Packaged zip created: ' + zipfile);
});
Expand All @@ -319,8 +312,7 @@ Lambda.prototype.deploy = function (program) {
var regions = program.region.split(',');
_this._archive(program, function (err, buffer) {
if (err) {
console.error(err);
return;
throw err;
}

console.log('=> Reading zip file to memory');
Expand Down Expand Up @@ -357,7 +349,7 @@ Lambda.prototype.deploy = function (program) {
});
}, function (err, results) {
if (err) {
console.error(err);
throw err;
} else {
console.log('=> Zip file(s) done uploading. Results follow: ');
console.log(results);
Expand Down
0