airflow.providers.google.cloud.operators.compute

此模組包含 Google Compute Engine 運算子。

模組內容

類別

ComputeEngineBaseOperator

Google Compute Engine 運算子繼承的抽象基礎運算子。

ComputeEngineInsertInstanceOperator

根據指定的參數在 Google Compute Engine 中建立執行個體。

ComputeEngineInsertInstanceFromTemplateOperator

根據現有範本中指定的參數在 Google Compute Engine 中建立執行個體。

ComputeEngineDeleteInstanceOperator

刪除 Google Compute Engine 中的執行個體。

ComputeEngineStartInstanceOperator

啟動 Google Compute Engine 中的執行個體。

ComputeEngineStopInstanceOperator

停止 Google Compute Engine 中的執行個體。

ComputeEngineSetMachineTypeOperator

將已停止執行個體的機器類型變更為請求中指定的機器類型。

ComputeEngineInsertInstanceTemplateOperator

使用指定的欄位建立執行個體範本。

ComputeEngineDeleteInstanceTemplateOperator

刪除 Google Compute Engine 中的執行個體範本。

ComputeEngineCopyInstanceTemplateOperator

複製執行個體範本,並套用指定的變更。

ComputeEngineInstanceGroupUpdateManagerTemplateOperator

修補執行個體群組管理員,將來源範本 URL 替換為目標 URL。

ComputeEngineInsertInstanceGroupManagerOperator

使用指定的內文建立執行個體群組管理員。

ComputeEngineDeleteInstanceGroupManagerOperator

永久且不可撤銷地刪除執行個體群組管理員。

屬性

SET_MACHINE_TYPE_VALIDATION_SPECIFICATION

GCE_INSTANCE_TEMPLATE_VALIDATION_PATCH_SPECIFICATION

GCE_INSTANCE_FIELDS_TO_SANITIZE

