5.2. 管道运行规格中的动态变量
您可以使用管道运行规格中的动态变量来提供有关触发管道运行的提交的信息,并使用临时 GitHub App 令牌用于 Github API 操作。
目前不支持在管道或任务参数的默认值中使用 Pipelines as Code 动态变量。您可以在 value:
字段中使用动态变量,但不能在 default:
字段中使用。
5.2.1. 提交和 URL 信息 复制链接链接已复制到粘贴板!
您可以使用 {{<var>}}
格式的动态扩展变量来指定提交的参数和 URL。目前,您可以使用以下变量:
-
{{repo_owner}}
: 存储库所有者。 -
{{repo_name}}
: 存储库名称。 -
{{repo_url}}
:存储库完整 URL。 -
{{revision}}
:提交的完全 SHA 修订。 -
{{sender}}
:提交发送者的用户名或帐户 ID。 -
{{source_branch}}
:事件源自的分支名称。 -
{{target_branch}}
:事件目标的分支名称。对于推送事件,它与source_branch
相同。 -
{{pull_request_number}}
:拉取或合并请求号,仅对pull_request
事件类型定义。 -
{{git_auth_secret}}
:使用 Git 供应商令牌自动生成的 secret 名称,用于签出私有存储库。
5.2.2. GitHub API 操作的临时 GitHub App 令牌 复制链接链接已复制到粘贴板!
您可以使用 GitHub App 中的 Pipelines as Code 生成的临时安装令牌来访问 GitHub API。GitHub App 为 git-provider-token
密钥中的私有存储库生成密钥。您可以使用管道运行中的 {{git_auth_secret}}
动态变量来访问这个密钥。
例如,如果您的管道运行必须在拉取请求中添加注释,您可以使用 Pipelines as Code 注解从 Tekton Hub 获取 github-add-comment
任务定义,然后定义添加注释的任务,如下例所示:
- 1
- 通过使用动态变量,您可以为与 Pipelines as Code 搭配使用的任何存储库中的任何拉取请求重复使用此片断模板。
在 GitHub 应用程序中,生成的安装令牌可用于 8 小时,并范围到事件源自的存储库。您可以配置范围会有所不同,但过期时间由 GitHub 决定。