Безопасно ли использовать переменные среды Airflow TASK? - PullRequest
0 голосов
/ 22 октября 2019

Я хочу использовать dag_id без предоставления контекста. Вот пример, где вы можете использовать dag_id:

import os
# ... other imports ...

dag = DAG(
    dag_id="demo",
    default_args=default_args,
    schedule_interval="0 0 * * *",
)

def print_env_var():
    print(os.environ["AIRFLOW_CTX_DAG_ID"])

print_context = PythonOperator(
    task_id="print_env",
    python_callable=print_env_var,
    dag=dag,
)

Что мне интересно, так как при одновременном запуске нескольких групп доступности базы данных не будет постоянно перезаписываться «AIRFLOW_CTX_DAG_ID»? Я предполагаю, что это не будет кошерным, чтобы использовать это. Может быть, мне не хватает основной концепции с точки зрения DAG, работающих в своей собственной независимой оболочке или что-то в этом роде? В этом случае я хотел бы воспользоваться преимуществом переменной env. Я искал основные понятия документации и провел несколько поисков, но не смог найти ответ или причину, по которой эти переменные env установлены.

Спасибо за ваши мысли!

...