我将在序言中说"不,找到一种不同的方式去做"这是一个可以接受的答案.
是否有一种可靠的方法可以在bash变量中存储一小段JSON,以便在从同一脚本运行的AWS CLI命令中使用?
我将从Jenkins运行一个正在更新AWS Route53记录的工作,该记录需要UPSERT一个带有记录更改的JSON文件.因为它是从Jenkins运行的,所以我没有本地存储可以保存这个文件,而且我真的很想避免每次运行这个项目时都需要进行git checkout(这将是每小时一次).
理想情况下,将数据存储在variable($foo)中并将其作为change-resource-record-sets命令的一部分进行调用将是最方便的,因为Jenkins设置,但我不熟悉如何在bash中引用/存储JSON - 它可以安全地完成吗?
在这种情况下,具体的JSON如下;
{"Comment":"Update DNSName.","Changes":[{"Action":"UPSERT","ResourceRecordSet":{"Name":"alex.","Type":"A","AliasTarget":{"HostedZoneId":"######","DNSName":"$bar","EvaluateTargetHealth":false}}}]}
Run Code Online (Sandbox Code Playgroud)
作为一个额外的复杂功能,DNSName值$bar- 需要扩展.