Создать рабочий процесс с помощью YaWL-спецификации
Подготовить YaWL-спецификацию
Сохраните YaWL-спецификацию рабочего процесса в YAML-файле, например yawl-spec.yaml
.
Пример спецификации:
yawl: "0.1"
start: collect_info
steps:
collect_info:
parallel:
branches:
collect_users:
start: fetch_users
steps:
fetch_users:
httpCall:
url: https://jsonplaceholder.typicode.com/users
output: '\({users: .})'
collect_posts:
start: fetch_posts
steps:
fetch_posts:
httpCall:
url: https://jsonplaceholder.typicode.com/posts
output: '\({posts: .})'
Создать рабочий процесс
- В консоли управления
перейдите в каталог, в котором хотите создать рабочий процесс. - Выберите сервис Serverless Integrations.
- На панели слева нажмите
Workflows. - В правом верхнем углу нажмите Создать рабочий процесс.
- Выберите способ
YaML-спецификация
. - В редакторе кода опишите YaWL-спецификацию рабочего процесса.
-
Раскройте блок Дополнительные параметры:
-
Введите имя и описание рабочего процесса. Требования к имени:
- длина — от 2 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
(Опционально) Добавьте метки.
-
(Опционально) Укажите облачную сеть.
-
Выберите сервисный аккаунт или создайте новый.
Сервисному аккаунту должны быть назначены роли для доступа к закрытым ресурсам, которые используются в шагах рабочего процесса.
-
(Опционально) Настройте запись логов.
-
- Нажмите Создать.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>
. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name
или --folder-id
.
-
Посмотрите описание команды CLI для создания рабочего процесса:
yc serverless workflow create --help
-
Создайте рабочий процесс:
yc serverless workflow create \ --yaml-spec <файл_спецификации> \ --name <имя_рабочего_процесса> \ --description "<описание_процесса>" \ --labels <список_меток> \ --network-id <идентификатор_сети> \ --service-account-id <идентификатор_сервисного_аккаунта>
Где:
-
--yaml-spec
— путь к файлу с YaWL-спецификацией рабочего процесса. Например:./yawl-spec.yaml
. -
--name
— имя рабочего процесса. -
--description
— описание рабочего процесса. Необязательный параметр. -
--labels
— список меток. Необязательный параметр.Можно указать одну или несколько меток через запятую в формате
<ключ1>=<значение1>,<ключ2>=<значение2>
. -
--network-id
— идентификатор облачной сети, в которой будет выполняться рабочий процесс. Необязательный параметр. -
--service-account-id
— идентификатор сервисного аккаунта.
Результат:
id: dfqjl5hh5p90******** folder_id: b1g681qpemb4******** specification: spec_yaml: "yawl: ..." created_at: "2025-03-11T09:27:51.691990Z" name: my-workflow description: created via cli labels: owner: "admin" version: "alpha" status: ACTIVE log_options: {} service_account_id: aje4tpd9coa******** network_id: enpm8v48ehcl********
-
Чтобы создать рабочий процесс, воспользуйтесь методом REST API Create для ресурса Workflows или вызовом gRPC API workflow/Create.