我似乎无法得到这个工作。如何在EmailOperator任务的文件名中添加模板变量? (气流)
我想每天发送一个给定的文件,其名称类似于'file _ {{ds_nodash}}。csv'。
问题是,我似乎无法将此名称添加为文件名,因为它似乎无法使用。在电子邮件或主题的文本完美,而不是名称。
这里是DAG作为一个例子:
local_file = 'file-{{ds_nodash}}.csv'
send_stats_csv = EmailOperator(
task_id='send-stats-csv',
to=['[email protected]'],
subject='Subject - {{ ds }}',
html_content='Here is the new file.',
files=[local_file],
dag=dag)
错误代码: 没有这样的文件或目录:u'file - {{ds_nodash}} CSV”
如果我写它的字面,在给定的日期,它的工作完美无瑕。
我在哪里错了?我应该怎么做呢?
任何帮助,将不胜感激。
谢谢。
P.D.从airflow的文档复制粘贴 - “Airflow引擎默认传递一些可在所有模板中访问的变量”。 https://airflow.incubator.apache.org/code.html
如果我理解正确,这些变量可以在执行中访问,所以如果我正在执行dag,应该找到该文件是正确的?我已经尝试过测试任务或者回填DAG,但没有成功。
真棒,所以我想做一个新的emailOperator和扩展现有的将工作,对不对?谢谢!!! :)很好地解释。 –