Цель состоит в том, чтобы удалить тег воздушного потока из пользовательского интерфейса с помощью вызова rest api. Я попробовал вызов api .../delete?dag_id=<dag_id>
, этот вызов отдыха не работает, говоря, что токен CSRF отсутствует. Как получить токен CSRF с сервера воздушного потока? или есть лучший способ удалить даг из пользовательского интерфейса воздушного потока автоматическим способом? (не нажимая вручную кнопку удаления из пользовательского интерфейса воздушного потока)
Токен CSRF для удаления Airflow Dag в пользовательском интерфейсе воздушного потока с помощью вызова REST API
comment
Привет, вы когда-нибудь находили ответ / обходной путь для этого? Спасибо!
- person luisf   schedule 21.07.2020
Ответы (1)
для airflow vesrion ›= 1.10 вы можете использовать экспериментальный REST API
вот пример кода:
import requests
from urllib.parse import urljoin
def delete_dag(airflow_server_address ,dag_id):
url = urljoin(airflow_server_address, '/api/experimental/dags/'+dag_id)
requests.delete(url)
это удалит прогоны дага и данные из базы данных. сначала убедитесь, что вы удалили файл dag .py, иначе dag продолжит отображаться в графическом интерфейсе воздушного потока.
person
Oded Rozencweig
schedule
03.09.2020
это работает, но мне пришлось использовать команду cli airflow delete_dag, так как в любом случае мне нужно запустить команду cli для удаления файла .py
- person Hemanth Kumar; 07.09.2020
вы также можете использовать команду cli commend. но вы попросили удалить с помощью rest api call. @HemanthKumar
- person Oded Rozencweig; 08.09.2020
Использование остального api работает только в том случае, если базовый файл .py удален, иначе пользовательский интерфейс все еще будет иметь запись, это то, что я имел в виду. Спасибо
- person Hemanth Kumar; 13.09.2020
ты прав, это написано в ответе. отметьте как принятый ответ, если считаете его правильным.
- person Oded Rozencweig; 13.09.2020
переполнение стека говорит, что у меня недостаточно репутации, чтобы выполнить это действие. этот ответ принят с моей стороны. Спасибо.
- person Hemanth Kumar; 14.09.2020
Привет, @Oded Rozencweig, я получаю сообщение об ошибке 404 для API удаления остатка, который вы предложили. Я использую версию 1.10.9. Я могу запустить другой Rest API, но не этот. Я что-то упускаю ?
- person Hemanth Kumar; 08.03.2021