6

プロジェクトの自動ビルド プロセスにphingを使用しています。


phingコマンドラインで 起動すると、建物のログが表示されます。お願いします:

  • 電子メールで送信された、
  • 複数の受信者に、
  • ビルドが成功したか失敗したか
  • 理想的には、ビルドが成功したか失敗したかを知らせるメールの件名を付けます
  • 理想的には: フォーマット、色などを備えた HTML メールのようなものがいいでしょう。

phingの出力をコマンドにパイプすることについては考えましたがmail、Linux と Windows の両方で動作し、追加のソフトウェアのインストールを必要としないソリューションが必要です...

誰にもアイデアはありますか?


補足として:ビルドの最後に起動される、ある種の「レポート」ターゲットを追加することを考えましたが、:

  • 以前のすべてのターゲットが失敗しなかった場合にのみ起動されます
  • 完全なログを取得する方法がわかりません
4

5 に答える 5

4

いい案; これを実装するためのチケットを追加しました @ http://phing.info/trac/ticket/539

于 2010-09-02T10:15:51.690 に答える
3

説明したユースケースを処理するカスタムPhingビルドリスナー/ロガーを作成できると思います。フィリップノートンによるこの優れたブログ投稿を見て、始めましょう。

于 2009-11-26T10:02:33.323 に答える
0

これは、アクセスできる Linux サーバー用のスクリプトを作成できると仮定して、追加のソフトウェアをインストールしなくても実行できることです。

php スクリプトで exec() または system() コマンドを使用して完全なログを取得します。これを、curl を使用して http 投稿データとして、アクセスできる Linux サーバー上のリモート スクリプトに送信します。

サーバーでは、http ポスト変数を受け入れ、コンテンツを電子メール アドレスに送信するスクリプトを作成するためのアクセス権があります。そして、あなたは「いや、私は私に電子メールを送ってきた人々に自由にアクセスできる!」と思うかもしれません。彼らがあなたの住所を知っている場合、またはあなたがウェブの連絡フォームを持っている場合... 同じ取引です。これが解決策です ;) セキュリティが懸念される場合は、https 経由で送信してください。

于 2009-10-27T04:53:24.613 に答える
0

sthを使用します。このようにphpスクリプトにラップします。

exec('phing' . $target . ' -f ' . $buildfile . ' | sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g"', $out); //remove bash color
$info = implode("\n", $out);
$subj = sprintf('Deployed %s', $catalogInfo['name']);
mail($data->email, $subj, $info); 

正常に動作します。

于 2011-08-09T19:36:13.933 に答える
-2

PEAR メールパッケージを見ましたか?

于 2009-11-24T04:49:12.617 に答える