ワークフローのマニフェスト
ワークフローは YAML フォーマットで記述された マニフェスト(Manifest) により定義されます:

このマニフェストを記述し、Shisho Cloud 上のワークフローを作成することで、監査・検査やその後の対応をコードとして定義できます。
大構造
ワークフローのマニフェストは、以下の 5 つから構成されます:
version: 定数 (0.1.0)id: ワークフローに対する一意な IDname: ワークフローのわかりやすい表示名triggers: ワークフローの実行タイミングの設定jobs: ワークフロー内で行う監査・監査やその後の対応の設定
つまり、ワークフローのマニフェストは、以下のようなフォーマットに従う YAML ファイルだということです:
version: 0.1.0
id: "example-workflow"
name: "Example"
triggers:
# ...
jobs:
# ....
トリガー
ワークフローは複数の トリガー を triggers ブロックとして定義します:
version: 0.1.0
id: "example-workflow"
# 複数のトリガーの定義
triggers:
# ...
1 つ 1 つのトリガーは、そのワークフローがいつ実行されるべきかを定義するものです。「一定時間おきにトリガーを実行する」といった時間に基づく定義や、「他サービスからの Webhook メッセージを受け取ったら実行する」というようなイベントに基づく定義が利用できます。
より具体的には、以下のようなトリガーを利用できます:
scheduleトリガーgithubトリガー
schedule トリガー
schedule トリガーは、cron フォーマットを用いてワークフローの実行タイミングを定義するためのトリガーです。
schedule トリガーには cron フォーマットでの実行タイミング設定を 1 つ以上含めることができ、少なくとも 1 つの cron 設定にマッチする時刻 にワークフローが実行されるようになります。
例えば、以下のようなトリガーを持つワークフローは 10 分おきに実行されます:
version: 0.1.0
id: "example-workflow"
triggers:
schedule:
# 10 分おきに実行
- cron: "*/10 * * * *"
# ...
以下は複数の cron 設定を含む schedule トリガーの例です:
version: 0.1.0
id: "example-workflow"
triggers:
schedule:
- cron: "*/10 * * * *"
- cron: "*/30 * * * *"
# ...
note
複数の cron 設定が、同一時刻でのワークフローの実行を指示する場合であっても、ワークフローの実行は 少なくとも 1 回 しか保証されません。