目前,我执行以下操作以查看是否存在作业:
id=$(az batch job show \
--job-id $1 \
--query id \
--output tsv \
--account-key $AZ_BATCH_KEY \
--account-name $AZ_BATCH_ACCOUNT \
--account-endpoint $AZ_BATCH_ENDPOINT)
if [ "$id" == "" ]; then
# create job
else
# enable job
fi
有更强大的方法吗?
基本上,我想检查作业是否已经存在。如果是,我想启用它并向其添加任务。否则,我将创建它并添加任务。
我正在使用自动池功能在创建作业时创建池,并在作业终止时删除池。
答案 0 :(得分:2)
上面看起来很好,看起来另一种可能的方式可能是这样的:
获取作业列表,然后您有一个要解析或过滤的集合。
az batch job list [--account-endpoint]
[--account-key]
[--account-name]
[--expand]
[--filter]
[--job-schedule-id]
[--select]
关于filter
这些链接可能会有所帮助:
文档链接:
关于健壮性,我不确定是否有针对特定命令的任何性能指标。如果在这里发挥作用,可能值得分享性能优化的场景。