🐙

⑤ フローを始めるTriggersについて Kestra

2023/05/24に公開

はじめに

今回はワークフローを構築する際になくてはならないトリガーについてみていきます。

Triggers

  • Kestraは主に3種類のトリガーを提供しています

    • スケジュール
      • cronに基づいてトリガーを行います
    • フロートリガー
      • 別のフローエンドポイントに基づいてトリガーを行います
    • Webhook
      • HTTPリクエストに基づいてトリガーを行います
  • これ以外にも多くのプラグインがあり、トリガーの作成が行えます

  • トリガーの定義はタスクの定義と似ています

  • 必要なプロパティはidtypeになります。(typeに関する幾つかのプロパティも保持できます)

< サンプルトリガーファイル >

triggers:
  - id: schedule
    type: io.kestra.core.models.triggers.types.Schedule
    cron: 0 10 * * *
  - id: listenFlow
    type: io.kestra.core.models.triggers.types.Flow
    conditions:
      - type: io.kestra.core.models.conditions.types.ExecutionFlowCondition
        namespace: io.kestra.tutorial
        flowId: trigger-flow

< トリガーを含めたフローのサンプルコード>

  • サンプルは毎週月曜日の午前 10 時にフローが開始されます
id: daisuke-tutorial
namespace: io.kestra.tutorial
labels:
  env: PRD
description: |
  # Kestra Tutorial
  As you notice, we can use markdown here.
tasks:
  - id: download
    type: io.kestra.plugin.fs.http.Download
    uri: "https://www.data.gouv.fr/fr/datasets/r/d33eabc9-e2fd-4787-83e5-a5fcfb5af66d"
triggers:
  - id: schedule
    type: io.kestra.core.models.triggers.types.Schedule
    cron: 0 10 * * 1

参考

Discussion