使用板克隆工作
clone a job using boto
我点击 "clone job" 按钮,更改环境变量并提交第二个作业。现在两个工作都运行没有任何问题。
但我有一个 python 列表,其中包含几千个变量,这些变量需要循环提供给此作业。也就是说,job需要"cloned"1000次。出于显而易见的原因,我需要使用 boto 来完成它。但是使用 boto 克隆作业的最佳方法是什么?网上的教程展示了创建工作的整个过程。
"containerOverrides" 参数相当于网页界面的 "clone job" 功能。提交作业方法将如下所示...
client.submit_job(
jobName=JOB_NAME,
jobQueue=JOB_QUEUE,
jobDefinition=JOB_DEFINITION,
containerOverrides={"environment": [{"name": "senderid", "value": "XXXX"}]},
)
完整代码如下所示:
import boto3
session = boto3.Session(
aws_access_key_id="xxx",
aws_secret_access_key="xxxx",
region_name="us-east-1",
)
client = session.client("batch")
JOB_NAME = "nlptensorboto1"
JOB_QUEUE = "arn:aws:batch:us-east-1:302xxx:job-queue/nlpmljob"
JOB_DEFINITION = "arn:aws:batch:us-east-1:302xxx:job-definition/nlptensor:1"
client.submit_job(
jobName=JOB_NAME,
jobQueue=JOB_QUEUE,
jobDefinition=JOB_DEFINITION,
containerOverrides={"environment": [{"name": "senderid", "value": "xxx"}]},
)
我点击 "clone job" 按钮,更改环境变量并提交第二个作业。现在两个工作都运行没有任何问题。
但我有一个 python 列表,其中包含几千个变量,这些变量需要循环提供给此作业。也就是说,job需要"cloned"1000次。出于显而易见的原因,我需要使用 boto 来完成它。但是使用 boto 克隆作业的最佳方法是什么?网上的教程展示了创建工作的整个过程。
"containerOverrides" 参数相当于网页界面的 "clone job" 功能。提交作业方法将如下所示...
client.submit_job(
jobName=JOB_NAME,
jobQueue=JOB_QUEUE,
jobDefinition=JOB_DEFINITION,
containerOverrides={"environment": [{"name": "senderid", "value": "XXXX"}]},
)
完整代码如下所示:
import boto3
session = boto3.Session(
aws_access_key_id="xxx",
aws_secret_access_key="xxxx",
region_name="us-east-1",
)
client = session.client("batch")
JOB_NAME = "nlptensorboto1"
JOB_QUEUE = "arn:aws:batch:us-east-1:302xxx:job-queue/nlpmljob"
JOB_DEFINITION = "arn:aws:batch:us-east-1:302xxx:job-definition/nlptensor:1"
client.submit_job(
jobName=JOB_NAME,
jobQueue=JOB_QUEUE,
jobDefinition=JOB_DEFINITION,
containerOverrides={"environment": [{"name": "senderid", "value": "xxx"}]},
)