class airflow.providers.google.cloud.operators.compute.ComputeEngineBaseOperator(*, zone, resource_id=None, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1', impersonation_chain=None, **kwargs)[source]

基底: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

Google Compute Engine 運算子繼承的抽象基礎運算子。

execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

class airflow.providers.google.cloud.operators.compute.ComputeEngineInsertInstanceOperator(*, body, zone, resource_id=None, project_id=PROVIDE_PROJECT_ID, request_id=None, retry=None, timeout=None, metadata=(), gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基底: ComputeEngineBaseOperator

根據指定的參數在 Google Compute Engine 中建立執行個體。

參見

如需更多關於如何使用此運算子的資訊,請參閱指南: ComputeEngineInsertInstanceOperator

參數
  • body (dict) – 執行個體表示為物件。至少應包含 ‘name’、‘machine_type’、‘disks’ 和 ‘network_interfaces’ 欄位,但不包含 ‘zone’ 欄位,因為它將在 ‘zone’ 參數中指定。完整或部分 URL,可以表示為以下範例:1. “machine_type”: “projects/your-project-name/zones/your-zone/machineTypes/your-machine-type” 2. “disk_type”: “projects/your-project-name/zones/your-zone/diskTypes/your-disk-type” 3. “subnetwork”: “projects/your-project-name/regions/your-region/subnetworks/your-subnetwork”

  • zone (str) – Google Cloud 區域,執行個體存在於該區域

  • project_id (str) – Google Cloud 專案 ID,Compute Engine 執行個體存在於該專案 ID 中。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • resource_id (str | None) – 執行個體的名稱。如果執行個體的名稱未在 body[‘name’] 中指定,則名稱將取自 ‘resource_id’ 參數

  • request_id (str | None) – 您可能新增以實現完整冪等性的唯一 request_id (例如,當用戶端呼叫逾時時,使用相同的請求 ID 重複請求將不會再次建立新的執行個體範本)。它應採用 RFC 4122 中定義的 UUID 格式

  • gcp_conn_id (str) – 用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version (str) – 使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

  • retry (google.api_core.retry.Retry | None) – 用於重試請求的重試物件。如果指定 None,則不會重試請求。

  • timeout (float | None) – 等待請求完成的時長 (以秒為單位)。請注意,如果指定 retry,則逾時適用於每個個別嘗試。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供給方法的其他中繼資料。

template_fields: collections.abc.Sequence[str] = ('body', 'project_id', 'zone', 'request_id', 'gcp_conn_id', 'api_version',...[source]
check_body_fields()[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

class airflow.providers.google.cloud.operators.compute.ComputeEngineInsertInstanceFromTemplateOperator(*, source_instance_template, body, zone, resource_id=None, project_id=PROVIDE_PROJECT_ID, request_id=None, retry=None, timeout=None, metadata=(), gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基底: ComputeEngineBaseOperator

根據現有範本中指定的參數在 Google Compute Engine 中建立執行個體。

參見

如需更多關於如何使用此運算子的資訊,請參閱指南: ComputeEngineInsertInstanceFromTemplateOperator

參數
  • body (dict) – 執行個體表示為物件。對於此運算子,僅需 ‘name’ 參數即可建立新的執行個體,因為所有其他參數都將透過範本傳遞。

  • source_instance_template (str) – 將用作建立新執行個體基礎的現有執行個體範本。指定後,在建立新執行個體時,僅應在 ‘body’ 參數中提供新執行個體的名稱作為輸入引數。所有其他參數,例如 ‘machine_type’、‘disks’ 和 ‘network_interfaces’ 將按照在執行個體範本中指定的樣子傳遞給執行個體。完整或部分 URL,可以表示為以下範例:1. “https://www.googleapis.com/compute/v1/projects/your-project-name/global/instanceTemplates/temp” 2. “projects/your-project-name/global/instanceTemplates/temp” 3. “global/instanceTemplates/temp”

  • zone (str) – Google Cloud 區域,執行個體存在於該區域中。

  • project_id (str) – Google Cloud 專案 ID,Compute Engine 執行個體存在於該專案 ID 中。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • resource_id (str | None) – 執行個體的名稱。如果執行個體的名稱未在 body[‘name’] 中指定,則名稱將取自 ‘resource_id’ 參數

  • request_id (str | None) – 您可能新增以實現完整冪等性的唯一 request_id (例如,當用戶端呼叫逾時時,使用相同的請求 ID 重複請求將不會再次建立新的執行個體範本)。它應採用 RFC 4122 中定義的 UUID 格式

  • gcp_conn_id (str) – 用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version (str) – 使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

  • retry (google.api_core.retry.Retry | None) – 用於重試請求的重試物件。如果指定 None,則不會重試請求。

  • timeout (float | None) – 等待請求完成的時長 (以秒為單位)。請注意,如果指定 retry,則逾時適用於每個個別嘗試。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供給方法的其他中繼資料。

template_fields: collections.abc.Sequence[str] = ('body', 'source_instance_template', 'project_id', 'zone', 'request_id', 'gcp_conn_id',...[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

class airflow.providers.google.cloud.operators.compute.ComputeEngineDeleteInstanceOperator(*, resource_id, zone, request_id=None, project_id=PROVIDE_PROJECT_ID, retry=None, timeout=None, metadata=(), gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基底: ComputeEngineBaseOperator

刪除 Google Compute Engine 中的執行個體。

參見

如需更多關於如何使用此運算子的資訊,請參閱指南: ComputeEngineDeleteInstanceOperator

參數
  • project_id (str) – Google Cloud 專案 ID,Compute Engine 執行個體存在於該專案 ID 中。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • zone (str) – Google Cloud 區域,執行個體存在於該區域中。

  • resource_id (str) – 執行個體的名稱。

  • request_id (str | None) – 您可能新增以實現完整冪等性的唯一 request_id (例如,當用戶端呼叫逾時時,使用相同的請求 ID 重複請求將不會再次建立新的執行個體範本)。它應採用 RFC 4122 中定義的 UUID 格式

  • gcp_conn_id (str) – 用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version (str) – 使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

  • retry (google.api_core.retry.Retry | None) – 用於重試請求的重試物件。如果指定 None,則不會重試請求。

  • timeout (float | None) – 等待請求完成的時長 (以秒為單位)。請注意,如果指定 retry,則逾時適用於每個個別嘗試。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供給方法的其他中繼資料。

template_fields: collections.abc.Sequence[str] = ('zone', 'resource_id', 'request_id', 'project_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

class airflow.providers.google.cloud.operators.compute.ComputeEngineStartInstanceOperator(*, zone, resource_id=None, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1', impersonation_chain=None, **kwargs)[source]

基底: ComputeEngineBaseOperator

啟動 Google Compute Engine 中的執行個體。

參見

如需更多關於如何使用此運算子的資訊,請參閱指南: ComputeEngineStartInstanceOperator

參數
  • zone (str) – Google Cloud 區域,執行個體存在於該區域中。

  • resource_id (str | None) – Compute Engine 執行個體資源的名稱。

  • project_id (str) – 選填,Google Cloud 專案 ID,Compute Engine 執行個體存在於該專案 ID 中。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 選填,用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version (str) – 選填,使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 選填,要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'zone', 'resource_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

class airflow.providers.google.cloud.operators.compute.ComputeEngineStopInstanceOperator(*, zone, resource_id=None, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1', impersonation_chain=None, **kwargs)[source]

基底: ComputeEngineBaseOperator

停止 Google Compute Engine 中的執行個體。

參見

如需瞭解如何使用此運算子,請參閱指南:ComputeEngineStopInstanceOperator

參數
  • zone (str) – Google Cloud 區域,執行個體存在於該區域中。

  • resource_id (str | None) – Compute Engine 執行個體資源的名稱。

  • project_id (str) – 選填,Google Cloud 專案 ID,Compute Engine 執行個體存在於該專案 ID 中。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 選填,用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version (str) – 選填,使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 選填,要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'zone', 'resource_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

airflow.providers.google.cloud.operators.compute.SET_MACHINE_TYPE_VALIDATION_SPECIFICATION[source]
class airflow.providers.google.cloud.operators.compute.ComputeEngineSetMachineTypeOperator(*, zone, resource_id, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基底: ComputeEngineBaseOperator

將已停止執行個體的機器類型變更為請求中指定的機器類型。

參見

如需瞭解如何使用此運算子,請參閱指南:ComputeEngineSetMachineTypeOperator

參數
  • zone (str) – Google Cloud 區域,執行個體存在於該區域中。

  • resource_id (str) – Compute Engine 執行個體資源的名稱。

  • body (dict) – Compute Engine setMachineType API 所需的 Body,如 https://cloud.google.com/compute/docs/reference/rest/v1/instances/setMachineType#request-body 中所述

  • project_id (str) – 選填,Google Cloud 專案 ID,Compute Engine 執行個體存在於該專案 ID 中。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 選填,用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version (str) – 選填,使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • validate_body (bool) – 選用,若設為 False,則不會執行 Body 驗證。預設為 False。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 選填,要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'zone', 'resource_id', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

airflow.providers.google.cloud.operators.compute.GCE_INSTANCE_TEMPLATE_VALIDATION_PATCH_SPECIFICATION: list[dict[str, Any]][source]
airflow.providers.google.cloud.operators.compute.GCE_INSTANCE_FIELDS_TO_SANITIZE = ['kind', 'id', 'creationTimestamp', 'properties.disks.sha256', 'properties.disks.kind',...[source]
class airflow.providers.google.cloud.operators.compute.ComputeEngineInsertInstanceTemplateOperator(*, body, project_id=PROVIDE_PROJECT_ID, resource_id=None, request_id=None, retry=None, timeout=None, metadata=(), gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基底: ComputeEngineBaseOperator

使用指定的欄位建立執行個體範本。

參見

如需瞭解如何使用此運算子,請參閱指南:ComputeEngineInsertInstanceTemplateOperator

參數
  • body (dict) – 執行個體範本表示為物件。

  • project_id (str) – Google Cloud 專案 ID,Compute Engine 執行個體存在於該專案 ID 中。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • request_id (str | None) – 您可能新增以實現完整冪等性的唯一 request_id (例如,當用戶端呼叫逾時時,使用相同的請求 ID 重複請求將不會再次建立新的執行個體範本)。它應採用 RFC 4122 中定義的 UUID 格式

  • resource_id (str | None) – 執行個體範本的名稱。若未在 body['name'] 中指定執行個體範本的名稱,則名稱將取自 'resource_id' 參數

  • gcp_conn_id (str) – 用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version (str) – 使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

  • retry (google.api_core.retry.Retry | None) – 用於重試請求的重試物件。如果指定 None,則不會重試請求。

  • timeout (float | None) – 等待請求完成的時長 (以秒為單位)。請注意,如果指定 retry,則逾時適用於每個個別嘗試。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供給方法的其他中繼資料。

template_fields: collections.abc.Sequence[str] = ('body', 'project_id', 'request_id', 'gcp_conn_id', 'api_version', 'impersonation_chain', 'resource_id')[source]
check_body_fields()[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

class airflow.providers.google.cloud.operators.compute.ComputeEngineDeleteInstanceTemplateOperator(*, resource_id, request_id=None, project_id=PROVIDE_PROJECT_ID, retry=None, timeout=None, metadata=(), gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基底: ComputeEngineBaseOperator

刪除 Google Compute Engine 中的執行個體範本。

參見

如需瞭解如何使用此運算子,請參閱指南:ComputeEngineDeleteInstanceTemplateOperator

參數
  • resource_id (str) – 執行個體範本的名稱。

  • project_id (str) – Google Cloud 專案 ID,Compute Engine 執行個體存在於該專案 ID 中。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • request_id (str | None) – 您可能新增以實現完整冪等性的唯一 request_id (例如,當用戶端呼叫逾時時,使用相同的請求 ID 重複請求將不會再次建立新的執行個體範本)。它應採用 RFC 4122 中定義的 UUID 格式

  • gcp_conn_id (str) – 用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version (str) – 使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

  • retry (google.api_core.retry.Retry | None) – 用於重試請求的重試物件。如果指定 None,則不會重試請求。

  • timeout (float | None) – 等待請求完成的時長 (以秒為單位)。請注意,如果指定 retry,則逾時適用於每個個別嘗試。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供給方法的其他中繼資料。

template_fields: collections.abc.Sequence[str] = ('resource_id', 'request_id', 'project_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

class airflow.providers.google.cloud.operators.compute.ComputeEngineCopyInstanceTemplateOperator(*, resource_id, body_patch, project_id=PROVIDE_PROJECT_ID, request_id=None, gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基底: ComputeEngineBaseOperator

複製執行個體範本,並套用指定的變更。

參見

如需瞭解如何使用此運算子,請參閱指南:ComputeEngineCopyInstanceTemplateOperator

參數
  • resource_id (str) – 執行個體範本的名稱

  • body_patch (dict) – 遵循 rfc7386 PATCH 語意的 instanceTemplates 物件 body 的 Patch。body_patch 內容遵循 https://cloud.google.com/compute/docs/reference/rest/v1/instanceTemplates 名稱欄位為必填,因為我們需要重新命名範本,所有其他欄位皆為選填。務必遵循 PATCH 語意 - 陣列會完全取代,因此若您需要更新陣列,應提供整個目標陣列作為 patch 元素。

  • project_id (str) – 選填,Google Cloud 專案 ID,Compute Engine 執行個體存在於該專案 ID 中。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • request_id (str | None) – 選用,您可能會新增唯一 request_id 以達成完全冪等性 (例如,當用戶端呼叫逾時,使用相同 request id 重複請求將不會再次建立新的執行個體範本)。它應為 RFC 4122 中定義的 UUID 格式。

  • gcp_conn_id (str) – 選填,用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version (str) – 選填,使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • validate_body (bool) – 選用,若設為 False,則不會執行 Body 驗證。預設為 False。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 選填,要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'resource_id', 'request_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

class airflow.providers.google.cloud.operators.compute.ComputeEngineInstanceGroupUpdateManagerTemplateOperator(*, resource_id, zone, source_template, destination_template, project_id=PROVIDE_PROJECT_ID, update_policy=None, request_id=None, gcp_conn_id='google_cloud_default', api_version='beta', impersonation_chain=None, **kwargs)[source]

基底: ComputeEngineBaseOperator

修補執行個體群組管理員,將來源範本 URL 替換為目標 URL。

API V1 沒有執行個體群組管理員的更新/修補作業,因此您必須使用 Beta 版或更新的 API 版本。Beta 版為預設版本。

參見

如需瞭解如何使用此運算子,請參閱指南:ComputeEngineInstanceGroupUpdateManagerTemplateOperator

參數
  • resource_id (str) – 執行個體群組管理員的名稱

  • zone (str) – 執行個體群組管理員所在的 Google Cloud 區域。

  • source_template (str) – 要取代的範本 URL。

  • destination_template (str) – 目標範本的 URL。

  • project_id (str) – 選填,Google Cloud 專案 ID,Compute Engine 執行個體存在於該專案 ID 中。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • request_id (str | None) – 選用,您可能會新增唯一 request_id 以達成完全冪等性 (例如,當用戶端呼叫逾時,使用相同 request id 重複請求將不會再次建立新的執行個體範本)。它應為 RFC 4122 中定義的 UUID 格式。

  • gcp_conn_id (str) – 選填,用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version – 選用,使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 選填,要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'resource_id', 'zone', 'request_id', 'source_template', 'destination_template',...[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

class airflow.providers.google.cloud.operators.compute.ComputeEngineInsertInstanceGroupManagerOperator(*, body, zone, project_id=PROVIDE_PROJECT_ID, resource_id=None, request_id=None, gcp_conn_id='google_cloud_default', api_version='v1', retry=None, timeout=None, metadata=(), impersonation_chain=None, validate_body=True, **kwargs)[source]

基底: ComputeEngineBaseOperator

使用指定的內文建立執行個體群組管理員。

群組建立後,群組中的執行個體會使用指定的執行個體範本建立。

參見

如需瞭解如何使用此運算子,請參閱指南:ComputeEngineInsertInstanceGroupManagerOperator

參數
  • body (dict) – 執行個體群組管理員表示為物件。

  • project_id (str) – Compute Engine 執行個體群組管理員所在的 Google Cloud 專案 ID。若設為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • request_id (str | None) – 您可能會新增唯一 request_id 以達成完全冪等性 (例如,當用戶端呼叫逾時,使用相同 request id 重複請求將不會再次建立新的執行個體群組管理員) 它應為 RFC 4122 中定義的 UUID 格式

  • resource_id (str | None) – 執行個體群組管理員的名稱。若未在 body['name'] 中指定執行個體群組管理員的名稱,則名稱將取自 'resource_id' 參數。

  • gcp_conn_id (str) – 用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version – 使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

  • retry (google.api_core.retry.Retry | None) – 用於重試請求的重試物件。如果指定 None,則不會重試請求。

  • timeout (float | None) – 等待請求完成的時長 (以秒為單位)。請注意,如果指定 retry,則逾時適用於每個個別嘗試。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供給方法的其他中繼資料。

template_fields: collections.abc.Sequence[str] = ('project_id', 'body', 'zone', 'request_id', 'gcp_conn_id', 'api_version',...[source]
check_body_fields()[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

class airflow.providers.google.cloud.operators.compute.ComputeEngineDeleteInstanceGroupManagerOperator(*, resource_id, zone, project_id=PROVIDE_PROJECT_ID, request_id=None, gcp_conn_id='google_cloud_default', api_version='v1', retry=None, timeout=None, metadata=(), impersonation_chain=None, validate_body=True, **kwargs)[source]

基底: ComputeEngineBaseOperator

永久且不可撤銷地刪除執行個體群組管理員。

參見

如需更多關於如何使用此運算子的資訊,請參閱指南: ComputeEngineDeleteInstanceGroupManagerOperator

參數
  • resource_id (str) – 執行個體群組管理員的名稱。

  • project_id (str) – Compute Engine 執行個體群組管理員所在的 Google Cloud 專案 ID。若設為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。

  • request_id (str | None) – 您可能會新增唯一 request_id 以達成完全冪等性 (例如,當用戶端呼叫逾時,使用相同 request id 重複請求將不會再次建立新的執行個體群組管理員) 它應為 RFC 4122 中定義的 UUID 格式

  • gcp_conn_id (str) – 用於連線至 Google Cloud 的連線 ID。預設為 ‘google_cloud_default’。

  • api_version – 使用的 API 版本 (例如 v1 - 或 beta)。預設為 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 要使用短期憑證模擬的服務帳戶,或取得清單中最後一個帳戶的 access_token 所需的帳戶鏈結清單,該帳戶將在請求中被模擬。如果設定為字串,則帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須授予直接前一個身分「服務帳戶權杖建立者」IAM 角色,清單中的第一個帳戶將此角色授予原始帳戶 (已範本化)。

  • retry (google.api_core.retry.Retry | None) – 用於重試請求的重試物件。如果指定 None,則不會重試請求。

  • timeout (float | None) – 等待請求完成的時長 (以秒為單位)。請注意,如果指定 retry,則逾時適用於每個個別嘗試。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供給方法的其他中繼資料。

template_fields: collections.abc.Sequence[str] = ('project_id', 'resource_id', 'zone', 'request_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

此條目是否有幫助?