Grunt と次のようないくつかのプラグインを使用するJavaScriptプロジェクトがあります。
すべての開発者がgruntタスクをローカルで実行するわけではないため(jshint、qunitなど)、コミットしたコードに問題があるかどうかわからない場合があります。うなり声の監視タスクを設定するのは簡単ですが、エラー/警告時にチームに電子メールを送信することは、私が予想していたほど明白ではありませんでした。
適切にフォーマットされたステータスを電子メールで送信するためにgrunt-contrib-emailstatusのようなものを見つけることを期待していましたが、これまでのところこれに遭遇していません。私はそれを逃しましたか?
そうでない場合、ここで推奨される方法は何ですか?過去に、Cruise Control、Jenkins、Hudsonなどがビルドステータスレポートを処理するのを見たことがありますが、この釘には大きすぎるハンマーのようです。一方で、crontabを使用してステータスをメールで送信しようとするのは小さすぎるようです。
私のチームでしたことは次のとおりです。
git
を使用するので、gitcommitフックを設定しました。したがって、Gruntをコミットするたびにjshintが実行されます。失敗した場合はコミットできません。
Jenkinsを使用しています。したがって、jshintまたは単体テストが失敗すると、ビルドは失敗します。はい、それは「大きなハンマー」ですが、これらのツールは、そのような継続的インテグレーションタスク用に設計されています。これらは、本番バンドルの作成や、実際のWebブラウザーを使用した機能テストの実行などの他の種類の作業に使用できます。たとえば、CloudbeesでホストされているJenkinsを使用し、SauceLabsに基づいていくつかの機能テストをトリガーします。
また、サーバー側のコミットフックを設定することもできます。 Githubを使用していて、Gitサーバーを制御していないため、これを行うことができませんでした(Githubは、Travis CIなどのサードパーティアプリをリポジトリに接続することでその機能を提供します)。
ただし、gitリポジトリを制御していて、大きなCIツールを使用したくない場合は、post-receiveフックを設定できます( http:/ /git-scm.com/book/en/Customizing-Git-Git-Hooks )バックグラウンドで検証を実行し、電子メールを送信します(基本的に、その場合は自作のCIツールを作成しています;))