共用方式為


TaskAddParameter interface

批次會在節點上觸發復原作業時重試工作。 復原作業的範例包括當狀況不良的節點重新啟動或計算節點因主機失敗而消失時,包括 (但不限於) 。 由於復原作業的重試與 無關,而且不會計入 maxTaskRetryCount。 即使 maxTaskRetryCount 是 0,由於復原作業,可能會發生內部重試。 因此,所有工作都應該是等冪的。 這表示工作必須容許中斷並重新啟動,而不會造成任何損毀或重複的數據。 長時間執行工作的最佳做法是使用某種形式的檢查點。

屬性

affinityInfo

Batch 服務可以使用的地區提示,以選取要啟動新工作的計算節點。

applicationPackageReferences

Batch 服務在執行命令行之前,將部署到計算節點的套件清單。 應用程式套件會下載並部署至共享目錄,而不是工作工作目錄。 因此,如果參考的套件已在節點上,且為最新狀態,則不會重新下載;會使用計算節點上的現有複本。 如果無法安裝參考的套件,例如因為套件已刪除或下載失敗,工作就會失敗。

authenticationTokenSettings

工作可用來執行 Batch 服務作業之驗證令牌的設定。 如果已設定此屬性,Batch 服務會提供一個驗證令牌,可用來驗證 Batch 服務作業,而不需要帳戶存取密鑰。 令牌會透過AZ_BATCH_AUTHENTICATION_TOKEN環境變數來提供。 工作可以使用令牌執行的作業取決於設定。 例如,工作可以要求作業許可權,以便將其他工作新增至作業,或檢查作業下的工作或其他工作的狀態。

commandLine

Task 的命令行。 針對多重實例工作,命令行會在主要工作和所有子工作完成執行協調命令行之後,以主要工作的形式執行。 命令行不會在殼層下執行,因此無法利用殼層功能,例如環境變數擴充。 如果您想要利用這些功能,您應該在命令行中叫用殼層,例如在 Windows 中使用 “cmd /c MyCommand”,或在 Linux 中使用 “/bin/sh -c MyCommand”。 如果命令行參考檔案路徑,它應該使用相對路徑(相對於Task工作目錄),或使用 Batch 提供的環境變數 (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)。

constraints

套用至此工作的執行條件約束。 如果您未指定條件約束,maxTaskRetryCount 是針對 Job 指定的 maxTaskRetryCount、maxWallClockTime 是無限的,而 retentionTime 為 7 天。

containerSettings

工作執行所在的容器設定。 如果執行此工作的集區已設定 containerConfiguration,也必須設定此設定。 如果將執行此工作的集區沒有 containerConfiguration 設定,則不得設定此設定。 指定此專案時,AZ_BATCH_NODE_ROOT_DIR下方的所有目錄都會遞歸地對應到容器中(節點上的 Azure Batch 目錄根目錄),所有工作環境變數都會對應到容器中,而工作命令行則會在容器中執行。 AZ_BATCH_NODE_ROOT_DIR外部容器中產生的檔案可能不會反映到主機磁碟,這表示 Batch 檔案 API 將無法存取這些檔案。

dependsOn

此工作相依的工作。 除非相依的所有工作都順利完成,否則不會排程此工作。 如果其中任何一項工作失敗並耗盡其重試計數,則永遠不會排程此工作。 如果作業沒有將 usesTaskDependencies 設定為 true,而且此元素存在,要求會失敗,並出現錯誤碼 TaskDependenciesNotSpecifiedOnJob。

displayName

工作的顯示名稱。 顯示名稱不是唯一的,而且可以包含最大長度為 1024 的任何 Unicode 字元。

environmentSettings

Task 的環境變數設定清單。

exitConditions

Batch 服務在工作完成時應該如何回應。

id

可唯一識別作業內工作的字串。 標識元可以包含英數位元的任何組合,包括連字元和底線,而且不能包含超過 64 個字元。 標識碼是區分大小寫和不區分大小寫的(也就是說,您可能在作業中沒有兩個標識符,只依大小寫而不同)。

multiInstanceSettings

物件,指出Task是多重實例Task,並包含如何執行多重實例工作的相關信息。

outputFiles

執行命令行之後,Batch 服務會從計算節點上傳的檔案清單。 針對多重實例工作,檔案只會從執行主要工作的計算節點上傳。

requiredSlots

工作執行所需的排程位置數目。 預設值為 1。 如果節點有足夠的可用排程位置,工作只能排程在計算節點上執行。 針對多重實例工作,這必須是1。

resourceFiles

Batch 服務在執行命令行之前,會先下載至計算節點的檔案清單。 針對多重實例工作,資源檔只會下載到執行主要工作的計算節點。 資源檔案清單的大小上限。 超過大小上限時,要求將會失敗,而回應錯誤碼會是 RequestEntityTooLarge。 如果發生這種情況,ResourceFiles 的集合必須縮小大小。 這可以使用 .zip 檔案、應用程式套件或 Docker 容器來達成。

userIdentity

工作執行所在的使用者身分識別。 如果省略,工作會以工作唯一的非系統管理使用者身分執行。

屬性詳細資料

affinityInfo

Batch 服務可以使用的地區提示,以選取要啟動新工作的計算節點。

