

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Image Builder での cron 式の使用
<a name="cron-expressions"></a>

EC2 Image Builder の cron 式を使用して、パイプラインのベースイメージとコンポーネントに適用される更新でイメージを更新するタイムウィンドウを設定します。パイプライン更新のタイムウィンドウは、cron 式で設定した時間から始まります。cron 式の時間は分単位で設定できます。パイプラインビルドは開始時間以降にも実行できます。

ビルドの実行が開始されるまでに数秒、最長で 1 分かかることがあります。

**注記**  
cron 式ではデフォルトで協定世界時 (UTC) タイムゾーンが使用されますが、タイムゾーンを指定することもできます。UTC 時間の詳細とタイムゾーンのオフセットについては、「[タイムゾーンの略語 — ワールドワイドリスト](https://www.timeanddate.com/time/zones/)」を参照してください。

## Image Builder でサポートされる cron 式の値
<a name="ib-cron-support"></a>

EC2 Image Builder は 6 つの必須フィールドで構成される cron 形式を使用します。各フィールドは、先頭や末尾にスペースを入れずに、間にスペースを入れて他のフィールドと区切られます。

`<Minute> <Hour> <Day> <Month> <Day of the week> <Year>`

次の表は、サポートされている必須 cron エントリの値の一覧です。


**cron 式でサポートされている値**  

| フィールド | 値 | ワイルドカード | 
| --- | --- | --- | 
| 分 | 0-59 | , - \$1 / | 
| 時 | 0-23 | , - \$1 / | 
| 日 | 1-31 | , - \$1 ? / L W | 
| 月 | 1-12、または jan-dec | , - \$1 / | 
| 曜日 | 1-7、または sun-sat | , - \$1 ? L \$1 | 
| 年 | 1970-2199 | , - \$1 / | 

**ワイルドカード**  
次の表で、Image Builder で cron 式にワイルドカードを使用する方法について説明します。指定した時間が経過してからビルドが開始されるまでに最大 1 分かかる場合があることに注意してください。


**cron 式でサポートされているワイルドカード**  

| ワイルドカード | 説明 | 
| --- | --- | 
| , | , (カンマ) のワイルドカードには、追加の値が含まれます。 フィールドの、 jan,feb,marは、1 月、2 月、3 月を含みます。 | 
| - | - (ダッシュ) のワイルドカードは、範囲を指定します。月日フィールドの 1-15 には、指定された月の 1 日から 15 日までが含まれます。 | 
| \$1 | \$1 (アスタリスク) のワイルドカードには、フィールドのすべての値が含まれます。 | 
| ? | ? (疑問符) ワイルドカードは、フィールド値が別の設定に依存することを指定します。日付 フィールドと曜日フィールドで、一方が指定されるか、可能なすべての値 (\$1) を含む場合、もう一方は ? でなければなりません。両方を指定することはできません。例えば、「日付」フィールドに 7 を入力する (その月の 7 日にビルドを実行する) 場合、曜日位置には ? が含まれている必要があります。 | 
| / | / (スラッシュ) のワイルドカードは、増分を指定します。例えば、ビルドを 1 日おきに実行したい場合は、「日」\$1/2 フィールドに入力します。 | 
| L | 日付フィールドのどちらかに L のワイルドカードを指定すると、Last の曜日を指定します。28-31 は月によって、日曜日は曜日によって指定されます。 | 
| W | Day-of-month フィールドの、ワイルドカード W は、平日を指定します。「日付」フィールドに、より前の数字を入力すると W、その日に最も近い平日がターゲットになるということです。例えば、3W を指定した場合、ビルドは月の 3 日目に最も近い平日に実行する必要があります。 | 
| \$1 | \$1 (ハッシュ) は曜日フィールドにのみ使用でき、その後に 1～5 の数字を入力する必要があります。この数字は、特定の月のどの週をビルドの実行に適用するかを指定します。例えば、ビルドを毎月の第 2 金曜日に実行したい場合は、「曜日」フィールドに fri\$12 を使用してください。 | 

**制限事項**
+ cron 式の日フィールドと曜日フィールドを同時に指定することはできません。一方のフィールドに値 または`*`を指定する場合、もう一方のフィールドで`?`を使用する必要があります。
+ 1 分より短い間隔を導き出す cron 式はサポートされていません。

## Image Builder での cron 式の例
<a name="ib-cron-examples"></a>

Cron 式は、Image Builder コンソールの場合と API や CLI の場合の入力方法が異なります。例を見るには、該当するタブを選択してください。

------
#### [ Image Builder console ]

以下の例は、ビルドスケジュールに合わせてコンソールに入力できる cron 式を示しています。UTC 時間形式。24 時間形式。

**毎日午前 10:00 (UTC) に実行**  
`0 10 * * ? *`

**毎日午後 12 時 15 分（UTC）に実行**  
`15 12 * * ? *`

**毎日午前 0 時（UTC）に実行**  
`0 0 * * ? *`

**平日毎朝10:00（UTC）に実行**  
`0 10 ? * 2-6 *`

**平日夕方 6 時（UTC）に実行**  
`0 18 ? * mon-fri *`

**毎月 1 日午前 8 時（UTC）に実行**  
`0 8 1 * ? *`

**毎月第 2 火曜日の午後 10 時 30 分 (UTC) に実行**  
`30 22 ? * tue#2 *`

**ヒント**  
実行中にパイプラインジョブを翌日に延長したくない場合は、開始時間を指定する際にビルドの時間を考慮に入れてください。

------
#### [ API/CLI ]

以下の例は、CLI コマンドまたは API リクエストを使ってビルドスケジュールに入力できる cron 式を示しています。cron 式のみが表示されます。

**毎日午前 10:00 (UTC) に実行**  
`cron(0 10 * * ? *)`

**毎日午後 12 時 15 分（UTC）に実行**  
`cron(15 12 * * ? *)`

**毎日午前 0 時（UTC）に実行**  
`cron(0 0 * * ? *)`

**平日毎朝10:00（UTC）に実行**  
`cron(0 10 ? * 2-6 *)`

**平日夕方6:00（UTC）に実行**  
`cron(0 18 ? * mon-fri *)`

**毎月 1 日午前 8 時（UTC）に実行**  
`cron(0 8 1 * ? *)`

**毎月第 2 火曜日の午後 10 時 30 分 (UTC) に実行**  
`cron(30 22 ? * tue#2 *)`

**ヒント**  
実行中にパイプラインジョブを翌日に延長したくない場合は、開始時間を指定する際にビルドの時間を考慮に入れてください。

------

## Image Builder の rate 式
<a name="ib-rate-expressions"></a>

rate 式は、予定されたイベントルールを作成すると開始され、その定義済されたスケジュールに基づいて実行されます。

rate 式は 2 つの必須フィールドがあります。フィールドは空白で区切ります。

**構文**

```
rate(value unit)
```

*値*  
正数。

*単位*  
時刻の単位。値 1 には、`minute` などさまざまな単位が必要です。また、1 を超える値には `minutes` などの単位が必要です。  
有効な値: minute \$1 minutes \$1 hour \$1 hours \$1 day \$1 days

**制限事項**  
値が `1` に等しい場合、単位は単数形であることが必要です。同様に、`1` より大きい値の場合、単位は複数であることが必要です。たとえば、`rate(1 hours)` と `rate(5 hour)` は有効ではありませんが、`rate(1 hour)` と `rate(5 hours)` は有効です。