是否有一个gulp插件来运行Laravel Artisan任务?

时间:2015-10-16 22:49:29

标签: laravel gulp artisan

我无法找到一个gulp插件,其目的只是运行Laravel Artisan任务。在我看来这将是有用的。

我想这将是非常微不足道的,这让我觉得它必须存在。

我看了Laravel Elixir,但这似乎没有做我想要的。

不严格关注主题,但手头的问题如下。

我与gulp-shellgulp-run@eddieajau/shell进行了简短的比赛,对于某项特定任务似乎没有运气:手动运行时运行正常的命令从控制台似乎挂起。 ps显示它正在运行,但显然什么也没做。我可能错过了一些简单的东西,但是从节点调用shell命令似乎总是很繁琐。

我目前在Coffee中的代码是:

gulp.task 'twig', ->
    shell = require '@eddieajau/shell'
    shell.setLogger console.log
    return shell.exec 'php', ['artisan', 'twig:lint'],
        cwd: __dirname

这应该返回一个承诺,gulp.task应该注意和处理。但是当我运行它时似乎挂了。

1 个答案:

答案 0 :(得分:0)

我不会假装知道Coffeescript,但gulp-shell被列入黑名单(意味着它不会做“吞噬方式”)。

gulp-exec可能会执行您正在寻找的内容,但是对于直接shell调用,您并不特别需要它。以下是我的gulpfile(非coffeescript)在我的任何模型更改后运行php artisan ide-helper:generate时的内容:

var exec = require('child_process').exec;

gulp.task('generate:ide-helper', function (cb) {
  exec('php artisan ide-helper:generate', function (err, stdout, stderr) {
    console.log(stdout);
    console.log(stderr);
    cb(err);
  });
});