Сохранение созданного процесса (Dag)
Процесс DAG (Directed Acyclic Graph) в Airflow - это смысловое объединение задач, которые необходимо выполнить в строго определённой последовательности согласно указанному расписанию.
Создание процесса (DAG)
Процесс для оркестратора собирается в отдельном процессе проекта блоком Создать процесс (Dag): в нём задаются идентификатор процесса, расписание, аргументы по умолчанию и список роботов.
Сохранение процесса (DAG) как Python-скрипта
Для сохранения созданного процесса необходимо:
- Открыть Настройки проекта в меню студии и перейти в раздел Окно выполнения;
- В блоке Состояние отключить параметр Отображать окно и сохранить настройки - робот, который выполняется оркестратором на удалённой машине, не должен показывать окно выполнения;
- Перейти на процесс с блоком Создать процесс (Dag);
- Открыть раздел Процесс кнопкой на панели инструментов справа;
- Для генерации Python-скрипта выполнить клик по кнопке Сгенерировать;
- Для запуска процесса сохранения выполнить клик по кнопке Сохранить;
- Выбрать тип сохранения Python-скрипт и выполнить клик по кнопке Сохранить;
- Откроется папка с сохранённым процессом (DAG) как Python-скрипт.
Переименование DAG-файла
Имя файла рекомендуется привести к параметру Наименование блока Создать процесс (Dag) - идентификатору процесса в оркестраторе. Символы, недопустимые в именах файлов, заменяются на подчёркивание: для наименования robot-puzzle-rpa файл называется robot_puzzle_rpa.py.
Загрузка на сервер Airflow
DAG-файл загружается на сервер оркестратора в директорию ../dags - именно её просматривает планировщик Airflow.
Загрузку удобно выполнить из студии, не открывая сервер: кнопка Опубликовать DAG Панели управления Airflow отправляет выбранный файл на сервер и сохраняет версию файла вместе с комментарием.
DAG-файл не обязательно должен лежать в корне папки ../dags: планировщик просматривает её содержимое вместе со вложенными папками. Это позволяет группировать несколько процессов в одной папке, например robot_puzzle_rpa/robot_puzzle_rpa.py. При публикации из студии имя такой папки указывается в поле Подпапка окна Загрузка DAG.