問題タブ [email-ext]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jenkins-plugins - JELLY_SCRIPTを介してJenkinsのemail-extでansicolorを使用するにはどうすればよいですか?
ansicolor
プラグインとを使用する Jenkins サーバーがありますemail-ext
。Jenkins は、Jenkins Web GUI のコンソール出力で色分けされた HTML に適切に変換される ANSI エスケープ テキストを使用してスクリプトを実行します。
Email-ext は、組み込みのテンプレートに基づいた Jelly スクリプト テンプレートを使用して、ログ ファイルを含む電子メールを送信するために使用されています html
(つまり、Default Content
ボックスには値があります${JELLY_SCRIPT,template="html_modified"}
)。Content Type
ただし、電子メールが に設定されていても、電子メール内のログ データは色分けされていませんHTML
。
email-ext docsの Jelly のヒントによると、次のことができます。
...次のようなビルド アクションを照会して、他のプラグイン アクションのオブジェクトを取得します。
${it.getAction('hudson.plugins.fitnesse.FitnesseResultsAction')}
これを使って次の問題を解決できると思いますが、方法がわかりません。の HTML エミッターit.getAction()
を利用するために、Jelly テンプレートで関数を使用するにはどうすればよいですか? ソースを調べて、ジェリー チップの例で使用できる「アクション」を見つけよ ansicolor
うとしました。
ビルトインhtml
テンプレートで取得されているログ データはbuild.getLog(100)
、何らかの理由で元の ANSI エスケープ ログ テキストを提供していないように見えることに注意してください。そのようなテキストが ansicolor を介して渡された場合、変換する ANSI タグがないため、HTML タグは付けられません。したがって、html
テンプレートのループはログ ファイルから取得する必要があります。
html
変更したいテンプレートのスニペットは次のとおりです
- build.getLog(100) の代わりにファイルからログを取得します
- テキストを渡し
ansicolor
てきれいな HTML にする
templates - 完成したビルドに基づいて、email-ext で生成された電子メールの件名をカスタマイズすることは可能ですか?
いくつかのトークンを使用して電子メールの件名をカスタマイズできることは知っていますが、もう少し動的なものを探しています。環境変数を設定するか、ビルド スクリプトのどこかにあるファイルに書き込み、メールの件名をフォーマットするときに email-ext を使用できるようにしたいと考えていました。
これを可能にする可能性のあるものはありますか?
助けてくれてありがとう
jenkins - ファイルからテキストを取得し、Jenkins メール コンテンツに表示する
構成ファイルからビルド バージョンを作成し、このバージョン番号の値をワークスペースにあるファイルに保存しました。このファイルの内容には、2014.4.3.87 のような値が含まれます。
ここで、この値を Jenkins の電子メール本文に追加する必要があります。メール内線プラグインをインストールしました。どうすればいいのですか。
jenkins - 最後のビルド後のアクションとしてではなく、Jenkins email-ext プラグインを実行する
特定の条件が満たされたときにビルド後に電子メールを送信するために、Jenkins v.1.566 で email-ext プラグイン v.2.38.1 (ビルド後のアクション「編集可能な電子メール通知」) を使用しています。
複数のビルド後のアクションを使用すると、設定でアクションの順序をどのように設定しても、email-ext プラグインが常に最後に来て、他のすべてのアクションの後に実行されるという印象を受けました。他のプラグインはこの問題で説明されているように、順序を尊重し、それに応じて実行されます。
電子メールの送信後に別のビルド後のアクションを実行する可能性はありますか? 私の場合、メール本文の一部であるファイルを削除するため、以前は実行できなかったワークスペースでクリーンアップを行うシェル スクリプトを実行したいと考えています。
メイン ジョブの完了後にトリガーされる追加のクリーンアップ ジョブを定義することで、これを回避できますが、すべてを 1 つのジョブだけで定義することをお勧めします。
git - jenkins email-extが開発者に送信されない
この問題は、git プル リクエストのビルド ジョブに固有のもののようです。プル リクエスト ビルド ジョブは、以下をビルドします。
ビルド出力:
電子メールがトリガーされた理由: 失敗 - すべて トリガーの電子メールの送信: 失敗 - すべて 受信者の空のリストに電子メールを送信しようとしたが、無視された。
この編集可能な電子メール設定は、特定の git ブランチを構築するときに問題なく機能します。
考え?
jenkins - Jenkins : さまざまな受信者にメールを送信する
テストが別のフォルダーで失敗したときに、別の受信者に電子メール通知を送信したいと考えています。
これは Email-ext Jenkins プラグインを使用して可能ですか?
jenkins - Jenkins - email-ext プラグインで件名を変更する
ビルドが失敗したり不安定になったりした後に電子メールをトリガーするために、email-ext プラグインを使用しています。一部のテストが失敗するとビルドが不安定になり、コンパイルが失敗するとビルドが失敗します。
条件を使用して、メール トリガーの原因に応じて異なるカスタマイズされた件名を表示できますか?