grunt-phpで実行できない PHP ベースのプロジェクトがあります。代わりに、grunt-execを使用して開発用の MAMP サーバーを実行しています。
exec: {
serverup: {
command: '/Applications/MAMP/bin/start.sh'
},
serverdown: {
command: '/Applications/MAMP/bin/stop.sh'
}
}
私のカスタム開発タスクでは、監視タスクの直前に MAMP 開始スクリプトを実行します。次に、監視タスクを終了した後、MAMP サーバーを停止しようとしています。
grunt.registerTask('default', ['jshint', 'concat', 'compass:dev', 'exec:serverup', 'watch', 'exec:serverdown']);
ただし、Ctrl-C でタスクを終了すると、タスクがexec:serverdown
実行されないようです。これを機能させる方法はありますか?サーバーがダウンすることはないため、停止スクリプトを手動で実行するまでそのポートは拘束され、停止する前にデフォルト タスクを再度実行しようとするとエラーが発生します。
そうでない場合、同じことを達成できる他の方法はありますか?