google.cloud.gcp_cloudscheduler_job_info 模块 – 收集 GCP 作业信息

注意

此模块是 google.cloud 集合 (版本 1.4.1) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install google.cloud。您需要其他要求才能使用此模块,有关详细信息,请参见 要求

要在 playbook 中使用它,请指定:google.cloud.gcp_cloudscheduler_job_info

注意

由于违反了 Ansible 包含要求,google.cloud 集合将在 Ansible 12 中删除。该集合存在 未解决的健全性测试失败。有关更多信息,请参见 讨论主题

摘要

  • 收集 GCP 作业信息

要求

执行此模块的主机需要以下要求。

  • python >= 2.6

  • requests >= 2.18.4

  • google-auth >= 1.3.0

参数

参数

注释

access_token

字符串

如果凭据类型为 accesstoken,则为 OAuth2 访问令牌。

auth_kind

字符串 / 必需

使用的凭据类型。

选项

  • "application"

  • "machineaccount"

  • "serviceaccount"

  • "accesstoken"

env_type

字符串

指定您在哪个 Ansible 环境中运行此模块。

除非您知道自己在做什么,否则不应设置此项。

这只会更改任何 API 请求的用户代理字符串。

project

字符串

要使用的 Google Cloud Platform 项目。

region

字符串 / 必需

调度程序作业所在的区域。

scopes

列表 / 元素=字符串

要使用的作用域数组

service_account_contents

jsonarg

服务帐户 JSON 文件的内容,可以是字典或表示它的 JSON 字符串。

service_account_email

字符串

如果选择了 machineaccount 并且用户不希望使用默认电子邮件,则为可选的服务帐户电子邮件地址。

service_account_file

路径

如果选择 serviceaccount 作为类型,则为服务帐户 JSON 文件的路径。

备注

注意

  • 对于身份验证,您可以使用 GCP_SERVICE_ACCOUNT_FILE 环境变量设置 service_account_file。

  • 对于身份验证,您可以使用 GCP_SERVICE_ACCOUNT_CONTENTS 环境变量设置 service_account_contents。

  • 对于身份验证,您可以使用 GCP_SERVICE_ACCOUNT_EMAIL 环境变量设置 service_account_email。

  • 对于身份验证,您可以使用 GCP_ACCESS_TOKEN 环境变量设置 access_token。

  • 对于身份验证,您可以使用 GCP_AUTH_KIND 环境变量设置 auth_kind。

  • 对于身份验证,您可以使用 GCP_SCOPES 环境变量设置 scopes。

  • 只有在未设置 playbook 值的情况下才会使用环境变量值。

  • service_account_emailservice_account_file 选项是互斥的。

示例

- name: get info on a job
  gcp_cloudscheduler_job_info:
    region: us-central1
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"

返回值

常用的返回值已在 此处 记录,以下是此模块特有的字段

描述

resources

复杂类型

资源列表

返回:始终

appEngineHttpTarget

复杂类型

App Engine HTTP 目标。

如果作业提供 App Engine HTTP 目标,则 cron 将向服务实例发送请求。

返回:成功

appEngineRouting

复杂类型

作业的 App Engine 路由设置。

返回:成功

instance

字符串

App 实例。

默认情况下,作业将发送到在尝试作业时可用的实例。

返回:成功

service

字符串

App 服务。

默认情况下,作业将发送到在尝试作业时为默认服务的服务。

返回:成功

version

字符串

App 版本。

默认情况下,作业将发送到在尝试作业时为默认版本的版本。

返回:成功

body

字符串

HTTP 请求正文。只有当 HTTP 方法为 POST 或 PUT 时才允许请求正文。在与 HttpMethod 不兼容的作业上设置正文将导致无效参数错误。

Base64 编码的字符串。

返回:成功

headers

字典

HTTP 请求头。

此映射包含标头字段名称和值。创建作业时可以设置标头。

返回:成功

httpMethod

字符串

要用于请求的 HTTP 方法。

返回:成功

relativeUri

字符串

相对 URI。

返回:成功

attemptDeadline

字符串

作业尝试的截止期限。如果请求处理程序在此截止期限前未响应,则请求将被取消,并且尝试将标记为 DEADLINE_EXCEEDED 失败。失败的尝试可以在执行日志中查看。Cloud Scheduler 将根据 RetryConfig 重试作业。

此截止期限允许的持续时间为:* 对于 HTTP 目标,介于 15 秒到 30 分钟之间。

