airflow.providers.google.cloud.hooks.tasks¶
此模块包含一个 CloudTasksHook,可用于连接到 Google Cloud Tasks 服务。
类¶
Google Cloud Tasks API 的 Hook。 |
模块内容¶
- class airflow.providers.google.cloud.hooks.tasks.CloudTasksHook(gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]¶
Bases:
airflow.providers.google.common.hooks.base_google.GoogleBaseHook
Google Cloud Tasks API 的 Hook。
Cloud Tasks 允许开发者管理其应用中后台工作的执行。
Hook 中所有使用 project_id 的方法都必须使用关键字参数调用,而不是位置参数。
- 参数:
gcp_conn_id (str) – 获取连接信息时使用的连接 ID。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于使用短期凭据进行模拟,或者通过链式列表指定获取列表中最后一个账号的 access_token 所需的账号,然后用该 token 进行请求模拟。如果设置为字符串,则该账号必须授予发起账号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予 Service Account Token Creator IAM 角色给直接前一个身份,列表中第一个账号将此角色授予发起账号。
- get_conn()[source]¶
提供一个用于与 Google Cloud Tasks API 交互的客户端。
- 返回:
Google Cloud Tasks API 客户端
- 返回类型:
google.cloud.tasks_v2.CloudTasksClient
- create_queue(location, task_queue, project_id=PROVIDE_PROJECT_ID, queue_name=None, retry=DEFAULT, timeout=None, metadata=())[source]¶
在 Cloud Tasks 中创建一个队列。
- 参数:
location (str) – 将创建队列的区域名称。
task_queue (dict | google.cloud.tasks_v2.types.Queue) – 要创建的任务队列。队列名称不能与现有队列相同。如果提供字典,则其形式必须与 protobuf 消息 Queue 相同。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
queue_name (str | None) – (可选) 队列名称。如果提供,将用于构建完整的队列路径。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- update_queue(task_queue, project_id=PROVIDE_PROJECT_ID, location=None, queue_name=None, update_mask=None, retry=DEFAULT, timeout=None, metadata=())[source]¶
在 Cloud Tasks 中更新一个队列。
- 参数:
task_queue (google.cloud.tasks_v2.types.Queue) – 要更新的任务队列。如果队列不存在,此方法会创建队列;如果队列存在,则更新队列。必须指定队列名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
location (str | None) – (可选) 将更新队列的区域名称。如果提供,将用于构建完整的队列路径。
queue_name (str | None) – (可选) 队列名称。如果提供,将用于构建完整的队列路径。
update_mask (google.protobuf.field_mask_pb2.FieldMask | None) – 用于指定更新队列哪些字段的掩码。如果为空,则更新所有字段。如果提供字典,则其形式必须与 protobuf 消息相同。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- get_queue(location, queue_name, project_id=PROVIDE_PROJECT_ID, retry=DEFAULT, timeout=None, metadata=())[source]¶
从 Cloud Tasks 获取一个队列。
- 参数:
location (str) – 创建队列的区域名称。
queue_name (str) – 队列名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- list_queues(location, project_id=PROVIDE_PROJECT_ID, results_filter=None, page_size=None, retry=DEFAULT, timeout=None, metadata=())[source]¶
从 Cloud Tasks 列出队列。
- 参数:
location (str) – 创建队列的区域名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
results_filter (str | None) – (可选) 用于指定队列子集的过滤器。
page_size (int | None) – (可选) 底层 API 响应中包含的最大资源数量。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- delete_queue(location, queue_name, project_id=PROVIDE_PROJECT_ID, retry=DEFAULT, timeout=None, metadata=())[source]¶
从 Cloud Tasks 删除一个队列,即使其中包含任务。
- 参数:
location (str) – 将删除队列的区域名称。
queue_name (str) – 队列名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- purge_queue(location, queue_name, project_id=PROVIDE_PROJECT_ID, retry=DEFAULT, timeout=None, metadata=())[source]¶
通过从 Cloud Tasks 删除其所有任务来清除队列。
- 参数:
location (str) – 将清除队列的区域名称。
queue_name (str) – 队列名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- pause_queue(location, queue_name, project_id=PROVIDE_PROJECT_ID, retry=DEFAULT, timeout=None, metadata=())[source]¶
在 Cloud Tasks 中暂停一个队列。
- 参数:
location (str) – 将暂停队列的区域名称。
queue_name (str) – 队列名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- resume_queue(location, queue_name, project_id=PROVIDE_PROJECT_ID, retry=DEFAULT, timeout=None, metadata=())[source]¶
在 Cloud Tasks 中恢复一个队列。
- 参数:
location (str) – 将恢复队列的区域名称。
queue_name (str) – 队列名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- create_task(location, queue_name, task, project_id=PROVIDE_PROJECT_ID, task_name=None, response_view=None, retry=DEFAULT, timeout=None, metadata=())[source]¶
在 Cloud Tasks 中创建一个任务。
- 参数:
location (str) – 将创建任务的区域名称。
queue_name (str) – 队列名称。
task (dict | google.cloud.tasks_v2.types.Task) – 要添加的任务。如果提供字典,则其形式必须与 protobuf 消息 Task 相同。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
task_name (str | None) – (可选) 任务名称。如果提供,将用于构建完整的任务路径。
response_view (google.cloud.tasks_v2.types.Task.View | None) – (可选) 此字段指定将返回任务的哪个子集。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- get_task(location, queue_name, task_name, project_id=PROVIDE_PROJECT_ID, response_view=None, retry=DEFAULT, timeout=None, metadata=())[source]¶
从 Cloud Tasks 获取一个任务。
- 参数:
location (str) – 创建任务的区域名称。
queue_name (str) – 队列名称。
task_name (str) – 任务名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
response_view (google.cloud.tasks_v2.types.Task.View | None) – (可选) 此字段指定将返回任务的哪个子集。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- list_tasks(location, queue_name, project_id, response_view=None, page_size=None, retry=DEFAULT, timeout=None, metadata=())[source]¶
列出 Cloud Tasks 中的任务。
- 参数:
location (str) – 创建任务的区域名称。
queue_name (str) – 队列名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
response_view (google.cloud.tasks_v2.types.Task.View | None) – (可选) 此字段指定将返回任务的哪个子集。
page_size (int | None) – (可选) 底层 API 响应中包含的最大资源数量。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- delete_task(location, queue_name, task_name, project_id, retry=DEFAULT, timeout=None, metadata=())[source]¶
从 Cloud Tasks 删除一个任务。
- 参数:
location (str) – 将删除任务的区域名称。
queue_name (str) – 队列名称。
task_name (str) – 任务名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。
- run_task(location, queue_name, task_name, project_id, response_view=None, retry=DEFAULT, timeout=None, metadata=())[source]¶
强制运行 Cloud Tasks 中的一个任务。
- 参数:
location (str) – 创建任务的区域名称。
queue_name (str) – 队列名称。
task_name (str) – 任务名称。
project_id (str) – (可选) 拥有 Cloud Tasks 的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
response_view (google.cloud.tasks_v2.types.Task.View | None) – (可选) 此字段指定将返回任务的哪个子集。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – (可选) 用于重试请求的重试对象。如果指定 None,则不会重试请求。
timeout (float | None) – (可选) 等待请求完成的时间(秒)。请注意,如果指定了 retry,则超时应用于每次尝试。
metadata (collections.abc.Sequence[tuple[str, str]]) – (可选) 提供给方法的附加元数据。