我有一个秘密
important_secret
存储在秘密管理器中,秘密值为
{
"tf_cloud_token": "super_secret"
}
在我的构建规范中,我有:
{
"version": 0.2,
"env": {
"variables": {},
"secrets-manager": {
"SECRET_TF_CLOUD_TOKEN": "important_secret:tf_cloud_token",
},
"git-credential-helper": "yes"
},
"phases": {
"build": {
"commands": [
"printf 'blah \"$SECRET_TF_CLOUD_TOKEN\"' > ~/.terraformrc",
"more ~/.terraformrc",
...
但它只会记录
blah "$SECRET_TF_CLOUD_TOKEN"
。
但是,当我将其更改为:
...
"commands": [
"printf 'blah \"super_secret\"' > ~/.terraformrc",
"more ~/.terraformrc"
...
它会记录
blah "***"
。
因此,它肯定知道我的秘密值,但它只是没有正确注入它。
如何让它使用我为其准备的
SECRET_TF_CLOUD_TOKEN
环境变量?
修复字符串插值:
"echo blah \"$SECRET_TF_CLOUD_TOKEN\" > ~/.terraformrc"
SECRET_TF_CLOUD_TOKEN="my-secret"
echo blah \"$SECRET_TF_CLOUD_TOKEN\" > ~/.terraformrc
cat ~/.terraformrc
# -> blah "my-secret"
你能修好它吗?我也遇到同样的问题