|
|
module.exports = function(grunt) { 'use strict';
var http = require('http'); var port = 1337;
grunt.initConfig({ watch: { nospawn: { files: ['lib/nospawn.js'], tasks: ['server'], options: { nospawn: true, }, }, spawn: { files: ['lib/spawn.js'], tasks: ['server'], }, interrupt: { files: ['lib/interrupt.js'], tasks: ['long', 'long', 'long'], options: { nospawn: true, interrupt: true, }, }, }, });
// Load this watch task
grunt.loadTasks('../../../tasks');
// Our test server task
var server; grunt.registerTask('server', function() { if (!server) { server = http.createServer(function(req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Server is talking!'); }).listen(port); grunt.log.writeln('Server is listening...'); } else { var done = this.async(); http.request({port: port}, function(res) { res.on('data', function(buf) { grunt.log.writeln(buf); done(); }); }).end(); } });
// A long running task
grunt.registerTask('long', function() { setTimeout(this.async(), 2000); });
grunt.registerTask('default', ['server', 'watch']); };
|