目的
このアクションは、スケジューリングが必要な運用保守シナリオで使用します。実行が開始されると、Operation Orchestration Service (OOS) はその実行を待機状態にします。その後、実行は指定された時刻まで待機し、後続のタスクを実行します。タスクが完了すると、実行は再び待機状態になります。
制限
トリガーには、次の制限があります:
1 つのテンプレートには、トリガーアクションを 1 つしか含めることができません。
トリガーアクションを含むタスクは、テンプレートの Tasks セクションの最初のタスクでなければなりません。
トリガーアクションは、ネストされたテンプレート (子のテンプレート) では使用できません。
構文
YAML 形式
Tasks:
- Name: timerTask # タスクの名前。
Action: ACS::TimerTrigger
Properties:
Type: cron # 必須。時間タイプ。有効値: `cron`、`at`、`rate`。
Expression: '0 * * ? * *' # 必須。`cron` 式、日時を表す式、または `rate` 式。`cron` 式は、デフォルトで UTC に基づきます。
TimeZone: 'Asia/Shanghai' # オプション。タイムゾーン。デフォルトは UTC です。
StartDate: '2020-12-20T09:19:30Z' # オプション。開始時刻。時刻は UTC で、`YYYY-MM-DD` または `YYYY-MM-DDThh:mm:ssZ` 形式で指定する必要があります。このパラメーターを省略した場合、実行開始時刻がデフォルトとして使用されます。
EndDate: '2020-12-29T09:19:30Z' # 必須。終了時刻。時刻は UTC で、`YYYY-MM-DD` または `YYYY-MM-DDThh:mm:ssZ` 形式で指定する必要があります。JSON 形式 (詳細は YAML の例のコメントをご参照ください)
{
"Tasks": [
{
"Name": "timerTask",
"Action": "ACS::TimerTrigger",
"Properties": {
"Type": "cron",
"Expression": "0 * * ? * *",
"StartDate": "2020-12-20T09:19:30Z",
"EndDate": "2020-12-29T09:19:30Z",
"TimeZone": "Asia/Shanghai"
}
}
]
}フローチャート

フローチャートは次のように動作します:
実行が作成されると、親の実行は待機状態になります。
指定された時刻になると、親の実行は実行中状態になり、同じテンプレートとパラメーターを使用する子の実行を自動的に作成します。子の実行はトリガータスクをスキップし、後続のタスクを直接実行します。
子の実行が成功、失敗、またはキャンセル済みのステータスで完了すると、親の実行は待機状態に戻ります。トリガータイプが
cronまたはrateの場合、親の実行は次のスケジュール時刻を待機してプロセスを繰り返します。終了時刻に達すると、親の実行は待機を停止して完了し、ステータスは「成功」になります。
親の実行または子の実行は、通常の実行をキャンセルするのと同じ方法でキャンセルできます。キャンセルされた実行のステータスは「キャンセル済み」になります。
例
cron タイプ
YAML 形式:
FormatVersion: OOS-2019-06-01
Description: ECS インスタンスを再起動するスケジュール。
Tasks:
- Name: timer
Action: ACS::TimerTrigger
Properties:
Type: cron
Expression: "0 * * ? * *"
StartDate: 2020-12-10T00:00:00Z
EndDate: 2020-12-20T00:00:00Z
- Name: rebootInstance
Action: ACS::ECS::RebootInstance
Properties:
InstanceId: "i-xxxxx"JSON 形式:
{
"FormatVersion": "OOS-2019-06-01",
"Description": "ECS インスタンスを再起動するスケジュール。",
"Tasks": [
{
"Name": "timer",
"Action": "ACS::TimerTrigger",
"Properties": {
"Type": "cron",
"Expression": "0 * * ? * *",
"StartDate": "2020-12-10T00:00:00Z",
"EndDate": "2020-12-20T00:00:00Z"
}
},
{
"Name": "rebootInstance",
"Action": "ACS::ECS::RebootInstance",
"Properties": {
"InstanceId": "i-xxxxx"
}
}
]
}at タイプ
YAML 形式:
FormatVersion: OOS-2019-06-01
Description: ECS インスタンスを再起動するスケジュール。
Tasks:
- Name: timer
Action: ACS::TimerTrigger
Properties:
Type: at
Expression: '2020-02-29T09:17:35Z'
EndDate: 2020-12-20T00:00:00Z
- Name: rebootInstance
Action: ACS::ECS::RebootInstance
Properties:
InstanceId: "i-xxxxx"JSON 形式:
{
"FormatVersion": "OOS-2019-06-01",
"Description": "ECS インスタンスを再起動するスケジュール。",
"Tasks": [
{
"Name": "timer",
"Action": "ACS::TimerTrigger",
"Properties": {
"Type": "at",
"Expression": "2020-02-29T09:17:35Z",
"EndDate": "2020-12-20T00:00:00.000Z"
}
},
{
"Name": "rebootInstance",
"Action": "ACS::ECS::RebootInstance",
"Properties": {
"InstanceId": "i-xxxxx"
}
}
]
}