本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为了以编程方式配置 Buildkite 运行器项目,您需要配置以下资源:
以编程方式创建 Buildkite 运行器
-
创建 Buildkite 代理令牌并将该代币以纯文本形式保存在其中。 AWS Secrets Manager
-
使用您的首选配置设置 CodeBuild 项目。您将需要配置以下其他属性:
-
一个环境值,其名称
CODEBUILD_CONFIG_BUILDKITE_AGENT_TOKEN
SECRETS_MANAGER
、类型和值等于与你的 Buildkite 集群关联的 Buildkite 代理令牌。 -
源类型等于
NO_SOURCE
-
以项目的服务角色访问步骤 1 中创建的密钥的权限
例如,您可以使用以下命令通过 CLI 创建有效的 Buildkite 运行器项目:
aws codebuild create-project \ --name buildkite-runner-project \ --source "{\"type\": \"NO_SOURCE\",\"buildspec\":\"\"}" \ --environment "{\"image\":\"aws/codebuild/amazonlinux-x86_64-standard:5.0\",\"type\":\"LINUX_CONTAINER\",\"computeType\":\"BUILD_GENERAL1_MEDIUM\",\"environmentVariables\":[{\"name\":\"CODEBUILD_CONFIG_BUILDKITE_AGENT_TOKEN\",\"type\":\"SECRETS_MANAGER\",\"value\":\"<buildkite-secret-name>\"}]}" \ --artifacts "{\"type\": \"NO_ARTIFACTS\"}" \ --service-role
<service-role>
-
-
在步骤 2 中创建的项目上创建 Buildkite 运行器 webhook。创建 webhook 时,您需要使用以下配置选项:
-
构建类型应等于
RUNNER_BUILDKITE_BUILD
-
类型
EVENT
和模式等于的过滤器WORKFLOW_JOB_QUEUED
例如,你可以使用以下命令通过 CLI 创建有效的 Buildkite 运行器 webhook:
aws codebuild create-webhook \ --project-name buildkite-runner-project \ --filter-groups "[[{\"type\":\"EVENT\",\"pattern\":\"WORKFLOW_JOB_QUEUED\"}]]" \ --build-type RUNNER_BUILDKITE_BUILD
-
-
保存
create-webhook
调用返回的 P ayload URL 和 S ecret 值,然后使用凭据在 Buildkite 控制台中创建 webhook。您可以参考中的步骤 3:在 Buildkite 中创建 CodeBuild webhook,以教程:配置 CodeBuild托管的 Buildkite 运行器获取有关如何设置此资源的指南。