我正在尝试找到一种target
模式或缓存配置来区分流中具有相同名称的任务。
如上图所示,只有一个任务被缓存,另一个被覆盖。我尝试使用task-slug
但无济于事。
@task(
name="process_resource-{task_slug}",
log_stdout=True,
target=task_target
)
提前致谢
看起来您正在尝试格式化任务名称而不是目标。(任务名称不是可模板化的字符串)。
以下代码段可能是您想要的:
@task(name="process_resource", log_stdout=True, target="{task_name}-{task_slug}")
经过进一步研究,文档似乎直接解决了动态更改任务配置的问题 - 没有破坏目标位置模板。
@task
def number_task():
return 42
with Flow("example-v3") as f:
result = number_task(task_args={"name": "new-name"})
print(f.tasks) # {<Task: new-name>}