UNPKG

pomy

Version:

Based on the concept of a project object model (POM), POMY can manage a project's build, reporting and documentation from a central piece of information.

116 lines (88 loc) 2.48 kB
'use strict'; var gulp = require('gulp'), path = require('path'), // sequence = require('run-sequence'), spawn = require('child_process').spawn; gulp.task('markdown', function(cb) { var cwd = path.join(process.cwd(), './plugins/markdown/'); var args = []; var command = null; if (process.platform === "win32") { command = "cmd"; args.push('/c'); args.push(path.resolve(path.dirname(__filename), '../../node_modules/.bin/gulp')); } else { command = "../../node_modules/.bin/gulp"; } args.push("build"); args.push('--prod'); var markdown = spawn(command, args, { cwd: cwd }); markdown.stdout.on('data', function(data) { console.log(data.toString()); }); markdown.stderr.on('data', function(data) { console.error(data.toString()); }); markdown.on('exit', function(code) { console.log('Finish markdown site build process'); cb(); }); }); gulp.task('docs', function(cb) { var cwd = path.join(process.cwd(), './plugins/docs/'); var args = []; var command = null; if (process.platform === "win32") { command = "cmd"; args.push('/c'); args.push(path.resolve(path.dirname(__filename), '../../node_modules/.bin/gulp')); } else { command = "../../node_modules/.bin/gulp"; } args.push("build"); args.push('--prod'); var docs = spawn(command, args, { cwd: cwd }); docs.stdout.on('data', function(data) { console.log(data.toString()); }); docs.stderr.on('data', function(data) { console.error(data.toString()); }); docs.on('exit', function(code) { console.log('Finish docs site build process'); cb(); }); }); gulp.task('changelog', function(cb) { var cwd = path.join(process.cwd(), './plugins/changelog/'); var args = []; var command = null; if (process.platform === "win32") { command = "cmd"; args.push('/c'); args.push(path.resolve(path.dirname(__filename), '../../node_modules/.bin/gulp')); } else { command = "../../node_modules/.bin/gulp"; } args.push("build"); args.push('--prod'); var changelog = spawn(command, args, { cwd: cwd }); changelog.stdout.on('data', function(data) { console.log(data.toString()); }); changelog.stderr.on('data', function(data) { console.error(data.toString()); }); changelog.on('exit', function(code) { console.log('Finish changelog site build process'); cb(); }); }); gulp.task('sites', ['docs', 'markdown', 'changelog']);