Orchestrator

ワークフローを構成する

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

サンプルワークフローを続けるには、構成する必要があります。

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

例のブロックを構成するには、次の手順に従います。

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

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

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

      リンクが緑色に変わり、フィールドを編集できるようになります。

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

      {{$.path.to.value}}

      circle-blue.svgトークンへのアクセスを取得の出力は次のようになります。

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

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

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

      リンクが緑色に変わり、フィールドを編集できるようになります。

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

      {
        "branch": {
          "name": "my_branch"
        },
        "event": "uploads:create",
        "message": "user-1 initialized file upload file.yml in project name_1672734591_11 within branch my_branch\n",
        "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. IDをwork-blue.svgジョブの作成アクションに渡してジョブを作成するには、プロジェクトのデフォルトロケールが必要です。circle-blue.svgjqでJSONを変換アクションは、JSON入力を受け取り、指定されたフィルタを適用してから、再びJSONを出力します

    1. ワークフローブロックウィンドウの アクション タブから、Phrase-jq を検索します。

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

    2. Transform JSON with jq アクションの パラメータを編集 ウィンドウを開きます。

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

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

      リンクが緑色に変わり、フィールドを編集できるようになります。

    5. 入力 フィールドは JSON 入力を受け取ります。特別な固定式($<3> ではなく @)により、参照されたアクションの出力全体がフィールドに渡されるようになります。

      入力 フィールドに式 {{@.outputs.result}} を入力します。

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

      リンクが緑色に変わり、フィールドを編集できるようになります。

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

      プロジェクトごとにデフォルトのロケールは1つしか存在できず、一覧には識別可能で必須の要素が1つ含まれています。その要素には、.[0] 配列構文を使用して直接アクセスします。

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

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

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

  4. work-blue.svgジョブを作成 アクションが設定可能になり、前のブロックのパターンが使用されます。

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

      リンクが緑色に変わり、フィールドを編集できるようになります。

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

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

      リンクが緑色に変わり、フィールドを編集できるようになります。

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

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

      リンクが緑色に変わり、フィールドを編集できるようになります。

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

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

      期限 フィールドに 2023-12-31T12:00:00Z と入力します。

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

      設定は保存され、詳細は 設定 タブで確認できます。

  5. すべてのアクションには、論理 AND および OR で結合された1つ以上の条件を設定できます。これらの条件は実行時に評価され、条件が真と評価された場合にのみ、アクションとその子要素が実行されます。

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

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

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

    2. ステートメントを反転させるには、最初のドロップダウン一覧からNOTを選択します。

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

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

      条件は条件タブに表示されます。

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

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

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

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

      パラメータを保存します。

    3. 2番目のアクションに式map(選択(.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.