affinityInfo?: AffinityInformation

屬性值

applicationPackageReferences

Batch 服務在執行命令行之前,將部署到計算節點的套件清單。 應用程式套件會下載並部署至共享目錄,而不是工作工作目錄。 因此,如果參考的套件已在節點上,且為最新狀態,則不會重新下載;會使用計算節點上的現有複本。 如果無法安裝參考的套件,例如因為套件已刪除或下載失敗,工作就會失敗。

applicationPackageReferences?: ApplicationPackageReference[]

屬性值

authenticationTokenSettings

工作可用來執行 Batch 服務作業之驗證令牌的設定。 如果已設定此屬性,Batch 服務會提供一個驗證令牌,可用來驗證 Batch 服務作業,而不需要帳戶存取密鑰。 令牌會透過AZ_BATCH_AUTHENTICATION_TOKEN環境變數來提供。 工作可以使用令牌執行的作業取決於設定。 例如,工作可以要求作業許可權,以便將其他工作新增至作業,或檢查作業下的工作或其他工作的狀態。

authenticationTokenSettings?: AuthenticationTokenSettings

屬性值

commandLine

Task 的命令行。 針對多重實例工作,命令行會在主要工作和所有子工作完成執行協調命令行之後,以主要工作的形式執行。 命令行不會在殼層下執行,因此無法利用殼層功能,例如環境變數擴充。 如果您想要利用這些功能,您應該在命令行中叫用殼層,例如在 Windows 中使用 “cmd /c MyCommand”,或在 Linux 中使用 “/bin/sh -c MyCommand”。 如果命令行參考檔案路徑,它應該使用相對路徑(相對於Task工作目錄),或使用 Batch 提供的環境變數 (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)。

commandLine: string

屬性值

string

constraints

套用至此工作的執行條件約束。 如果您未指定條件約束,maxTaskRetryCount 是針對 Job 指定的 maxTaskRetryCount、maxWallClockTime 是無限的,而 retentionTime 為 7 天。

constraints?: TaskConstraints

屬性值

containerSettings

工作執行所在的容器設定。 如果執行此工作的集區已設定 containerConfiguration,也必須設定此設定。 如果將執行此工作的集區沒有 containerConfiguration 設定,則不得設定此設定。 指定此專案時,AZ_BATCH_NODE_ROOT_DIR下方的所有目錄都會遞歸地對應到容器中(節點上的 Azure Batch 目錄根目錄),所有工作環境變數都會對應到容器中,而工作命令行則會在容器中執行。 AZ_BATCH_NODE_ROOT_DIR外部容器中產生的檔案可能不會反映到主機磁碟,這表示 Batch 檔案 API 將無法存取這些檔案。

containerSettings?: TaskContainerSettings

屬性值

dependsOn

此工作相依的工作。 除非相依的所有工作都順利完成,否則不會排程此工作。 如果其中任何一項工作失敗並耗盡其重試計數,則永遠不會排程此工作。 如果作業沒有將 usesTaskDependencies 設定為 true,而且此元素存在,要求會失敗,並出現錯誤碼 TaskDependenciesNotSpecifiedOnJob。

dependsOn?: TaskDependencies

屬性值

displayName

工作的顯示名稱。 顯示名稱不是唯一的,而且可以包含最大長度為 1024 的任何 Unicode 字元。

displayName?: string

屬性值

string

environmentSettings

Task 的環境變數設定清單。

environmentSettings?: EnvironmentSetting[]

屬性值

exitConditions

Batch 服務在工作完成時應該如何回應。

exitConditions?: ExitConditions

屬性值

id

可唯一識別作業內工作的字串。 標識元可以包含英數位元的任何組合,包括連字元和底線,而且不能包含超過 64 個字元。 標識碼是區分大小寫和不區分大小寫的(也就是說,您可能在作業中沒有兩個標識符,只依大小寫而不同)。

id: string

屬性值

string

multiInstanceSettings

物件,指出Task是多重實例Task,並包含如何執行多重實例工作的相關信息。

multiInstanceSettings?: MultiInstanceSettings

屬性值

outputFiles

執行命令行之後,Batch 服務會從計算節點上傳的檔案清單。 針對多重實例工作,檔案只會從執行主要工作的計算節點上傳。

outputFiles?: OutputFile[]

屬性值

requiredSlots

工作執行所需的排程位置數目。 預設值為 1。 如果節點有足夠的可用排程位置,工作只能排程在計算節點上執行。 針對多重實例工作,這必須是1。

requiredSlots?: number

屬性值

number

resourceFiles

Batch 服務在執行命令行之前,會先下載至計算節點的檔案清單。 針對多重實例工作,資源檔只會下載到執行主要工作的計算節點。 資源檔案清單的大小上限。 超過大小上限時,要求將會失敗,而回應錯誤碼會是 RequestEntityTooLarge。 如果發生這種情況,ResourceFiles 的集合必須縮小大小。 這可以使用 .zip 檔案、應用程式套件或 Docker 容器來達成。

resourceFiles?: ResourceFile[]

屬性值

userIdentity

工作執行所在的使用者身分識別。 如果省略,工作會以工作唯一的非系統管理使用者身分執行。

userIdentity?: UserIdentity

屬性值