LoginSignup
5
5

More than 5 years have passed since last update.

Sails.js で Grunt から gulp に変えても gulp は走らないという罠

Last updated at Posted at 2014-12-19

.sailsrc で Generator を差し替えて (Sailsの内部のGruntをGulpに置き換える)、tasks/ ファイルを gulp ものに変えただけでは gulp は走らない。
当然 Grunt も走らない (間違っていたら教えてくださいm(__)m)。

sails lift を走らせたあとに別のターミナルで gulp を走らせても良いが面倒くさい。

対策

というわけでとりあえず、config/bootstrap.js or .coffee に gulp を走らせるコードを書いて、対策することにした。

console.log じゃなくて util.print を使っているのは、子プロセスの標準出力イベントで得た data に改行文字がすでに含まれているため。
console.log を使うと一行おきに空行が出て気持ち悪かったので、改行文字を吐かない util.print を使った。

config/bootstrap.coffee
{spawn} = require('child_process')
{print, error} = require('util')

module.exports.bootstrap = (cb) ->
  # spawn('gulp') でも良いが、gulp が -g install されていないといけない。
  gulp = spawn('./node_modules/.bin/gulp')

  gulp.stdout.on 'data', (data) ->
    print("gulp: #{data}")

  gulp.stderr.on 'data', (data) ->
    error("gulp error: #{data}")

  cb() # 忘れないでね!
5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5