BatchJobReleaseTask interface

在作業執行所在的任何計算節點上執行作業完成時執行的作業發行工作。 作業發行工作會在作業結束時執行,因為下列其中一項原因:使用者呼叫終止作業 API,或在作業仍在使用中時刪除作業 API、達到作業的時鐘時間限制上限,且作業仍在使用中,或作業的作業管理員工作完成,且作業設定為在作業管理員完成時終止。 作業發行工作會在作業的工作執行所在的每個節點上執行,以及作業準備工作執行並完成。 如果您在執行作業準備工作之後重新設定節點的映像,而作業會在該節點上執行的任何進一步工作結束(因此作業準備工作不會重新執行),則作業發行工作不會在該計算節點上執行。 如果節點在作業發行工作仍在執行時重新啟動,當計算節點啟動時,作業發行工作會再次執行。 在完成所有作業發行工作之前,作業不會標示為完成。 作業發行工作會在背景執行。 它不會佔用排程位置;也就是說,它不會計入集區上指定的 taskSlotsPerNode 限制。

屬性

commandLine

工作釋放任務的命令列。 命令行不會在殼層下執行,因此無法利用殼層功能,例如環境變數擴充。 如果你想利用這些功能,應該在命令列中呼叫 shell,例如在 Windows 中使用「cmd /c MyCommand」,或在 Linux 中使用「/bin/sh -c MyCommand」。 如果命令行參考檔案路徑,它應該使用相對路徑(相對於Task工作目錄),或使用 Batch 提供的環境變數 (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)。

containerSettings

工作釋放任務執行容器的設定。 當指定此條件時,所有位於AZ_BATCH_NODE_ROOT_DIR(節點上Azure Batch目錄根節點)下方的目錄會遞迴地映射到容器中,所有任務環境變數也映射到容器中,任務命令列則在容器中執行。 容器中產生的檔案可能不會被反映到主機磁碟AZ_BATCH_NODE_ROOT_DIR,導致批次檔案 API 無法存取這些檔案。

environmentSettings

工作釋放任務的環境變數設定清單。

id

一個字串,唯一識別工作中的工作釋放任務。 ID 可包含任意組合的字母數字,包括連字號和底線,且最多可包含 64 個字元。 如果你沒有指定這個屬性,批次服務會預設值為「jobrelease」。 工作中不能有其他任務與工作釋放任務相同的 ID。 如果你嘗試提交相同 ID 的任務,批次服務會以錯誤代碼 TaskIdSameAsJobReleaseTask 拒絕該請求;如果你直接呼叫 REST API,HTTP 狀態碼是 409(衝突)。

maxWallClockTime

工作釋放任務在特定計算節點上可執行的最大經過時間,從任務開始的時間開始計算。 若任務未在時間限制內完成,批次服務會終止該任務。 預設值為15分鐘。 你不能指定逾15分鐘的暫停時間。 若有,批次服務會錯誤拒絕;如果你直接呼叫 REST API,HTTP 狀態碼是 400(錯誤請求)。 時間長度以ISO 8601格式規定。

resourceFiles

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

retentionTime

在計算節點上保留工作釋放任務目錄的最短時間。 在此之後,批次服務可能會刪除任務目錄及其所有內容。 預設為 7 天,也就是說,除非移除運算節點或刪除工作,否則任務目錄會保留 7 天。 時間長度以ISO 8601格式規定。

userIdentity

工作釋放任務執行的使用者身份。 若省略,該任務將以非管理員使用者身份執行,且是任務獨一無二的使用者。

屬性詳細資料

commandLine

工作釋放任務的命令列。 命令行不會在殼層下執行,因此無法利用殼層功能,例如環境變數擴充。 如果你想利用這些功能,應該在命令列中呼叫 shell,例如在 Windows 中使用「cmd /c MyCommand」,或在 Linux 中使用「/bin/sh -c MyCommand」。 如果命令行參考檔案路徑,它應該使用相對路徑(相對於Task工作目錄),或使用 Batch 提供的環境變數 (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)。

commandLine: string

屬性值

string

containerSettings

工作釋放任務執行容器的設定。 當指定此條件時,所有位於AZ_BATCH_NODE_ROOT_DIR(節點上Azure Batch目錄根節點)下方的目錄會遞迴地映射到容器中,所有任務環境變數也映射到容器中,任務命令列則在容器中執行。 容器中產生的檔案可能不會被反映到主機磁碟AZ_BATCH_NODE_ROOT_DIR,導致批次檔案 API 無法存取這些檔案。

containerSettings?: BatchTaskContainerSettings

屬性值

environmentSettings

工作釋放任務的環境變數設定清單。

environmentSettings?: EnvironmentSetting[]

屬性值

id

一個字串,唯一識別工作中的工作釋放任務。 ID 可包含任意組合的字母數字,包括連字號和底線,且最多可包含 64 個字元。 如果你沒有指定這個屬性,批次服務會預設值為「jobrelease」。 工作中不能有其他任務與工作釋放任務相同的 ID。 如果你嘗試提交相同 ID 的任務,批次服務會以錯誤代碼 TaskIdSameAsJobReleaseTask 拒絕該請求;如果你直接呼叫 REST API,HTTP 狀態碼是 409(衝突)。

id?: string

屬性值

string

maxWallClockTime

工作釋放任務在特定計算節點上可執行的最大經過時間,從任務開始的時間開始計算。 若任務未在時間限制內完成,批次服務會終止該任務。 預設值為15分鐘。 你不能指定逾15分鐘的暫停時間。 若有,批次服務會錯誤拒絕;如果你直接呼叫 REST API,HTTP 狀態碼是 400(錯誤請求)。 時間長度以ISO 8601格式規定。

maxWallClockTime?: string

屬性值

string

resourceFiles

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

resourceFiles?: ResourceFile[]

屬性值

retentionTime

在計算節點上保留工作釋放任務目錄的最短時間。 在此之後,批次服務可能會刪除任務目錄及其所有內容。 預設為 7 天,也就是說,除非移除運算節點或刪除工作,否則任務目錄會保留 7 天。 時間長度以ISO 8601格式規定。

retentionTime?: string

屬性值

string

userIdentity

工作釋放任務執行的使用者身份。 若省略,該任務將以非管理員使用者身份執行,且是任務獨一無二的使用者。

userIdentity?: UserIdentity

屬性值