在 Airflow 中将 txt 文件写入磁盘不起作用
Writing txt file to disk in Airflow is not working
我一直在尝试通过 DAG 脚本将简单文本写入本地 txt
文件。即使任务成功运行。我似乎无法在任何地方找到该文件。是因为我在 Windows 上使用 WSL 吗?
这是我的简单脚本:
import os
from datetime import datetime, timedelta
from airflow import DAG
from airflow.operators.bash_operator import BashOperator
from airflow.operators.python_operator import PythonOperator
default_args = {
"owner": "airflow",
"depends_on_past": False,
"start_date": datetime(2020, 12, 5),
"retries": 0,
}
dag = DAG(
"simple_dag",
default_args=default_args,
schedule_interval="@once",
)
t1 = BashOperator(
task_id="print_file",
bash_command='echo "pipeline" > opDE.txt',
dag=dag)
t1
您需要为输出文件定义一个路径。
当 Airflow 执行您的代码时,它将它移动到临时位置并从那里执行它,因此它会将它导出到该位置。从日志中也可以看到:
所以解决方法是导出到所需的路径
我一直在尝试通过 DAG 脚本将简单文本写入本地 txt
文件。即使任务成功运行。我似乎无法在任何地方找到该文件。是因为我在 Windows 上使用 WSL 吗?
这是我的简单脚本:
import os
from datetime import datetime, timedelta
from airflow import DAG
from airflow.operators.bash_operator import BashOperator
from airflow.operators.python_operator import PythonOperator
default_args = {
"owner": "airflow",
"depends_on_past": False,
"start_date": datetime(2020, 12, 5),
"retries": 0,
}
dag = DAG(
"simple_dag",
default_args=default_args,
schedule_interval="@once",
)
t1 = BashOperator(
task_id="print_file",
bash_command='echo "pipeline" > opDE.txt',
dag=dag)
t1
您需要为输出文件定义一个路径。 当 Airflow 执行您的代码时,它将它移动到临时位置并从那里执行它,因此它会将它导出到该位置。从日志中也可以看到:
所以解决方法是导出到所需的路径