Kestra — платформа управления данными (оркестратор) с открытым исходным кодом. Если вас интересует автоматизация — этот инструмент для вас.
Установим
docker run --pull=always --rm -it -p 8080:8080 --user=root \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /tmp:/tmp kestra/kestra:latest-full server local
Зайдем на веб-интерфейс
ip_address:8080
Так выглядит главный экран

Рассмотрим небольшой пример и создадим наш первый Flow
Flows -> Create
id: devopslife
namespace: dev
tasks:
- id: devopslife
type: io.kestra.core.tasks.log.Log
message: Welcome to devopslife.ru
Нажимаем Save, затем Execute

Важно на что стоит обратить внимание на примере выше
id - имя вашего flow
namespace - среда для вашего flow
tasks - задачи, которые выполняются в рамках flow
Отмечу, что внутри присутствует удобный редактор кода (Editor), в котором можно редактировать ваши Flows
Рассмотрим еще один пример. Создадим новый Flow (соблюдайте разметку, постараюсь показать на скрине)
id: devopslife
namespace: dev
tasks:
- id: "script"
type: "io.kestra.plugin.scripts.python.Script"
script: |
from kestra import Kestra
import requests
response = requests.get('https://devopslife.ru')
print(response.status_code)
Kestra.outputs({'status': response.status_code})
beforeCommands:
- pip install requests kestra

Видим что в ответ приходит код 200 — с сайтом все в порядке
