Jenkins条件付きステッププラグインを使用して、現在のジョブのログに特定のパターン(「1週間に1つのスナップショットを保持する」など)がある場合は、シェルスクリプトを起動しようとしています。Jenkinsの条件付きステップでログコンテンツを作成する方法は?
条件付きステッププラグインから「正規表現一致」を使用する必要がありますが、式とラベルの値はどのように設定する必要がありますか?
おかげ
Jenkins条件付きステッププラグインを使用して、現在のジョブのログに特定のパターン(「1週間に1つのスナップショットを保持する」など)がある場合は、シェルスクリプトを起動しようとしています。Jenkinsの条件付きステップでログコンテンツを作成する方法は?
条件付きステッププラグインから「正規表現一致」を使用する必要がありますが、式とラベルの値はどのように設定する必要がありますか?
おかげ
最初のステップは、マッチする正規表現の入力されることを、ログの内容を取得することです。
${BUILD_LOG_REGEX,regex="Keep one snapshot per week"}
(注:これは、とラベルを設定することによって行われているプラグインを設定するときに、コンボボックスに「正規表現一致」を選択した後、あなたはBUILD_LOG_REGEXのような既存のトークンのリストを取得するには疑問符をクリックすることができますログは実際の文字列が含まれている場合、これは、実行されるとき、返された値のようなものになります)
使用して利用可能であること:
Label=[[...truncated 1515 lines...]
[INFO] [05:10:55.472] -> Keep one snapshot per week between 2016-03-10 and 2017-02-09
[...truncated 22 lines...]
]
はだから今、私たちは、その正規表現を書く見つける必要があります正確にラベルの内容に一致します。つまり、w空白文字を含む外部括弧の間に何かがあります。上記の場合、式を次のように構成できます。
^.*\s.*Keep one snapshot per week.*\s\[.*\s*
"\ s"はスペース、タブ、改行文字と一致します。
次にあなたが仕事に表示されるはずですが、それが一致しています確認し、このような何かをログに記録します。
Regular expression run condition: Expression=[^.*\s.*Keep one snapshot per week.*\s\[.*\s*], Label=[[...truncated 1515 lines...] [INFO] [05:10:55.472] -> Keep one snapshot per week between 2016-03-10 and 2017-02-09 [...truncated 22 lines...] ] Run condition [Regular expression match] enabling perform for step [Execute shell]