Orchestrator

Configure a Workflow

本コンテンツはPhrase Language AIの機械翻訳により、英語から翻訳されています。

サンプルワークフローを続けるには、設定が必要です。

ブロック設定にアクセスするには、[設定] タブの [パラメータ編集] をクリックするか、ブロックを右クリックして [パラメータ編集] を選択し、[パラメータ編集] ウィンドウを開きます。ブロックにパラメータが設定されると、パラメータ追加ボタンがパラメータ編集に切り替わります。

この例のブロックを設定するには、次の手順に従います。

  1. language-blue.svgロケール一覧アクションのパラメータ編集ウィンドウを開きます。

  2. アクセストークンプロジェクトフィールドは、実行時に解決される動的な値を必要とします。

    1. アクセストークンフィールドのリンクアイコン Orc_link.jpg をクリックし、circle-blue.svgアクセストークン取得アクションを選択します。

      リンクが緑色に変わり、フィールドが編集可能になります。

    2. 参照されるトリガーまたはアクションのプロパティにアクセスする構文は次のとおりです。

      {{$.path.to.value}}

      circle-blue.svgアクセス トークン取得の出力は次のとおりです。

      { "tokens": {"strings_token":"STRINGS_TOKEN", "tms_token":"TMS_TOKEN"} }

      アクセストークンフィールドの{{$.tokens.strings_token}}に必要な式を作ります。

    3. プロジェクト フィールドのリンク アイコン Orc_link.jpg をクリックし、history-orange.svguploads: 作成トリガーを選択します。

      リンクが緑色に変わり、フィールドが編集可能になります。

    4. history-orange.svguploads:作成トリガーの出力は次のようになります。

      {
        "branch": {
          "name": "my_branch"
        },
        "event": "uploads:create",
        "message":"ユーザー1がブランチmy_ブランチ\n内のプロジェクト名_1672734591_11でファイルアップロードfile.ymlを初期化しました","
        "project": {
          "created_at":"2023-01-03 08:29:51 UTC",
          "id": "abcdabcdabcdabcd-11",
          "main_format": "yml",
          "name": "name_1672734591_10",
          "point_of_contact": null,
          "project_image_url": null,
          "slug": "name_1672734591_10",
          "updated_at":"2023-01-03 08:29:51 UTC"
        },
        "upload": {
          "created_at":"2023-01-03 08:29:48 UTC",
          "filename": "file.yml",
          "format": "yml",
          "id": "upload-1",
          "state": "initialized",
          "summary": {},
          "tag": null,
          "updated_at":"2023-01-03 08:29:48 UTC"
        },
        "user": {
          "gravatar_uid":"29a2d1baa67d4ea524cf0f247f7bbb94",
          "id":"9c365b9a6f77c247c3de959f6152b231",
          "name":"Joe Sixpack",
          "username": "user-1"
        }
      }
      

      プロジェクトフィールドの{{$.project.id}}に必要な式を作成する。

    5. 保存をクリックします。

      パラメータ編集ウィンドウが閉じて、アクションのパラメータが保存されます。

  3. プロジェクトのデフォルトロケールは、work-blue.svgジョブ作成アクションに ID を渡してジョブを作成する必要があります。「 circle-blue.svgTransform JSON with jq 」アクションは、JSON 入力を受け取り、指定されたフィルターを適用して、再び JSON を出力します。

    1. ワークフロー ブロック ウィンドウの[Actions]タブで、Phrase-jqを検索します。

      circle-blue.svgTransform JSON with jq 」アクションブロックをlanguage-blue.svg一覧ロケールアクションの下にドラッグ&ドロップして接続します。

    2. 「 jq で JSON を変換 」アクションのパラメータ編集ウィンドウを開きます。

    3. 入力の種類」ドロップダウンフィールドから JSON を選択します。

    4. 「入力」フィールドのリンクアイコン Orc_link.jpg をクリックし、language-blue.svgロケール一覧アクションを選択します。

      リンクが緑色に変わり、フィールドが編集可能になります。

    5. 入力」フィールドは JSON 入力を取ります。特殊な固定表現($ ではなく @)を使用すると、参照アクションの出力全体がフィールドに渡されます。

      [Input] フィールドに expression {{@.outputs.result}} を入力します。

    6. Jq」フィールドのリンクアイコン Orc_link.jpg をクリックし、language-blue.svg一覧ロケールアクションを選択します。

      リンクが緑色に変わり、フィールドが編集可能になります。

    7. デフォルトのプロパティーが true であるすべての要素を含む新しい一覧を返すロケール一覧のフィルタ。

      プロジェクトごとに指定できるデフォルトロケールは 1 つだけで、一覧には識別可能で必要な要素が 1 つあります。この要素は、.[0] 配列構文で直接アクセスされます。

      Jq」フィールドに式 map(select(.default))|.[0] を入力します。

    8. 保存をクリックします。

      パラメータ編集ウィンドウが閉じて、アクションのパラメータが保存されます。

  4. work-blue.svgジョブ作成アクションが設定できるようになり、以前のブロックのパターンを使用します。

    1. アクセストークンフィールドのリンクアイコン Orc_link.jpg をクリックし、circle-blue.svgアクセストークン取得アクションを選択します。

      リンクが緑色に変わり、フィールドが編集可能になります。

      式の{{$.tokens.strings_token}}を入力します。

    2. プロジェクト フィールドのリンク アイコン Orc_link.jpg をクリックし、language-orange.svguploads: 作成トリガーを選択します。

      リンクが緑色に変わり、フィールドが編集可能になります。

      式の{{$.project.id}}を入力します。

    3. 原文ロケールフィールドのリンクアイコン Orc_link.jpg をクリックし、「 Transform JSON with jq 」アクションを選択します。

      リンクが緑色に変わり、フィールドが編集可能になります。

      式の{{@.outputs.result}}を入力します。

    4. 納期は sprig または Expr 関数で計算できますが、この例では API が理解するハードコードされた日付を使用します。

      Due date] フィールドに、「2023-12-31T12:00:00Z」と入力します。

    5. 保存をクリックします。

      設定が保存され、[Configure] タブで詳細を確認できます。

  5. すべてのアクションには、論理 AND および OR を組み合わせた 1 つまたは複数の条件を含めることができます。これらの条件は実行時に評価され、アクションとその子アクションは、条件が true と評価された場合にのみ実行されます。

    この例を反映するには、work-blue.svgジョブ作成アクションを選択した状態で、[条件]タブの[条件編集]をクリックするか、ブロックを右クリックして[条件編集]を選択します。

    条件編集ウィンドウが開きます。

    1. 前のブロックのパターンに従って、変数フィールドを language-orange.svguploads: 作成トリガーにリンクし、式の{{$.upload.tag}}を入力します。

    2. 最初のドロップダウンリストから NOT を選択して、文を反転します。

    3. 比較ドロップダウン一覧から IsNull を選択します。

    4. 保存をクリックします。

      条件は、[Conditions] タブに表示されます。

    アップロードにタグが含まれていない場合、ワークフローはこの時点で停止します(新規/更新されたキー/翻訳がなかったことを意味します)。

  6. ジョブに訳文ロケールが必要になりました。この例では、スペイン語(es-ES)とドイツ語(de-DE)の2つのロケールを作成します。ステップ 3 と同様に、ロケールが パラメータ編集ウィンドウの 2 つの circle-blue.svgTransform JSON に jq アクションとともに追加されます。

    1. 両方のアクションの「入力」フィールドに式の{{@.outputs.result}}を入力し、language-blue.svgロケール一覧アクションにリンクしてパラメータを保存します。

    2. 1 つのアクションの Jg フィールドに、式 map(select(.name == "es-ES"))|.[0] を入力し、language-blue.svgロケール一覧アクションにリンクします。

      パラメータを保存。

    3. 2 番目のアクションで、式 map(select(.name == "de-DE"))|.[0] を入力し、language-blue.svgロケール一覧アクションにリンクします。

      パラメータを保存。

  7. ロケールがジョブ作成に適用されます。

    2 つを設定します。 以前定義したのと同じパターン のジョブアクションにターゲットロケールをwork-blue.svg追加 します。

  8. これでジョブを開始できます。

    「定義と同じパターンでwork-blue.svgジョブアクションを開始」を設定します。

この記事は役に立ちましたか?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.