Cloudformation echo json 环境变量

Cloudformation echo json env variable

我的问题类似于 this,我 运行 遇到将 JSON 放入文件的问题。问题是,无论我如何在 CloudFormation 模板的 userData 部分内格式化我的字符串,我似乎都无法在维护有效的 JSON 对象(键周围有双引号)的同时捕获 env $variable和值)

下面是我尝试将对象放入文件的两种不同方式(通过 echocat << EOF < env-config.json),几乎所有字符串转义组合(单引号包裹双引号转义)围绕对象键......等..)

echo '{\"development\": {\"EnvironmentConfig\": {\"api\": \" 'http://$ip:8000/api' \"}}}' >> env-config.json\n"

 

cat << EOF > env-config.json
{\"development\": {\"EnvironmentConfig\": {\"api\": \" 'http://$ip:8000/api' \"}}}
EOF

如何将格式完美的 JSON 对象放入文件中,同时从 CloudFormation 的 userData 部分捕获其中的环境 $ 变量?

谢谢!

编辑

涉及的工具:gulp-ng-config、bash、cloudformation、json

使用 gulp-ng-config 创建一个带有 env-config.json 文件常量的模块

我找到了答案,我需要在我的 JSON 的 url 部分(以及双引号)周围加上单引号,如下所示。这就是 Cloudformation 中整行的样子,我希望这对某人有所帮助:

"echo '{\"development\": {\"EnvironmentConfig\": {\"api\": \"'http://$ip:8000/api'\"}}}' >> env-config.json\n",