2

如何在 buildkite 中设置应用程序凭据详细信息,以便将其用作测试的一部分?

有什么帮助吗?

提前致谢

4

1 回答 1

1

最简单的方法是将它们存储在代理环境钩子中,这是一个脚本文件,您需要放在运行代理的主机上,并在代理运行的每个作业之前调用:

# /etc/buildkite-agent/hooks/environment

set -eu
echo "--- :house_with_garden: Setting up the environment"

export APPLICATION_PASSWORD="xxx"

然后在环境中的管道命令中使用它们:

# .buildkite/pipeline.yml

steps:
- label: Run tests
  command: ./run-tests --password="$$APPLICATION_PASSWORD"

双美元对管道上传的变量进行转义,确保密码没有插入到 YAML 中,然后提交给 buildkite.com。一旦代理运行命令,它将被插入。

您还可以$APPLICATION_PASSWORD在脚本中访问,以避免在 yaml 中提及它。

如果您正在运行长期存在的代理,或者使用诸如 elastic-ci-stack-for-aws 之类的东西,代理环境钩子效果最好,它有一个用于此类事情的共享环境钩子:

https://github.com/buildkite/elastic-ci-stack-for-aws#build-secrets

但也有其他一些选择:

https://buildkite.com/docs/pipelines/secrets

于 2020-08-25T10:37:26.470 回答