diff options
author | Dave Cole <dave@developmentseed.org> | 2013-04-02 18:39:55 -0400 |
---|---|---|
committer | Dave Cole <dave@developmentseed.org> | 2013-04-02 18:39:55 -0400 |
commit | 051ccc95cd61c8af4a1378b7734f5f1445d2b156 (patch) | |
tree | 766bc0da2b7b39e0ebf782a87f25fc2536087f1c | |
parent | beb2d43259ead245b1f46f5c516b4ab3bd8b3fde (diff) |
Localize variables.
-rw-r--r-- | app.js | 23 |
1 files changed, 11 insertions, 12 deletions
@@ -2,20 +2,18 @@ var fs = require('fs'); var express = require('express'); var app = express(); var queue = require('queue-async'); -var exec = require('child_process').exec, - child, - cmd; +var exec = require('child_process').exec; var email = require('emailjs/email'); var config = require('./config.json'); var mailer = email.server.connect(config.email); -var data; app.use(express.bodyParser()); // Receive webhook post app.post('/hooks/jekyll', function(req, res){ - var q = queue(1); - data = JSON.parse(req.body.payload); + var data = JSON.parse(req.body.payload); + var q = queue(1); + var cmd = ''; // Close connection res.send(200); @@ -41,7 +39,7 @@ app.post('/hooks/jekyll', function(req, res){ if (!fs.existsSync(data.source)) { // Git clone repo from GitHub cmd = 'git clone ' + data.url + ' ' + data.source; - q.defer(run, cmd); + q.defer(run, data, cmd); } // Git checkout appropriate branch, pull latest code @@ -49,18 +47,18 @@ app.post('/hooks/jekyll', function(req, res){ ' && git checkout ' + data.branch + ' && git pull origin ' + data.branch + ' && cd -'; - q.defer(run, cmd); + q.defer(run, data, cmd); // Run jekyll cmd = 'cd ' + data.source + ' && jekyll ' + data.source + ' ' + data.dest + ' --no-server --no-auto --base-url="' + data.baseurl + '"' + ' && cd -'; - q.defer(run, cmd); + q.defer(run, data, cmd); // Sync files (remove old files, copy new ones) cmd = 'rm -rf ' + data.site + ' && mv ' + data.dest + ' ' + data.site; - q.defer(run, cmd); + q.defer(run, data, cmd); // Done processing q.await(function() { @@ -88,9 +86,10 @@ app.post('/hooks/jekyll', function(req, res){ app.listen(8080); console.log('Listening on port 8080'); -function run(cmd, cb) { +function run(data, cmd, cb) { + console.log('Running: ' + cmd); - child = exec(cmd, function (error, stdout, stderr) { + exec(cmd, function (error, stdout, stderr) { console.log('stdout: ' + stdout); console.log('stderr: ' + stderr); |