Airflow在unittest.cfg
环境变量路径中创建AIRFLOW_HOME
文件。
我的问题是:为什么我要通过环境变量unittest.cfg
指向airflow.cfg
的方式与AIRFLOW_CONFIG
相同?
之所以要这样做,是因为我不想在AIRFLOW_HOME
目录中包含任何配置文件。
另外,如果有人更了解,您能解释一下unittest.cfg
的含义是什么,因为我找不到关于它的文档。
最佳答案
unittest.cfg
测试配置文件是Airflow在测试模式下运行时使用的default configuration file。
可以通过将unit_test_mode
或airflow.cfg
环境变量中的 AIRFLOW__CORE__UNIT_TEST_MODE
configuration选项设置为True
来激活测试模式。
激活测试模式后,运行时测试配置文件中的配置值将覆盖airflow.cfg
中的配置值。
# Source: https://github.com/apache/airflow/blob/1.10.5/airflow/configuration.py#L558,L561
def get_airflow_test_config(airflow_home):
if 'AIRFLOW_TEST_CONFIG' not in os.environ:
return os.path.join(airflow_home, 'unittests.cfg')
return expand_env_var(os.environ['AIRFLOW_TEST_CONFIG'])
可以将
AIRFLOW_TEST_CONFIG
环境变量设置为测试配置文件的路径。