python - 在 DAG 中添加标签
问题描述
我有一个关于为 Airflow 更新 python DAG 文件的问题。我有将近 2000 个 DAG 文件,我想在我的 CI/CD 管道上管理版本控制。
我想要实现的是物理更新我的 CI 上的 python 文件,以在我的 DAG 中添加一个标签,就像tags=['version:v1.0.0']
在将它发送到气流之前一样。
DAG 来自不同的开发人员,因此 DAG 的定义并不总是相同,我已经确定了多种声明方式,以下是一些示例:
隐式 dag_id:
dag = DAG( 'mydummydag', default_args=default_args, description='mydescription', schedule_interval=None, dagrun_timeout=timedelta(minutes=20))
显式 dag_id :
dag = DAG( dag_id='mydummydag', default_args=default_args, description='mydescription', schedule_interval=None, dagrun_timeout=timedelta(minutes=20))
一些标签已经存在,但没有版本:
dag = DAG( dag_id='mydummydag', default_args=default_args, description='mydescription', schedule_interval=None, tags=['mytag1','mytag2'], dagrun_timeout=timedelta(minutes=20))
版本标签已经存在,我们需要更新它:
dag = DAG( dag_id='mydummydag', default_args=default_args, description='mydescription', schedule_interval=None, tags=['version:1.0.0','mytag2'], dagrun_timeout=timedelta(minutes=20))
DAG 类的内容可以根据参数的顺序和它们的使用完全随机(只要它们存在于类定义中)。
更新版本号的过程已经开始,因为我已经在我的仓库中更新了一个 VERSION 文件。我的问题只是关于 python DAG 文件,如果有人知道如何做到这一点。
它应该在 bash 或 python 中完成,但我没有关闭。
解决方案
推荐阅读
- reactjs - JavaScript 类可以有卸载方法吗
- bash - 使用 make 命令时出现错误“make: [Makefile:2: all] Error 127”
- javascript - 如何比较 2 个数组的相同值并将它们保存到带有 true 或 false 标志的第三个数组
- javascript - React:获取 input[type=text] 的值并输出该值
- node.js - 亚马逊 ec2 实例上的 JavaScript HTTP 请求失败
- python - 用于简单 python 字典的 Django Rest API
- javascript - 为每个 Json 对象创建饼图
- api - How can I prevent anybody sending requests to my server?
- java - 在 Java 中将字符添加到字符数组
- telegram - 电报importContacts方法不起作用