* 对于 App Engine HTTP 目标,介于 15 秒到 24 小时之间。

* **注意**: 对于 PubSub 目标,此字段将被忽略 - 设置它会引入无法解析的差异。

一个以秒为单位的持续时间,最多包含九位小数,以“s”结尾。例如:“3.5s”。

返回:成功

描述

字符串

作业的人类可读描述。此字符串不得超过 500 个字符。

返回:成功

httpTarget

复杂类型

HTTP 目标。

如果作业提供 http_target,则 cron 将向目标 URL 发送请求。

返回:成功

body

字符串

HTTP 请求正文。只有当 HTTP 方法为 POST、PUT 或 PATCH 时才允许请求正文。为具有不兼容 HttpMethod 的作业设置正文是错误的。

Base64 编码的字符串。

返回:成功

headers

字典

此映射包含标头字段名称和值。不支持重复的标头,但标头值可以包含逗号。

返回:成功

httpMethod

字符串

要用于请求的 HTTP 方法。

返回:成功

oauthToken

复杂类型

包含生成 OAuth 令牌所需的信息。

发送请求到 GCP 端点时应使用这种类型的授权。

返回:成功

scope

字符串

用于生成 OAuth 访问令牌的 OAuth 作用域。如果未指定,将使用“https://www.googleapis.com/auth/cloud-platform”

返回:成功

serviceAccountEmail

字符串

用于生成 OAuth 令牌的服务帐户电子邮件。

服务帐户必须与作业位于同一项目中。

返回:成功

oidcToken

复杂类型

包含生成 OpenID Connect 令牌所需的信息。

发送请求到第三方端点或 Cloud Run 时应使用这种类型的授权。

返回:成功

audience

字符串

生成 OIDC 令牌时要使用的受众。如果未指定,将使用目标中指定的 URI。

返回:成功

serviceAccountEmail

字符串

用于生成 OAuth 令牌的服务帐户电子邮件。

服务帐户必须与作业位于同一项目中。

返回:成功

uri

字符串

请求将发送到的完整 URI 路径。

返回:成功

name

字符串

作业的名称。

返回:成功

pubsubTarget

复杂类型

Pub/Sub 目标 如果作业提供 Pub/Sub 目标,则 cron 将向提供的主题发布消息。

返回:成功

attributes

字典

PubsubMessage 的属性。

Pubsub 消息必须包含非空数据或至少一个属性。

返回:成功

data

字符串

PubsubMessage 的消息有效负载。

Pubsub 消息必须包含非空数据或至少一个属性。

Base64 编码的字符串。

返回:成功

topicName

字符串

传递作业时将向其发布消息的 Cloud Pub/Sub 主题的完整资源名称。~>**注意:** 主题名称必须与 PubSub 的 PublishRequest.name 所需的格式相同,例如 `projects/my-project/topics/my-topic`。

返回:成功

region

字符串

调度程序作业所在的区域。

返回:成功

retryConfig

复杂类型

默认情况下,如果作业未成功完成,这意味着未从处理程序收到确认,则它将根据设置使用指数退避进行重试。

返回:成功

maxBackoffDuration

字符串

作业失败后等待重试的最长时间。

一个以秒为单位的持续时间,最多包含九位小数,以“s”结尾。

返回:成功

maxDoublings

整数

重试之间的时间将翻倍 maxDoublings 次。

作业的重试间隔从 minBackoffDuration 开始,然后翻倍 maxDoublings 次,然后线性增加,最后以 maxBackoffDuration 的间隔重试 retryCount 次。

返回:成功

maxRetryDuration

字符串

重试失败作业的时间限制,从第一次尝试执行时开始计算。如果与 retryCount 一起指定,则作业将被重试,直到达到两个限制。

一个以秒为单位的持续时间,最多包含九位小数,以“s”结尾。

返回:成功

minBackoffDuration

字符串

作业失败后等待重试的最短时间。

一个以秒为单位的持续时间,最多包含九位小数,以“s”结尾。

返回:成功

retryCount

整数

系统将使用 maxDoublings 描述的指数退避过程运行作业的尝试次数。

不允许大于 5 的值和负值。

返回:成功

schedule

字符串

描述作业将执行的计划。

返回:成功

timeZone

字符串

指定用于解释计划的时区。

此字段的值必须是 tz 数据库中的时区名称。

返回:成功

作者

  • Google Inc. (@googlecloudplatform)