From 7296d88ffc1f3a72784ef245f6474fe7f0e1a867 Mon Sep 17 00:00:00 2001 From: jialiya Date: Fri, 27 Jun 2014 23:31:13 -0700 Subject: [PATCH 1/6] getting rid of tessel version on run. it didn't work anyway. --- bin/tessel-run.js | 8 -------- 1 file changed, 8 deletions(-) diff --git a/bin/tessel-run.js b/bin/tessel-run.js index d565a41..5fd3cba 100755 --- a/bin/tessel-run.js +++ b/bin/tessel-run.js @@ -40,14 +40,6 @@ var argv = require("nomnom") list: true, help: 'Arguments to pass in as process.argv.' }) - .option('version', { - abbr: 'v', - flag: true, - help: 'Print tessel-node\'s version.', - callback: function() { - return require('./package.json').version.replace(/^v?/, 'v'); - } - }) .option('interactive', { abbr: 'i', flag: true, From e2bf2715db930b0256a1b950baf951d1233a8ee8 Mon Sep 17 00:00:00 2001 From: jialiya Date: Fri, 27 Jun 2014 23:44:36 -0700 Subject: [PATCH 2/6] adding a --show option --- bin/tessel-push.js | 28 ++++++++++++++++++---------- bin/tessel-run.js | 44 ++++++++++++++++++++++++++------------------ 2 files changed, 44 insertions(+), 28 deletions(-) diff --git a/bin/tessel-push.js b/bin/tessel-push.js index 98c0889..a7678a4 100755 --- a/bin/tessel-push.js +++ b/bin/tessel-push.js @@ -8,16 +8,6 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -var colors = require('colors') - , builds = require('../src/builds') - , logs = require('../src/logs') - ; - -var common = require('../src/cli'); - -// Setup cli. -common.basic(); - // Command-line arguments var argv = require("nomnom") .script('tessel push') @@ -47,6 +37,10 @@ var argv = require("nomnom") flag: true, help: '[Tessel] Stay connected and print logs.' }) + .option('show', { + flag: true, + help: 'Lists which files are being bundled during the push' + }) .option('single', { abbr: 's', flag: true, @@ -61,6 +55,20 @@ var argv = require("nomnom") argv.verbose = !argv.quiet; +if (argv.show && !argv.quiet) { + process.env.DEBUG = '*'; +} + +var colors = require('colors') + , builds = require('../src/builds') + , logs = require('../src/logs') + ; + +var common = require('../src/cli'); + +// Setup cli. +common.basic(); + function usage () { console.error(require('nomnom').getUsage()); process.exit(1); diff --git a/bin/tessel-run.js b/bin/tessel-run.js index 5fd3cba..9b131fa 100755 --- a/bin/tessel-run.js +++ b/bin/tessel-run.js @@ -8,24 +8,6 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -var path = require('path') - -var common = require('../src/cli') - , keypress = require('keypress') - , read = require('read') - , colors = require('colors') - , builds = require('../src/builds') - , util = require('util') - , logs = require('../src/logs') - , repl = require('repl') - ; - -var colonyCompiler = require('colony-compiler') -var fs = require('fs') - -// Setup cli. -common.basic(); - // Command-line arguments var argv = require("nomnom") .script('tessel run') @@ -55,6 +37,10 @@ var argv = require("nomnom") // flag: true, // help: '[Tessel] Push code to a Tessel by IP address.' // }) + .option('show', { + flag: true, + help: 'Lists which files are being bundled during the push' + }) .option('quiet', { abbr: 'q', flag: true, @@ -74,6 +60,28 @@ var argv = require("nomnom") argv.verbose = !argv.quiet; +if (argv.show && !argv.quiet) { + process.env.DEBUG = '*'; +} + +var path = require('path') + +var common = require('../src/cli') + , keypress = require('keypress') + , read = require('read') + , colors = require('colors') + , builds = require('../src/builds') + , util = require('util') + , logs = require('../src/logs') + , repl = require('repl') + ; + +var colonyCompiler = require('colony-compiler') +var fs = require('fs') + +// Setup cli. +common.basic(); + function usage () { console.error(require('nomnom').getUsage()); process.exit(1); From f7621a2a44b8a2a0e6a8f0073a50df738649f828 Mon Sep 17 00:00:00 2001 From: jialiya Date: Mon, 30 Jun 2014 13:46:45 -0700 Subject: [PATCH 3/6] seperating --show flag from debug --- bin/tessel-push.js | 32 ++++++++++++++------------------ bin/tessel-run.js | 46 +++++++++++++++++++++------------------------- src/bundle.js | 8 +++++++- src/script.js | 2 +- 4 files changed, 43 insertions(+), 45 deletions(-) diff --git a/bin/tessel-push.js b/bin/tessel-push.js index a7678a4..3f7e6b2 100755 --- a/bin/tessel-push.js +++ b/bin/tessel-push.js @@ -8,6 +8,16 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +var colors = require('colors') + , builds = require('../src/builds') + , logs = require('../src/logs') + ; + +var common = require('../src/cli'); + +// Setup cli. +common.basic(); + // Command-line arguments var argv = require("nomnom") .script('tessel push') @@ -54,20 +64,7 @@ var argv = require("nomnom") .parse(); argv.verbose = !argv.quiet; - -if (argv.show && !argv.quiet) { - process.env.DEBUG = '*'; -} - -var colors = require('colors') - , builds = require('../src/builds') - , logs = require('../src/logs') - ; - -var common = require('../src/cli'); - -// Setup cli. -common.basic(); +argv.flash = true; function usage () { console.error(require('nomnom').getUsage()); @@ -122,10 +119,9 @@ common.controller(true, function (err, client) { }); function pushCode(){ - client.run(pushpath, ['tessel', pushpath].concat(argv.arguments || []), { - flash: true, - single: argv.single - }, function (err) { + client.run(pushpath, ['tessel', pushpath].concat(argv.arguments || []) + , argv + , function (err) { logs.info("Finished deployment"); diff --git a/bin/tessel-run.js b/bin/tessel-run.js index 9b131fa..2461a12 100755 --- a/bin/tessel-run.js +++ b/bin/tessel-run.js @@ -8,6 +8,24 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +var path = require('path') + +var common = require('../src/cli') + , keypress = require('keypress') + , read = require('read') + , colors = require('colors') + , builds = require('../src/builds') + , util = require('util') + , logs = require('../src/logs') + , repl = require('repl') + ; + +var colonyCompiler = require('colony-compiler') +var fs = require('fs') + +// Setup cli. +common.basic(); + // Command-line arguments var argv = require("nomnom") .script('tessel run') @@ -60,28 +78,6 @@ var argv = require("nomnom") argv.verbose = !argv.quiet; -if (argv.show && !argv.quiet) { - process.env.DEBUG = '*'; -} - -var path = require('path') - -var common = require('../src/cli') - , keypress = require('keypress') - , read = require('read') - , colors = require('colors') - , builds = require('../src/builds') - , util = require('util') - , logs = require('../src/logs') - , repl = require('repl') - ; - -var colonyCompiler = require('colony-compiler') -var fs = require('fs') - -// Setup cli. -common.basic(); - function usage () { console.error(require('nomnom').getUsage()); process.exit(1); @@ -175,9 +171,9 @@ common.controller(true, function (err, client) { }); function pushCode(){ - client.run(pushpath, ['tessel', pushpath].concat(argv.arguments || []), { - single: argv.single - }, function () { + client.run(pushpath, ['tessel', pushpath].concat(argv.arguments || []) + , argv + , function () { // script-start emitted. logs.info('Running script...'); diff --git a/src/bundle.js b/src/bundle.js index d8e8df7..76ef7fd 100644 --- a/src/bundle.js +++ b/src/bundle.js @@ -31,7 +31,7 @@ var path = require('path') } })(); -exports.bundleFiles = function (startpath, args, files, next) +exports.bundleFiles = function (startpath, args, files, bundleopts, next) { temp.mkdir('colony', function (err, dirpath) { var mkdirp = require('mkdirp'); @@ -63,6 +63,9 @@ exports.bundleFiles = function (startpath, args, files, next) var f = _f[0], fullpath = _f[1]; debug('compiling', f); + if (bundleopts.show && !bundleopts.quiet) { + logs.info('compiling', f); + } try { var source = fs.readFileSync(fullpath, 'utf-8'); @@ -92,6 +95,9 @@ exports.bundleFiles = function (startpath, args, files, next) try { colonyCompiler.toBytecode(res, '/' + f.split(path.sep).join('/'), function (err, bytecode) { debug('writing', f); + if (bundleopts.show && !bundleopts.quiet) { + logs.info('writing', f); + } !err && fs.writeFileSync(fullpath, bytecode); next(err); }); diff --git a/src/script.js b/src/script.js index ec62a24..d76e789 100644 --- a/src/script.js +++ b/src/script.js @@ -131,7 +131,7 @@ tessel.bundleScript = function (pushpath, argv, bundleopts, next) verbose && logs.info('Bundling directory ' + ret.pushdir + ' (~' + humanize.filesize(ret.size) + ')'); // Create archive and deploy it to tessel. - tessel.bundleFiles(ret.relpath, argv, ret.files, next); + tessel.bundleFiles(ret.relpath, argv, ret.files, bundleopts, next); } // client#run(pushpath, args, next(err)) From c772a2b954a9a975bc12d71c905b86e4074677f1 Mon Sep 17 00:00:00 2001 From: jialiya Date: Mon, 30 Jun 2014 20:29:21 -0700 Subject: [PATCH 4/6] making --quiet not display messages --- bin/tessel-push.js | 21 ++++++++++++++++----- bin/tessel-run.js | 21 ++++++++++++++++----- src/script.js | 4 +--- 3 files changed, 33 insertions(+), 13 deletions(-) diff --git a/bin/tessel-push.js b/bin/tessel-push.js index 3f7e6b2..3a671e7 100755 --- a/bin/tessel-push.js +++ b/bin/tessel-push.js @@ -37,6 +37,11 @@ var argv = require("nomnom") flag: true, help: '[Tessel] Hide tessel deployment messages.' }) + .option('verbose', { + abbr: 'v', + flag: true, + help: '[Tessel] Show debug messages (such as which files are being bundled).' + }) .option('messages', { abbr: 'm', flag: true, @@ -63,8 +68,10 @@ var argv = require("nomnom") }) .parse(); -argv.verbose = !argv.quiet; -argv.flash = true; +if (argv.verbose && argv.quiet) { + argv.quiet = false; + logs.warn("Both --verbose and --quiet were specified. Defaulting to --verbose"); +} function usage () { console.error(require('nomnom').getUsage()); @@ -120,13 +127,17 @@ common.controller(true, function (err, client) { function pushCode(){ client.run(pushpath, ['tessel', pushpath].concat(argv.arguments || []) - , argv + , { flash: true + , single: argv.single + , verbose: argv.verbose + , quiet : argv.quiet + } , function (err) { - logs.info("Finished deployment"); + if (!argv.quiet) logs.info("Finished deployment"); function exit(code) { - logs.info("Run \"tessel logs\" or \"tessel push -l\" to see logged output."); + if (!argv.quiet) logs.info("Run \"tessel logs\" or \"tessel push -l\" to see logged output."); client.close(function () { process.exit(code || 0); }); diff --git a/bin/tessel-run.js b/bin/tessel-run.js index 2461a12..99f44ee 100755 --- a/bin/tessel-run.js +++ b/bin/tessel-run.js @@ -64,6 +64,11 @@ var argv = require("nomnom") flag: true, help: '[Tessel] Hide tessel deployment messages.' }) + .option('verbose', { + abbr: 'v', + flag: true, + help: '[Tessel] Show debug messages (such as which files are being bundled).' + }) .option('single', { abbr: 's', flag: true, @@ -76,7 +81,10 @@ var argv = require("nomnom") }) .parse(); -argv.verbose = !argv.quiet; +if (argv.verbose && argv.quiet) { + argv.quiet = false; + logs.warn("Both --verbose and --quiet were specified. Defaulting to --verbose"); +} function usage () { console.error(require('nomnom').getUsage()); @@ -172,10 +180,13 @@ common.controller(true, function (err, client) { function pushCode(){ client.run(pushpath, ['tessel', pushpath].concat(argv.arguments || []) - , argv + , { single: argv.single + , verbose : argv.verbose + , quiet : argv.quiet + } , function () { // script-start emitted. - logs.info('Running script...'); + if (!argv.quiet) logs.info('Running script...'); // Forward pipes. client.stdout.resume(); @@ -189,7 +200,7 @@ common.controller(true, function (err, client) { process.on('SIGINT', function() { setTimeout(function () { // timeout :| - logs.info('Script aborted'); + if (!argv.quiet) logs.info('Script aborted'); process.exit(131); }, 200); client.stop(); @@ -211,7 +222,7 @@ common.controller(true, function (err, client) { try { var packet = require('structured-clone').deserialize(data); fs.writeFileSync(path.resolve(upload_dir, path.basename(packet.filename)), packet.buffer); - logs.info(util.format(packet.filename, 'saved to', upload_dir)); + if (!argv.quiet) logs.info(util.format(packet.filename, 'saved to', upload_dir)); } catch (e) { logs.err('invalid sendfile packet received.'); } diff --git a/src/script.js b/src/script.js index d76e789..1eadbcd 100644 --- a/src/script.js +++ b/src/script.js @@ -122,13 +122,11 @@ tessel.bundleScript = function (pushpath, argv, bundleopts, next) next = bundleopts; bundleopts = {}; } - var verbose = !bundleopts.quiet; - var ret = analyzeScript(pushpath, bundleopts); if (ret.warning) { verbose && logs.warn(ret.warning); } - verbose && logs.info('Bundling directory ' + ret.pushdir + ' (~' + humanize.filesize(ret.size) + ')'); + if (!bundleopts.quiet) logs.info('Bundling directory ' + ret.pushdir ); // Create archive and deploy it to tessel. tessel.bundleFiles(ret.relpath, argv, ret.files, bundleopts, next); From 1b6044101c097f8ddcad28cccf26748095953e25 Mon Sep 17 00:00:00 2001 From: jialiya Date: Tue, 1 Jul 2014 12:55:20 -0700 Subject: [PATCH 5/6] fixing test --- test/test_symlinks.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/test_symlinks.js b/test/test_symlinks.js index 432a490..9a1c080 100644 --- a/test/test_symlinks.js +++ b/test/test_symlinks.js @@ -4,7 +4,7 @@ var tar = require('tar'); console.log('1..1') tessel.bundleFiles('index.js', [], { 'sym/sym2/index.js': __dirname + '/sym/sym2/index.js' -}, function (err, bundle) { +}, {}, function (err, bundle) { tar.Parse() .on('entry', function (data) { if (data.path == 'app/sym/sym2/index.js') { From 7ca78cdcbf3bb44f1105da0ae015d5412d2be4ff Mon Sep 17 00:00:00 2001 From: jialiya Date: Mon, 7 Jul 2014 12:18:01 -0700 Subject: [PATCH 6/6] fixing bundle opts --- src/script.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/script.js b/src/script.js index 1eadbcd..9253658 100644 --- a/src/script.js +++ b/src/script.js @@ -124,8 +124,9 @@ tessel.bundleScript = function (pushpath, argv, bundleopts, next) } var ret = analyzeScript(pushpath, bundleopts); if (ret.warning) { - verbose && logs.warn(ret.warning); + bundleopts.verbose && logs.warn(ret.warning); } + if (!bundleopts.quiet) logs.info('Bundling directory ' + ret.pushdir ); // Create archive and deploy it to tessel.