CloudTask 類別
Azure Batch工作。
批次會在節點上觸發復原作業時重試工作。 復原作業的範例包括 (,但不限於重新開機狀況不良的節點時) ,或因主機失敗而計算節點消失。 由於復原作業的重試與 無關,而且不會計入 maxTaskRetryCount。 即使 maxTaskRetryCount 為 0,也可能發生因復原作業而造成內部重試。 因此,所有工作都應該是等冪的。 這表示工作必須容許中斷並重新啟動,而不會造成任何損毀或重複的資料。 長時間執行工作的最佳做法是使用某種形式的檢查點檢查。
- 繼承
-
CloudTask
建構函式
CloudTask(*, id: str = None, display_name: str = None, url: str = None, e_tag: str = None, last_modified=None, creation_time=None, exit_conditions=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, command_line: str = None, container_settings=None, resource_files=None, output_files=None, environment_settings=None, affinity_info=None, constraints=None, required_slots: int = None, user_identity=None, execution_info=None, node_info=None, multi_instance_settings=None, stats=None, depends_on=None, application_package_references=None, authentication_token_settings=None, **kwargs)
參數
- url
- str
- e_tag
- str
這是不透明的字串。 您可以使用它來偵測工作是否在要求之間變更。 特別是,您可以在更新 Task 時傳遞 ETag,以指定只有當其他人同時沒有修改 Task 時,您的變更才會生效。
- last_modified
- datetime
- creation_time
- datetime
- state_transition_time
- datetime
任務先前的狀態。 如果 Task 處於其初始作用中狀態,則不會設定這個屬性。 可能的值包括:'active'、'preparing'、'running'、'completed'
- command_line
- str
針對多重實例工作,命令列會在主要工作和所有子工作完成協調命令列之後,以主要工作的形式執行。 命令列不會在殼層下執行,因此無法利用環境變數擴充等殼層功能。 如果您想要利用這類功能,您應該在命令列中叫用殼層,例如在 Windows 中使用 「cmd /c MyCommand」 或 Linux 中的 「/bin/sh -c MyCommand」。 如果命令列參考檔案路徑,它應該使用相對於工作工作目錄) 的相對路徑 (,或使用 Batch 提供的環境變數 (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables) 。
- container_settings
- TaskContainerSettings
工作執行所在容器的設定。 如果執行此工作的集區已設定 containerConfiguration,也必須設定此設定。 如果執行此工作的集區未設定 containerConfiguration,則不得設定此設定。 當指定此專案時,節點) 上Azure Batch目錄根目錄AZ_BATCH_NODE_ROOT_DIR (遞迴地對應到容器、所有 Task 環境變數都會對應到容器中,而且工作命令列會在容器中執行。 在AZ_BATCH_NODE_ROOT_DIR外部容器中產生的檔案可能不會反映到主機磁片,這表示 Batch 檔案 API 將無法存取這些檔案。
- resource_files
- list[ResourceFile]
對於多重實例工作,資源檔只會下載到執行主要工作的計算節點。 資源檔案清單的大小上限。 超過大小上限時,要求將會失敗,而回應錯誤碼將會是 RequestEntityTooLarge。 如果發生這種情況,ResourceFiles 的集合必須縮小大小。 這可以使用 .zip 檔案、應用程式套件或 Docker 容器來達成。
- environment_settings
- list[EnvironmentSetting]
- application_package_references
- list[ApplicationPackageReference]
應用程式套件會下載並部署到共用目錄,而不是工作工作目錄。 因此,如果參考的套件已經在節點上,而且是最新的,則不會重新下載;會使用計算節點上的現有複本。 如果無法安裝參考的套件,例如因為套件已刪除,或因為下載失敗,所以工作會失敗。
- authentication_token_settings
- AuthenticationTokenSettings
工作可用來執行 Batch 服務作業的驗證權杖設定。 如果已設定這個屬性,Batch 服務會提供一個驗證權杖,可用來驗證 Batch 服務作業,而不需要帳戶存取金鑰。 權杖是透過AZ_BATCH_AUTHENTICATION_TOKEN環境變數提供。 工作可以使用權杖執行的作業取決於設定。 例如,工作可以要求 [作業] 許可權,以便將其他工作新增至作業,或檢查 [作業] 或 [作業] 下其他工作的狀態。
方法
as_dict |
使用 json.dump 傳回可以是 JSONify 的聽寫。 進階用法可以選擇性地使用回呼作為參數: 索引鍵是 Python 中使用的屬性名稱。 Attr_desc是中繼資料的聽寫。 目前包含具有 msrest 類型的 'type',以及具有 RestAPI 編碼金鑰的 'key'。 Value 是這個 物件中的目前值。 傳回的字串將用來序列化索引鍵。 如果傳回類型是清單,則會將此視為階層式結果聽寫。 請參閱此檔案中的三個範例:
如果您想要 XML 序列化,您可以傳遞 kwargs is_xml=True。 |
deserialize |
使用 RestAPI 語法剖析 str 並傳回模型。 |
enable_additional_properties_sending | |
from_dict |
使用指定的索引鍵擷取器剖析聽寫會傳回模型。 根據預設,請考慮金鑰擷取器 (rest_key_case_insensitive_extractor、attribute_key_case_insensitive_extractor和last_rest_key_case_insensitive_extractor) |
is_xml_model | |
serialize |
傳回會從此模型傳送至 Azure 的 JSON。 這是as_dict (full_restapi_key_transformer的別名 ,keep_readonly=False) 。 如果您想要 XML 序列化,您可以傳遞 kwargs is_xml=True。 |
validate |
以遞迴方式驗證此模型,並傳回 ValidationError 的清單。 |
as_dict
使用 json.dump 傳回可以是 JSONify 的聽寫。
進階用法可以選擇性地使用回呼作為參數:
索引鍵是 Python 中使用的屬性名稱。 Attr_desc是中繼資料的聽寫。 目前包含具有 msrest 類型的 'type',以及具有 RestAPI 編碼金鑰的 'key'。 Value 是這個 物件中的目前值。
傳回的字串將用來序列化索引鍵。 如果傳回類型是清單,則會將此視為階層式結果聽寫。
請參閱此檔案中的三個範例:
attribute_transformer
full_restapi_key_transformer
last_restapi_key_transformer
如果您想要 XML 序列化,您可以傳遞 kwargs is_xml=True。
as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)
參數
- key_transformer
- <xref:function>
按鍵轉換程式函式。
- keep_readonly
傳回
聽寫 JSON 相容物件
傳回類型
deserialize
使用 RestAPI 語法剖析 str 並傳回模型。
deserialize(data, content_type=None)
參數
傳回
此模型的實例
例外狀況
enable_additional_properties_sending
enable_additional_properties_sending()
from_dict
使用指定的索引鍵擷取器剖析聽寫會傳回模型。
根據預設,請考慮金鑰擷取器 (rest_key_case_insensitive_extractor、attribute_key_case_insensitive_extractor和last_rest_key_case_insensitive_extractor)
from_dict(data, key_extractors=None, content_type=None)
參數
- key_extractors
傳回
此模型的實例
例外狀況
is_xml_model
is_xml_model()
serialize
傳回會從此模型傳送至 Azure 的 JSON。
這是as_dict (full_restapi_key_transformer的別名 ,keep_readonly=False) 。
如果您想要 XML 序列化,您可以傳遞 kwargs is_xml=True。
serialize(keep_readonly=False, **kwargs)
參數
傳回
聽寫 JSON 相容物件