将新版本的文件(jar/.py)传播到气流中



我是Airflow的新人,但我不知道如何正确地将新的python脚本或jar发布到Airflow服务器。有问题的部分是/home/airflow/airflow/dags/scripts/file1.py。如果我创建file1.py的新版本,我希望在airflow服务器上传播此新版本。简单的解决方案可以通过FTP

我找到了SFTPOperator,这可能是我进入应用程序的第一步,并获得所需的脚本版本。

1( Aiflow中有比单独步骤更好的方法吗
2(问题的第二部分是如何处理jar文件。我的解决方案是在某个地方发布jar文件(例如Nexus存储库(,并在airflow中有单独的步骤来下载我的文件的最新版本。


from airflow import DAG
from airflow.operators import BashOperator,PythonOperator
from datetime import datetime, timedelta
seven_days_ago = datetime.combine(datetime.today() - timedelta(7),
datetime.min.time())
default_args = { ... }
//
f1 = SFTPOperator(...)
dag = DAG('simple', default_args=default_args)
t2 = BashOperator(
task_id='testairflow',
bash_command='python /home/airflow/airflow/dags/scripts/file1.py',
dag=dag)

我认为您所关注的是源代码版本控制。您应该将DAG视为任何其他代码,并在版本控制系统(如git(中对其进行版本控制。然后,您可以使用任何连续集成工具或cron作业来保持DAGS的同步。

气流定期刷新DAGS(默认值:30秒(。

最新更新