在下面的KubernetesPodOperator中,如何使图像标签(16.04
)作为我可以通过ConfigMap键值提供的参数/配置值?
k = KubernetesPodOperator(namespace='default',
image="ubuntu:16.04",
cmds=["bash", "-cx"],
arguments=["echo", "10"],
labels={"foo": "bar"},
secrets=[secret_file, secret_env, secret_all_keys],
ports=[port]
volumes=[volume],
volume_mounts=[volume_mount]
name="test",
task_id="task",
affinity=affinity,
is_delete_operator_pod=True,
hostnetwork=False,
tolerations=tolerations,
configmaps=configmaps
)
创建Secret
或ConfigMap
资源。添加键/值对:
apiVersion: v1
kind: ConfigMap
metadata:
name: "app-configmap-env"
namespace: "app-ns"
data:
imageTagId: "abcd1234"
在DAG定义文件中:
with DAG(dag_id='my_dag', default_args=default_args, schedule_interval=None) as dag:
configmaps = ['app-configmap-env']
image_tag_id = os.environ.get('imageTagId', '')
image_name_tag = "ubuntu:%s" % (image_tag_id)
...
k = KubernetesPodOperator(namespace='default',
image=image_name_tag,
cmds=["bash", "-cx"],
...