私はJenkinsに新しい仕事を追加しました。それを定期的にスケジュールしたいです。
Configure job から、[Build Periodically]チェックボックスをオンにして、 Schedule テキストフィールドに次の式を追加しました。
15 13 * * *
しかし、予定した時間には実行されません。
ジョブをスケジュールするのは正しい手順ですか?
ジョブは4:20 AMに実行されるはずですが、実行されていません。
スケジュール期間を15 13 * * *
に設定することで、Jenkinsに、毎年毎月毎月13日の15分にビルドをスケジュールするように指示します。
Jenkinsは cron式 を使用しました。さまざまなフィールドは次のとおりです。
5分ごとにビルドをスケジュールしたい場合は、これが役目を果たします。*/5 * * * *
毎日8時00分にビルドをスケジュールしたい場合は、これが役目を果たします:0 8 * * *
過去のいくつかのバージョン(2014)では、Jenkinsに新しいパラメータH
が追加されました( Jenkinsコードドキュメントから抽出 )。
定期的にスケジュールされたタスクがシステムに均等な負荷をかけることを可能にするために、シンボル
H
( "hash"のため)は可能な限り使われるべきです。たとえば、毎日数十の仕事に
0 0 * * *
を使用すると、真夜中に大きなスパイクが発生します。対照的に、H H * * *
を使用しても1日に1回各ジョブが実行されますが、すべて同時に実行されるわけではないため、限られたリソースを使用することをお勧めします。
次の点にも注意してください。
H
シンボルはある範囲にわたるランダムな値と考えることができますが、実際にはランダムな関数ではなく、ジョブ名のハッシュであるため、値はどのプロジェクトでも安定しています。
Jenkinsでは、改行で区切って複数回設定できます。
毎日午前7時に、日曜日の午後4時に構築する必要がある場合は、以下がうまく機能します。
H 7 * * *
H 16 * * 0
*/5 * * * *
は5分ごとを意味します
5 * * * *
は毎時5分を意味します
形式は次のとおりです。
分(0〜59)、時間(0〜23)、日(1〜31)、月(1〜12)、週の日(0〜6)
Word Hash を表す文字Hは、値の代わりに挿入できます。プロジェクト名のハッシュコードに基づいてパラメータを計算します。
これは、ビルドマシンで同時に複数のプロジェクトをビルドしている場合、毎日午前0時に言っても、それらすべてが同時にビルドの実行を開始するわけではないためです。各プロジェクトは、ハッシュコードに応じて異なる時間に実行を開始します。
値を数値の間になるように指定することもできます。つまり、H(0,30)は、可能なハッシュが0-30のプロジェクトのハッシュコードを返します。
例:
月曜日から金曜日の午前8時30分に毎日ビルドを開始します。 30 08 * * 1-5
日曜日から木曜日の昼休み12:00と真夜中00:00の平日の日次ビルド、1日2回: 00 0,12 * * 0-4
午後4時から午後遅くに毎日ビルドを開始します。 - 4:59 p.m.またはプロジェクトによって異なります16:00 -16:59ハッシュ: H 16 * * 1-5
毎週土曜日の午前0時にビルドを開始するか、午前0時にビルドを開始します。 59 23 * * 6
毎月2時から午前2時30分までの間の毎月: H(0,30)02 01 * *
5分ごとにクーロン・ジョブをスケジュールするには、以下のようにクーロン設定を定義する必要があります。
*/5 * * * *
0 8 * * *を使ってみてください。うまくいくはずです