airflow.providers.google.cloud.operators.compute

本模块包含 Google Compute Engine operator。

属性

SET_MACHINE_TYPE_VALIDATION_SPECIFICATION

GCE_INSTANCE_TEMPLATE_VALIDATION_PATCH_SPECIFICATION

GCE_INSTANCE_FIELDS_TO_SANITIZE

ComputeEngineBaseOperator

供 Google Compute Engine operator 继承的抽象基类。

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

使用指定的 body 创建一个实例组管理器。

ComputeEngineDeleteInstanceGroupManagerOperator

永久且不可撤销地删除一个实例组管理器。

模块内容

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)[源码]

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

供 Google Compute Engine operator 继承的抽象基类。

project_id = None[源码]
zone[源码]
resource_id = None[源码]
gcp_conn_id = 'google_cloud_default'[源码]
api_version = 'v1'[源码]
impersonation_chain = None[源码]
execute(context)[源码]

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 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)[源码]

基类: ComputeEngineBaseOperator

在 Google Compute Engine 中根据指定参数创建一个实例。

另请参阅

有关如何使用此 operator 的更多信息,请参阅指南: 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) – Compute Engine 实例所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • resource_id (str | None) – 实例的名称。如果在 body[‘name’] 中未指定实例的名称,则将从“resource_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。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链,该帐号将在请求中被模拟。如果设置为字符串,则该帐号必须授予发起帐号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予直接前一个身份 Service Account Token Creator 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',...[源码]
body[源码]
zone[源码]
request_id = None[源码]
retry = None[源码]
timeout = None[源码]
metadata = ()[源码]
check_body_fields()[源码]
execute(context)[源码]

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 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)[源码]

基类: ComputeEngineBaseOperator

在 Google Compute Engine 中根据现有模板的指定参数创建一个实例。

另请参阅

有关如何使用此 operator 的更多信息,请参阅指南: ComputeEngineInsertInstanceFromTemplateOperator

参数:
  • body (dict) – 实例的对象表示。对于此 Operator,创建新实例时仅需要“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) – Compute Engine 实例所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • resource_id (str | None) – 实例的名称。如果在 body[‘name’] 中未指定实例的名称,则将从“resource_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。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链,该帐号将在请求中被模拟。如果设置为字符串,则该帐号必须授予发起帐号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予直接前一个身份 Service Account Token Creator 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_instance_template[源码]
body[源码]
zone[源码]
request_id = None[源码]
retry = None[源码]
timeout = None[源码]
metadata = ()[源码]
execute(context)[源码]

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 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)[源码]

基类: ComputeEngineBaseOperator

删除 Google Compute Engine 中的一个实例。

另请参阅

有关如何使用此 operator 的更多信息,请参阅指南: ComputeEngineDeleteInstanceOperator

参数:
  • project_id (str) – Compute Engine 实例所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • zone (str) – 实例所在的 Google Cloud 区域。

  • resource_id (str) – 实例的名称。

  • 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。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链,该帐号将在请求中被模拟。如果设置为字符串,则该帐号必须授予发起帐号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予直接前一个身份 Service Account Token Creator 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')[源码]
zone[源码]
request_id = None[源码]
resource_id[源码]
retry = None[源码]
timeout = None[源码]
metadata = ()[源码]
execute(context)[源码]

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 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)[源码]

基类: ComputeEngineBaseOperator

启动 Google Compute Engine 中的一个实例。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南: ComputeEngineStartInstanceOperator

参数:
  • zone (str) – 实例所在的 Google Cloud 区域。

  • resource_id (str | None) – Compute Engine 实例资源的名称。

  • project_id (str) – 可选的,Compute Engine 实例所在的 Google Cloud 项目 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 所需的链式账号列表。如果设置为字符串,则该账号必须授予发起账号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予其直接前一个身份 Service Account Token Creator IAM 角色,其中列表中的第一个账号将此角色授予发起账号(模板化)。

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

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 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)[源码]

基类: ComputeEngineBaseOperator

停止 Google Compute Engine 中的一个实例。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南: ComputeEngineStopInstanceOperator

参数:
  • zone (str) – 实例所在的 Google Cloud 区域。

  • resource_id (str | None) – Compute Engine 实例资源的名称。

  • project_id (str) – 可选的,Compute Engine 实例所在的 Google Cloud 项目 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 所需的链式账号列表。如果设置为字符串,则该账号必须授予发起账号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予其直接前一个身份 Service Account Token Creator IAM 角色,其中列表中的第一个账号将此角色授予发起账号(模板化)。

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

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 get_template_context。

airflow.providers.google.cloud.operators.compute.SET_MACHINE_TYPE_VALIDATION_SPECIFICATION[源码]
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)[源码]

基类: ComputeEngineBaseOperator

将已停止实例的机器类型更改为请求中指定的机器类型。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南: ComputeEngineSetMachineTypeOperator

参数:
  • zone (str) – 实例所在的 Google Cloud 区域。

  • resource_id (str) – Compute Engine 实例资源的名称。

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

  • project_id (str) – 可选的,Compute Engine 实例所在的 Google Cloud 项目 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,则不执行请求正文验证。默认为 False。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或用于获取列表中最后一个账号(将在请求中被模拟)的 access_token 所需的链式账号列表。如果设置为字符串,则该账号必须授予发起账号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予其直接前一个身份 Service Account Token Creator IAM 角色,其中列表中的第一个账号将此角色授予发起账号(模板化)。

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

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 get_template_context。

