google.cloud.gcp_cloudbuild_trigger_info 模块 – 收集 GCP 触发器的信息
注意
此模块是 google.cloud 集合 (版本 1.4.1) 的一部分。
如果您正在使用 ansible
包,您可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install google.cloud
。您需要其他要求才能使用此模块,请参阅 要求 以了解详细信息。
要在 playbook 中使用它,请指定:google.cloud.gcp_cloudbuild_trigger_info
。
注意
由于违反了 Ansible 包含要求,google.cloud 集合将从 Ansible 12 中删除。该集合存在 未解决的健全性测试失败。有关更多信息,请参阅 讨论主题。
概要
收集 GCP 触发器的信息
要求
执行此模块的主机需要以下要求。
python >= 2.6
requests >= 2.18.4
google-auth >= 1.3.0
参数
参数 |
注释 |
---|---|
如果凭据类型为 accesstoken,则为 OAuth2 访问令牌。 |
|
使用的凭据类型。 选择
|
|
指定您在此模块中运行的 Ansible 环境。 除非您知道自己在做什么,否则不应设置此项。 这只会更改任何 API 请求的 User Agent 字符串。 |
|
要使用的 Google Cloud Platform 项目。 |
|
要使用的作用域数组 |
|
服务帐户 JSON 文件的内容,可以是字典或表示它的 JSON 字符串。 |
|
如果选择了 machineaccount 并且用户不希望使用默认电子邮件,则为可选的服务帐户电子邮件地址。 |
|
如果选择 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_email 和 service_account_file 选项是互斥的。
示例
- name: get info on a trigger
gcp_cloudbuild_trigger_info:
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
返回值
常见返回值记录在 此处,以下是此模块特有的字段
键 |
描述 |
---|---|
资源列表 返回:始终 |
|
构建模板的内容。必须提供文件名或构建模板。 返回:成功 |
|
构建生成的所有构建步骤成功完成后应上传的工件。 返回:成功 |
|
在成功完成所有构建步骤后要推送的镜像列表。 这些镜像将使用构建器服务帐户的凭据进行推送。 推送的镜像的摘要将存储在构建资源的 results 字段中。 如果任何镜像推送失败,则构建标记为 FAILURE。 返回:成功 |
|
在成功完成所有构建步骤后要上传到 Cloud Storage 的对象列表。 工作区中与指定路径 glob 匹配的文件将使用构建器服务帐户的凭据上传到 Cloud Storage 位置。 上传对象的位置和生成将存储在构建资源的 results 字段中。 如果任何对象推送失败,则构建标记为 FAILURE。 返回:成功 |
|
Cloud Storage 存储桶和可选对象路径,格式为 “gs://bucket/path/to/somewhere/”。 工作区中与任何路径模式匹配的文件将上传到 Cloud Storage,并将此位置作为前缀。 返回:成功 |
|
用于匹配构建工作区中文件的路径 glob。 返回:成功 |
|
仅输出。存储推送所有工件对象的时间信息。 返回:成功 |
|
时间跨度的结束时间。 一个 RFC3339 UTC “祖鲁”格式的时间戳,具有纳秒级分辨率,最多可有九位小数。例如:“2014-10-02T15:01:23Z” 和 “2014-10-02T15:01:23.045123456Z”。 返回:成功 |
|
时间跨度的开始时间。 一个 RFC3339 UTC “祖鲁”格式的时间戳,具有纳秒级分辨率,最多可有九位小数。例如:“2014-10-02T15:01:23Z” 和 “2014-10-02T15:01:23.045123456Z”。 返回:成功 |
|
在成功完成所有构建步骤后要推送的镜像列表。 镜像使用构建器服务帐户的凭据推送。 推送的镜像的摘要将存储在构建资源的 results 字段中。 如果任何镜像推送失败,则构建状态标记为 FAILURE。 返回:成功 |
|
应写入日志的 Google Cloud Storage 存储桶。日志文件名格式为 ${logsBucket}/log-${build_id}.txt。 返回:成功 |
|
此构建的特殊选项。 返回:成功 |
|
运行构建的虚拟机的请求磁盘大小。请注意,这不是“磁盘可用空间”;部分空间将由操作系统和构建实用程序使用。 另请注意,这是将为构建分配的最小磁盘大小 – 构建可能在比请求更大的磁盘上运行。目前,最大磁盘大小为 1000GB;请求超过最大值的构建将被拒绝并返回错误。 返回:成功 |
|
指定是否将 bash 样式字符串操作应用于替换项的选项。 注意:对于触发的构建,此选项始终启用,并且无法在构建配置文件中覆盖。 返回:成功 |
|
将在此构建中的所有构建步骤中存在的全局环境变量定义列表。如果在全局和构建步骤中都定义了变量,则该变量将使用构建步骤的值。 元素的形式为 “KEY=VALUE”,表示环境变量 “KEY” 的值为 “VALUE”。 返回:成功 |
|
指定日志记录模式的选项,该模式确定是否存储以及在何处存储构建日志。 返回:成功 |
|
定义构建日志流式传输到 Google Cloud Storage 的行为的选项。 返回:成功 |
|
在其上运行构建的 Compute Engine 机器类型。 返回:成功 |
|
请求的可验证性选项。 返回:成功 |
|
全局环境变量列表,这些变量使用 Cloud Key Management Service 加密密钥进行加密。这些值必须在构建的 Secret 中指定。这些变量将可用于此构建中的所有构建步骤。 返回:成功 |
|
请求的 SourceProvenance 哈希。 返回:成功 |
|
指定在替换检查中发生错误时的行为的选项。 注意:对于触发的构建,此选项始终设置为 ALLOW_LOOSE,并且无法在构建配置文件中覆盖。 返回:成功 |
|
要为所有构建步骤挂载的全局卷列表。每个卷在启动构建过程之前都创建为空卷。 构建完成后,卷及其内容将被丢弃。全局卷名称和路径不能与构建步骤中定义的卷冲突。 在只有一个步骤的构建中使用全局卷无效,因为它表示构建请求的配置不正确。 返回:成功 |
|
要挂载的卷的名称。 卷名称在每个构建步骤中必须是唯一的,并且必须是 Docker 卷的有效名称。 每个命名的卷必须至少被两个构建步骤使用。 返回:成功 |
|
要挂载卷的路径。 路径必须是绝对路径,并且不能与同一构建步骤上的其他卷路径或某些保留的卷路径冲突。 返回:成功 |
|
指定构建的 WorkerPool 的选项。格式为 projects/{project}/workerPools/{workerPool}。此字段为实验性字段。 返回:成功 |
|
此构建在队列中的 TTL。如果提供了此值,并且构建在队列中的时间长于此值,则构建将过期,并且构建状态将为 EXPIRED。 TTL 从 createTime 开始计时。 一个以秒为单位的持续时间,最多可有九位小数,并以“s”结尾。示例:“3.5s”。 返回:成功 |
|
要使用 Cloud Key Management Service 解密的密钥。 返回:成功 |
|
用于解密这些 env 的 Cloud KMS 密钥名称。 返回:成功 |
|
环境变量名称与其加密值的映射。 密钥环境变量在构建的所有密钥中必须是唯一的,并且必须至少被一个构建步骤使用。值的大小最大为 64 KB。构建的所有密钥中最多可以有 100 个密钥值。 返回:成功 |
|
要构建的源文件的位置。 返回:成功 |
|
Google Cloud Source Repository 中源代码的位置。 返回:成功 |
|
与要构建的分支匹配的正则表达式。必须提供分支名称、标签或提交 SHA 中的一个。 接受的正则表达式的语法是 RE2 接受的语法,并在 https://github.com/google/re2/wiki/Syntax 中描述。 返回:成功 |
|
要构建的显式提交 SHA。必须提供分支名称、标签或提交 SHA 中的一个。 返回:成功 |
|
相对于源根目录,要在其中运行构建的目录。 这必须是相对路径。如果指定了步骤的 dir,并且是绝对路径,则该值将被忽略以执行该步骤。 返回:成功 |
|
仅当修订正则表达式与修订正则表达式不匹配时才触发构建。 返回:成功 |
|
拥有 Cloud Source Repository 的项目的 ID。如果省略,则假定为请求构建的项目 ID。 返回:成功 |
|
Cloud Source Repository 的名称。 返回:成功 |
|
要在触发的构建中使用的替换。应仅与 triggers.run 一起使用。 返回:成功 |
|
与要构建的标签匹配的正则表达式。必须提供分支名称、标签或提交 SHA 中的一个。 接受的正则表达式的语法是 RE2 接受的语法,并在 https://github.com/google/re2/wiki/Syntax 中描述。 返回:成功 |
|
Google Cloud Storage 中归档文件中源代码的位置。 返回:成功 |
|
包含源代码的 Google Cloud Storage 存储桶。 返回:成功 |
|
对象的 Google Cloud Storage 生成。如果省略生成,则将使用最新生成。 返回:成功 |
|
包含源代码的 Google Cloud Storage 对象。 此对象必须是包含要构建的源代码的 gzip 压缩存档文件 (.tar.gz)。 返回:成功 |
|
要在工作区上执行的操作。 返回:成功 |
|
启动步骤时将呈现给步骤的参数列表。 如果用于运行步骤容器的镜像具有入口点,则 args 将用作该入口点的参数。如果镜像未定义入口点,则 args 中的第一个元素将用作入口点,其余元素将用作参数。 返回:成功 |
|
运行此步骤的容器时要使用的工作目录。 如果此值是相对路径,则它相对于构建的工作目录。如果此值是绝对路径,则它可能位于构建的工作目录之外,在这种情况下,除非为该路径指定了 `volume`,否则该路径的内容可能不会在构建步骤执行之间持久化。 如果构建指定了带有 `dir` 的 `RepoSource` 和带有 `dir` 的步骤,该 `dir` 指定了绝对路径,则该步骤执行时将忽略 `RepoSource` `dir`。 返回:成功 |
|
要使用的入口点,而不是构建步骤镜像的默认入口点。 如果未设置,则使用镜像的默认入口点。 返回:成功 |
|
运行步骤时要使用的环境变量定义列表。 元素的形式为 “KEY=VALUE”,表示环境变量 “KEY” 的值为 “VALUE”。 返回:成功 |
|
此构建步骤的唯一标识符,在 `wait_for` 中使用,以将此构建步骤引用为依赖项。 返回:成功 |
|
将运行此特定构建步骤的容器镜像的名称。 如果该镜像在主机的 Docker 守护程序的缓存中可用,则将直接运行该镜像。如果不可用,主机将首先尝试拉取镜像,如有必要,将使用构建器服务帐户的凭据。 Docker 守护程序的缓存将已经具有所有官方支持的构建步骤的最新版本(有关镜像和示例,请参阅 https://github.com/GoogleCloudPlatform/cloud-builders)。 Docker 守护程序还将缓存一些流行镜像(例如“ubuntu”、“debian”)的许多层,但在您尝试使用它们时会刷新它们。 如果在之前的构建步骤中构建了镜像,它将存储在主机的 Docker 守护程序的缓存中,并且可以用作稍后构建步骤的名称。 返回:成功 |
|
使用 Cloud Key Management Service 加密密钥加密的环境变量列表。这些值必须在构建的 `Secret` 中指定。 返回:成功 |
|
执行此构建步骤的时间限制。如果未定义,则步骤没有时间限制,并且将允许继续运行,直到它完成或构建本身超时为止。 返回:成功 |
|
仅输出。存储执行此构建步骤的计时信息。 返回:成功 |
|
要挂载到构建步骤中的卷列表。 每个卷在执行构建步骤之前都创建为空卷。构建完成后,卷及其内容将被丢弃。 仅在一个步骤中使用命名的卷无效,因为它表示构建请求的配置不正确。 返回:成功 |
|
要挂载的卷的名称。 卷名称在每个构建步骤中必须是唯一的,并且必须是 Docker 卷的有效名称。每个命名的卷必须至少被两个构建步骤使用。 返回:成功 |
|
要挂载卷的路径。 路径必须是绝对路径,并且不能与同一构建步骤上的其他卷路径或某些保留的卷路径冲突。 返回:成功 |
|
此构建步骤所依赖的步骤的 ID。 此构建步骤将不会启动,直到 `wait_for` 中的所有构建步骤都成功完成。如果 `wait_for` 为空,则此构建步骤将在 `Build.Steps` 列表中的所有先前构建步骤成功完成后启动。 返回:成功 |
|
构建资源的替换数据。 返回:成功 |
|
用于注释构建的标记。这些不是 docker 标记。 返回:成功 |
|
应允许此构建运行的时间量,精确到秒。 如果超过此时间量,则将停止构建工作,并且构建状态将为 TIMEOUT。 此超时必须等于或大于构建内构建步骤的超时之和。 预期格式为秒数后跟 s。 默认时间为 10 分钟 (600s)。 返回:成功 |
|
创建触发器的时间。 返回:成功 |
|
触发器的可读描述。 返回:成功 |
|
触发器是否已禁用。如果为 true,则触发器永远不会导致构建。 返回:成功 |
|
从源根目录到文件的路径,其内容用于模板。必须提供文件名或构建模板。 返回:成功 |
|
描述每当收到 GitHub 事件时创建构建的触发器的配置。 返回:成功 |
|
存储库的名称。例如:https://github.com/googlecloudplatform/cloud-builders 的名称为“cloud-builders”。 返回:成功 |
|
存储库的所有者。例如:https://github.com/googlecloudplatform/cloud-builders 的所有者为“googlecloudplatform”。 返回:成功 |
|
用于匹配拉取请求中的更改的过滤器。仅指定 pullRequest 或 push 中的一个。 返回:成功 |
|
要匹配的分支的正则表达式。 返回:成功 |
|
是否阻止存储库所有者或协作者在“/gcbrun”注释上进行构建。 返回:成功 |
|
如果为 true,则与 git_ref 不匹配的分支将触发构建。 返回:成功 |
|
用于匹配 refs 中的更改(例如分支或标签)的过滤器。仅指定 pullRequest 或 push 中的一个。 返回:成功 |
|
要匹配的分支的正则表达式。仅指定 branch 或 tag 中的一个。 返回:成功 |
|
如果为 true,则仅当修订正则表达式与 git_ref 正则表达式不匹配时才触发构建。 返回:成功 |
|
要匹配的标签的正则表达式。仅指定 branch 或 tag 中的一个。 返回:成功 |
|
触发器的唯一标识符。 返回:成功 |
|
ignoredFiles 和 includedFiles 是使用 https://golang.ac.cn/pkg/path/filepath/#Match 的文件 glob 匹配,并扩展了对 `**` 的支持。 如果 ignoredFiles 和更改的文件都为空,则它们将不会用于确定是否触发构建。 如果 ignoredFiles 不为空,则我们会忽略任何与 ignored_file glob 匹配的文件。如果更改中没有文件在 ignoredFiles glob 之外,则我们不会触发构建。 返回:成功 |
|
ignoredFiles 和 includedFiles 是使用 https://golang.ac.cn/pkg/path/filepath/#Match 的文件 glob 匹配,并扩展了对 `**` 的支持。 如果提交中任何被更改的文件通过了 ignoredFiles 过滤器,并且 includedFiles 为空,那么就此过滤器而言,我们应该触发构建。 如果提交中任何被更改的文件通过了 ignoredFiles 过滤器,并且 includedFiles 不为空,那么我们会确保至少其中一个文件与 includedFiles glob 匹配。如果没有,则我们不会触发构建。 返回:成功 |
|
触发器的名称。在项目内必须是唯一的。 返回:成功 |
|
PubsubConfig 描述了当发布 Pub/Sub 消息时创建构建的触发器的配置。 返回:成功 |
|
将发出推送请求的服务帐户。 返回:成功 |
|
底层 Pub/Sub 订阅配置的潜在问题。 仅在获取请求时填充。 返回:成功 |
|
仅输出。订阅的名称。 返回:成功 |
|
此订阅接收消息的主题名称。 返回:成功 |
|
构建资源的替换数据。 返回:成功 |
|
用于注释 BuildTrigger 的标签。 返回:成功 |
|
描述触发构建的源代码更改类型的模板。 触发器模板中的分支和标签名称被解释为正则表达式。任何与该正则表达式匹配的分支或标签更改都将触发构建。 返回:成功 |
|
要构建的分支的名称。必须提供分支名称、标签或提交 SHA 中的一个。 此字段是一个正则表达式。 返回:成功 |
|
要构建的显式提交 SHA。必须提供分支名称、标签或提交 SHA 中的一个。 返回:成功 |
|
相对于源根目录,要在其中运行构建的目录。 这必须是相对路径。如果指定了步骤的 dir,并且是绝对路径,则该值将被忽略以执行该步骤。 返回:成功 |
|
仅当修订正则表达式与修订正则表达式不匹配时才触发构建。 返回:成功 |
|
拥有 Cloud Source Repository 的项目的 ID。如果省略,则假定为请求构建的项目 ID。 返回:成功 |
|
Cloud Source Repository 的名称。如果省略,则假定名称为“default”。 返回:成功 |
|
要构建的标签的名称。必须提供分支名称、标签或提交 SHA 中的一个。 此字段是一个正则表达式。 返回:成功 |
|
WebhookConfig 描述了当 Webhook 发送到触发器的 Webhook URL 时创建构建的触发器的配置。 返回:成功 |
|
作为 URL 参数所需的密钥的资源名称。 返回:成功 |
|
底层 Pub/Sub 订阅配置的潜在问题。 仅在获取请求时填充。 返回:成功 |