无法将任务添加到 Azure 批处理模型
Posted
技术标签:
【中文标题】无法将任务添加到 Azure 批处理模型【英文标题】:Unable to add Task To Azure Batch Model 【发布时间】:2021-09-02 04:44:36 【问题描述】:我正在尝试使用 output_files 作为任务参数的 Task 创建 Azure Batch Job
tasks = list()
command_task = (r"cmd /c dir")
# Not providing actual property value for security purpose
containerName = r'ContainerName'
azureStorageAccountName = r'AccountName'
azureStorageAccountKey = r'AccountKey'
sas_Token = generate_account_sas(account_name=azureStorageAccountName, account_key=azureStorageAccountKey, resource_types=ResourceTypes(object=True), permission=AccountSasPermissions(read=True, write=True), expiry=datetime.datetime.utcnow() + timedelta(hours=1))
url = f"https://azureStorageAccountName.blob.core.windows.net/containerName?sas_Token"
output_file = batchmodels.OutputFile(
file_pattern=r"..\std*.txt",
destination=batchmodels.OutputFileDestination(
container=batchmodels.OutputFileBlobContainerDestination(container_url=url),
path="abc"),
upload_options='taskCompletion')
tasks.append(batchmodels.TaskAddParameter(id='Task1', display_name='Task1', command_line=command_task, user_identity=user, output_files=[output_file]))
batch_service_client.task.add_collection(job_id, tasks)
在调试此代码时,我收到 的异常 但是在删除 output_files 参数后,一切正常,并且 Job 是使用任务创建的。
【问题讨论】:
【参考方案1】:我在创建 OutputFile 对象时错过了 upload_options 对象:
output_file = batchmodels.OutputFile(
file_pattern=r"..\std*.txt",
destination=batchmodels.OutputFileDestination(
container=batchmodels.OutputFileBlobContainerDestination(container_url=url),
path="abc"),
upload_options=batchmodels.OutputFileUploadOptions('taskCompletion'))
【讨论】:
以上是关于无法将任务添加到 Azure 批处理模型的主要内容,如果未能解决你的问题,请参考以下文章
如何使用任务命中在 azure 批处理节点中运行的烧瓶应用程序?
如何保持azure事件集线器连接活动以使用amqp接收批量诊断
无法在 Azure Function Python3 中添加 ML 模型