airflow.providers.google.cloud.operators.compute.GCE_INSTANCE_TEMPLATE_VALIDATION_PATCH_SPECIFICATION: list[dict[str, Any]][源码]
airflow.providers.google.cloud.operators.compute.GCE_INSTANCE_FIELDS_TO_SANITIZE = ['kind', 'id', 'creationTimestamp', 'properties.disks.sha256', 'properties.disks.kind',...[源码]
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)[源码]

基类: ComputeEngineBaseOperator

使用指定字段创建一个实例模板。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南: ComputeEngineInsertInstanceTemplateOperator

参数:
  • 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 (str) – 使用的 API 版本(例如 v1 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链,该帐号将在请求中被模拟。如果设置为字符串,则该帐号必须授予发起帐号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予直接前一个身份 Service Account Token Creator 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')[源码]
body[源码]
request_id = None[源码]
retry = None[源码]
timeout = None[源码]
metadata = ()[源码]
check_body_fields()[源码]
execute(context)[源码]

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 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)[源码]

基类: ComputeEngineBaseOperator

删除 Google Compute Engine 中的一个实例模板。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南: ComputeEngineDeleteInstanceTemplateOperator

参数:
  • 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 (str) – 使用的 API 版本(例如 v1 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链,该帐号将在请求中被模拟。如果设置为字符串,则该帐号必须授予发起帐号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予直接前一个身份 Service Account Token Creator 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')[源码]
request_id = None[源码]
resource_id[源码]
retry = None[源码]
timeout = None[源码]
metadata = ()[源码]
execute(context)[源码]

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 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)[源码]

基类: ComputeEngineBaseOperator

复制实例模板,应用指定的更改。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南: ComputeEngineCopyInstanceTemplateOperator

参数:
  • resource_id (str) – 实例模板的名称

  • body_patch (dict) – 遵循 rfc7386 PATCH 语义对 instanceTemplates 对象请求正文的修补。body_patch 内容遵循 https://cloud.google.com/compute/docs/reference/rest/v1/instanceTemplates Name 字段是必需的,因为我们需要重命名模板,所有其他字段都是可选的。遵循 PATCH 语义很重要 - 数组会被完全替换,因此如果需要更新数组,则应将整个目标数组作为补丁元素提供。

  • project_id (str) – 可选的,Compute Engine 实例所在的 Google Cloud 项目 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。

  • validate_body (bool) – 可选的,如果设置为 False,则不执行请求正文验证。默认为 False。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或用于获取列表中最后一个账号(将在请求中被模拟)的 access_token 所需的链式账号列表。如果设置为字符串,则该账号必须授予发起账号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予其直接前一个身份 Service Account Token Creator IAM 角色,其中列表中的第一个账号将此角色授予发起账号(模板化)。

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

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 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 没有 Instance Group Manager 的更新/补丁操作,因此必须使用 beta 或更新的 API 版本。Beta 是默认版本。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南:ComputeEngineInstanceGroupUpdateManagerTemplateOperator

参数:
  • resource_id (str) – Instance Group Manager 的名称

  • zone (str) – Instance Group Manager 所在的 Google Cloud 可用区。

  • source_template (str) – 要替换的模板的 URL。

  • destination_template (str) – 目标模板的 URL。

  • project_id (str) – 可选的,Compute Engine 实例所在的 Google Cloud 项目 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 – 可选,使用的 API 版本(例如 v1 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或用于获取列表中最后一个账号(将在请求中被模拟)的 access_token 所需的链式账号列表。如果设置为字符串,则该账号必须授予发起账号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予其直接前一个身份 Service Account Token Creator IAM 角色,其中列表中的第一个账号将此角色授予发起账号(模板化)。

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

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 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

使用指定的 body 创建一个实例组管理器。

创建组后,组中的实例将使用指定的实例模板创建。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南:ComputeEngineInsertInstanceGroupManagerOperator

参数:
  • body (dict) – 表示 Instance Group Managers 的对象。

  • project_id (str) – Compute Engine Instance Group Managers 所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • request_id (str | None) – 您可以添加的唯一 request_id,用于实现完全幂等性(例如,当客户端调用超时时,使用相同的 request_id 重复请求将不会再次创建新的 Instance Group Managers)。它应采用 RFC 4122 中定义的 UUID 格式

  • resource_id (str | None) – Instance Group Managers 的名称。如果 body['name'] 中未指定 Instance Group Managers 的名称,则将从 '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 所需的帐号链,该帐号将在请求中被模拟。如果设置为字符串,则该帐号必须授予发起帐号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予直接前一个身份 Service Account Token Creator 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]
body[source]
request_id = None[source]
retry = None[source]
timeout = None[source]
metadata = ()[source]
check_body_fields()[source]
execute(context)[source]

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 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

永久且不可撤销地删除一个实例组管理器。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南:ComputeEngineDeleteInstanceGroupManagerOperator

参数:
  • resource_id (str) – Instance Group Managers 的名称。

  • project_id (str) – Compute Engine Instance Group Managers 所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • request_id (str | None) – 您可以添加的唯一 request_id,用于实现完全幂等性(例如,当客户端调用超时时,使用相同的 request_id 重复请求将不会再次创建新的 Instance Group Managers)。它应采用 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 所需的帐号链,该帐号将在请求中被模拟。如果设置为字符串,则该帐号必须授予发起帐号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予直接前一个身份 Service Account Token Creator 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]
zone[source]
request_id = None[source]
resource_id[source]
retry = None[source]
timeout = None[source]
metadata = ()[source]
execute(context)[source]

创建 operator 时派生。

context 是与渲染 jinja 模板时使用的相同的字典。

有关更多 context,请参阅 get_template_context。

此条目有帮助吗?