【问题标题】:Unable to add Task To Azure Batch Model无法将任务添加到 Azure 批处理模型
【发布时间】: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 是使用任务创建的。

【问题讨论】:

    标签: python azure azure-blob-storage azure-sas azure-task-groups


    【解决方案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'))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-02
      • 1970-01-01
      • 1970-01-01
      • 2019-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-19
      相关资源
      最近更新 更多