使用 Google 云服务帐户是 VSTS 构建

Using Google Cloud service account is VSTS build

我正在 运行在 VSTS 上构建我的自动化构建,构建的一部分是 运行针对 GCP 的集成测试。

我在 GCP 上设置了一个服务帐户,它授予 运行 测试所需的最低权限,并下载了 JSON 密钥。

我正在努力解决如何在 VSTS 构建过程中使用该密钥。我可以添加 GOOGLE_APPLICATION_CREDENTIALS 环境变量,它很容易指向文件,但我不确定将 JSON 密钥所以它仍然是安全的,或者如果我错过了另一种可能有效的方法?

我是 GCP 的新手,因此非常感谢任何帮助或建议。

谢谢, 安迪

您可以在调用服务之前将安全信息存储在 secret variable(s), then replace the value to the JSON file through Replace Token task 中(将其安装到您的 VSTS),在构建结束时,您可以从 JSON 文件中删除安全信息或删除它直接。 (如果您使用的是 Hosted agent,源文件将被自动清除)

  1. 编辑构建定义
  2. Select 变量选项卡
  3. 单击“添加”按钮添加新变量(例如名称:key1;值:[secure info]),单击锁定图标将变量类型更改为机密
  4. 编辑 JSON 文件以将安全信息替换为令牌(例如 #{key1}#,key1 是变量名)
  5. 添加替换标记任务并指定目标文件
  6. 调用服务的其他任务
  7. 添加删除文件任务以删除 JSON 文件或以其他方式清除安全信息。