google-cloud-platform - 在构建触发器上使用 base64 编码的值时,cloudbuil.yaml 不会解码

标签 google-cloud-platform google-container-builder google-cloud-build

在我的 cloudbuild.yaml定义,我以前有一个secrets从 Google KMS 获取环境值的部分。 secretEnv字段具有映射到“加密 + base64 编码”值的键:

...

secrets:
- kmsKeyName: <API_PATH>
  secretEnv:
    <KEY>: <ENCRYPTED+BASE64>

我试图将这个值放在一个替换上,当使用构建触发器时替换它:
...

secrets:
- kmsKeyName: <API_PATH>
  secretEnv:
    <KEY>: ${_VALUE}

有了这个,我打算保持文件通用。

但是,构建过程不断失败并显示消息 解码构建配置 cloudbuild.yaml 失败:输入字节 0 处的 base64 数据非法 .我已经检查了几次,base64 值没有被错误地复制到触发器的替换中。

先感谢您。

最佳答案

https://cloud.google.com/cloud-build/docs/configuring-builds/substitute-variable-values
阅读后Using user-defined substitutions仔细的部分,我已经看到了

The length of a parameter key is limited to 100 bytes and the length of a parameter value is limited to 4000 bytes.


我的是一个 253 个字符的长字符串。

关于google-cloud-platform - 在构建触发器上使用 base64 编码的值时,cloudbuil.yaml 不会解码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51539273/

相关文章:

google-app-engine - 应用引擎 : Static Files Not Updating on Deploy

linux - 以其他用户而非根用户身份登录 GCP 实例

node.js - Firebase存储使用云功能仅svg上传不起作用其他格式可以使用base64

Google Cloud Container Builder - 使用 vendor 的依赖项从 Go 源代码构建 Docker 容器

google-cloud-sql - 在使用私有(private) IP 连接到云 sql 的云构建上运行数据库迁移

node.js - Docker Build 在 GCP Cloud Build 中失败 - 但在 localhost 中成功

python - google-cloud 依赖项在 python 应用程序引擎中被覆盖

谷歌容器生成器 : How to install govendor dependencies during build step?

docker - 如何加速 Google Cloud Platform 上的 bazel 构建

google-cloud-platform - 如何将谷歌云构建步骤文本输出保存到文件