Initial commit

master
Sven Slootweg 8 years ago
parent 22ec1e602f
commit bd544d021a

@ -0,0 +1 @@
/node_modules/

@ -0,0 +1,21 @@
# gulp-partial-run-process
A wrapper module for running an external process and redirecting its output and status to a `gulp-named-log` logger. Used in my Gulp presets.
## License
[WTFPL](http://www.wtfpl.net/txt/copying/) or [CC0](https://creativecommons.org/publicdomain/zero/1.0/), whichever you prefer. A donation and/or attribution are appreciated, but not required.
## Donate
My income consists largely of donations for my projects. If this module is useful to you, consider [making a donation](http://cryto.net/~joepie91/donate.html)!
You can donate using Bitcoin, PayPal, Flattr, cash-in-mail, SEPA transfers, and pretty much anything else.
## Contributing
Pull requests welcome. Please make sure your modifications are in line with the overall code style, and ensure that you're editing the files in `src/`, not those in `lib/`.
Build tool of choice is `gulp`; simply run `gulp` while developing, and it will watch for changes.
Be aware that by making a pull request, you agree to release your modifications under the licenses stated above.

@ -0,0 +1,18 @@
var gulp = require("gulp");
var presetES2015 = require("@joepie91/gulp-preset-es2015");
var source = ["src/**/*.js"]
gulp.task('babel', function() {
return gulp.src(source)
.pipe(presetES2015({
basePath: __dirname
}))
.pipe(gulp.dest("lib/"));
});
gulp.task("watch", function () {
gulp.watch(source, ["babel"]);
});
gulp.task("default", ["babel", "watch"]);

@ -0,0 +1,3 @@
'use strict';
module.exports = require("./lib");

@ -0,0 +1,29 @@
{
"name": "@joepie91/gulp-partial-run-process",
"version": "1.0.0",
"description": "Runs an external process and passes through its output to a gulp-named-log logger",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "http://git.cryto.net/joepie91/node-gulp-partial-run-process.git"
},
"keywords": [
"gulp",
"partial",
"logging",
"livereload"
],
"author": "Sven Slootweg",
"license": "WTFPL",
"dependencies": {
"stream-to-logger": "0.0.1"
},
"devDependencies": {
"@joepie91/gulp-preset-es2015": "^1.0.1",
"babel-preset-es2015": "^6.6.0",
"gulp": "^3.9.1"
}
}

@ -0,0 +1,27 @@
const childProcess = require("child_process");
const streamToLogger = require("stream-to-logger");
module.exports = function runProcess(path, args, options) {
if (options.logger != null) {
options.logger.info(`Starting ${path}...`);
}
let proc = childProcess.spawn(path, args, options);
if (options.logger != null) {
proc.stdout.pipe(streamToLogger(options.logger.log));
proc.stderr.pipe(streamToLogger(options.logger.error));
}
proc.on("error", (err) => {
if (options.logger != null) {
options.logger.error(err.stack);
}
});
proc.on("close", (code) => {
options.logger.info(`${path} exited with code ${code.toString()}.`);
});
return proc;
}
Loading…
Cancel
Save