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полученных токенов доступа:

      { "токены": {"strings_токен": "STRINGS_TOKEN", "tms_token": "TMS_TOKEN"} }

      создание выражения, необходимого для {{$.tokens.strings_token}} поля токен доступа.

    3. Нажмите Orc_link.jpg значка ссылки для поля Проект и выберите history-orange.svguploads: создать триггер.

      Ссылка становится зеленой, поле можно редактировать.

    4. Результаты запуска history-orange.svguploads: create напоминают:

      {
        "ветвь": {
          "имя": "my_branch"
        },
        "событие": "uploads:создать",
        «сообщение»: «пользователь-1 инициализировал загрузить файл.yml в названии проекта_1672734591_11 в пределах ветви моя_ветвь\n»,
        "проект": {
          "created_at": "2023-01-03 08:29:51 UTC",
          "Идентификатор": "abcdabcdabcdabcd-11",
          "main_format": "yml",
          "имя": "имя_1672734591_10",
          "point_of_contact": null,
          "project_image_url": null,
          «слизняк»: «имя_1672734591_10»,
          «updated_at»: "2023-01-03 08:29:51 UTC"
        },
        "загрузить": {
          "created_at": "2023-01-03 08:29:48 UTC",
          "имя файла": "file.yml",
          "формат": "yml",
          "Идентификатор": "загрузить-1",
          «состояние»: «инициализировано»,
          «сводная информация»: {},
          «тег»: нулевой,
          «updated_at»: "2023-01-03 08:29:48 UTC"
        },
        "user": {
          "gravatar_uid": "29a2d1baa67d4ea524cf0f247f7bb94",
          "id": "9c365b9a6f77c247c3de959f6152b231",
          «имя»: "Джо Шестьпакет",
          "имя пользователя": "пользователь-1"
        }
      }
      

      создание выражения, требуемого для {{$.project.id}} полей проекта.

    5. Нажмите «Сохранить».

      Окна Редактировать параметры закрываются, а параметры действия сохраняются

  3. Языковой стандарт проекта по умолчанию необходим для создания задания путем передачи идентификатора действию «Сwork-blue.svgо здать задание». circle-blue.svgПеревод JSON с помощью jq-действия принимает значение JSON, применяет указанный фильтр и затем снова выводит JSON

    1. На вкладке Действия в окне блоков рабочего процесса найдите Frase- jq.

      Перетащите circle-blue.svgTransform JSON с помощью блока действий jq под действием language-blue.svgязыков списка, чтобы соединить их.

    2. Откройте окно «Редактировать параметры» для «Трансформировать JSON» действием jq.

    3. Выберите JSON в раскрывающемся поле «Тип ввода».

    4. Нажмите Orc_link.jpg значка ссылки для поля «Ввод» и выберите действие language-blue.svgсписка языковых стандартов.

      Ссылка становится зеленой, поле можно редактировать.

    5. Поле «Ввод» включает данные JSON. Специальное фиксированное выражение (@ вместо $) гарантирует передачу в поле всего результата действия, на которое ссылается пользователь.

      Введите {{@.outputs.result}} выражения в поле «Ввод».

    6. Нажмите Orc_link.jpg значка ссылки для поля JQ и выберите действие language-blue.svgсписка языковых стандартов.

      Ссылка становится зеленой, поле можно редактировать.

    7. Требуется фильтровать список языковых стандартов, который возвращает новый список, содержащий все элементы, в которых действительно свойство по умолчанию.

      На проект может приходиться только один языковой стандарт по умолчанию, и список включает один идентифицируемый и обязательный элемент. Доступ к этому элементу осуществляется напрямую с помощью синтаксиса массива .[0].

      Введите выражение map(выберите(.по умолчанию))|.[0] в поле JQ.

    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 значка ссылки для поля языковых стандартов оригинала и выберите изменить JSON действием jq.

      Ссылка становится зеленой, поле можно редактировать.

      Введите {{@.outputs.result}} выражения.

    4. Срок выполнения может быть рассчитан с помощью функций ветки или Expr, но для этого примера будет использоваться дата, понятная в интерфейсе приложений API.

      В поле «Срок выполнения» введите 2023-12-31T12:00:00Z.

    5. Нажмите «Сохранить».

      Конфигурация сохранена, подробную информацию можно посмотреть на вкладке «Настройка».

  5. Каждое действие может иметь одно или несколько условий в сочетании с логическим И и ИЛИ. Эти условия оцениваются во время выполнения, и действие и его дочерние элементы будут выполняться только в том случае, если условие будет оценено как истинное.

    Чтобы отразить это в примере, при выборе функции «Создать задание» нажмите «Редактировать условия» на вкладке «Условия» или нажмите правой кнопкой мыши на блок и выберите «Редактировать условия». work-blue.svg

    Откроется окно «Редактировать условия».

    1. Следуя шаблонам из предыдущих блоков, свяжите переменное поле с language-orange.svguploads:создайте триггер и введите {{$.upload.tag}} выражения.

    2. Выберите НЕ из первого раскрывающегося списка, чтобы изменить инструкцию.

    3. Выберите IsNull в раскрывающемся списке сравнить.

    4. Нажмите «Сохранить».

      Условие отображается на вкладке Условия.

    На этом рабочий процесс остановится, если загруженный не содержит тега (это означает, что не было новых/обновленных ключей/переводов).

  6. Теперь для задания необходимы языковые стандарты перевода. Для целей примера будут созданы два языковых стандарта: один для испанского (es-ES) и один для немецкого (de-DE). Локали будут добавлены к двум circle-blue.svgTransform JSON действиями jq в окне Редактировать параметры, как на этапе 3.

    1. В поле «Ввод» обоих действий введите {{@.outputs.result}} выражений, свяжитесь с действием language-blue.svg«Список языковых стандартов» и сохраните параметр.

    2. В поле Jg одного действия введите выражение map(select(.name == "es-ES"))|.[0] и свяжитесь с действием language-blue.svgсписка языковых стандартов.

      Сохранить параметр.

    3. Во втором действии введите выражение map(выберите(.name == "de-DE"))|.[0] и свяжитесь с действием language-blue.svgсписка языковых стандартов.

      Сохранить параметр.

  7. Теперь языковые стандарты будут применяться при создании заданий.

    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.