У меня есть скрипт CloudFormation, который содержит контент json, который мне нужно заменить на поле json внутри тела сообщения или данные запроса POST curl, который я сделаю.
Файл CloudFormation выглядит следующим образом:
{ "AWSTemplateFormatVersion": "2010-09-09", "Description":
...}
Проблема в том, что я попробовал код ниже, но он не работает.Тем не менее, я копирую и вставляю содержимое файла CloudFormation в тело моего запроса POST, он работает как положено.Это означает, что это проблема подстановки или сценариев.
CLOUD_FORMATION_FILE=/home/developer/workspace/blah/blah/infrastructure/templates/component.json
template=`cat $CLOUD_FORMATION_FILE`
echo $template
curl -d '{"template": $(echo $template)}' \
-H 'Content-Type: application/json' https://base.url.com/v1/services/component-proxy/test/stacks/test-component-proxy-component \
--cert /etc/pki/tls/certs/client.crt --key /etc/pki/tls/private/client.key
Я получаю сообщение об ошибке:
{"error": "Invalid JSON. Expecting object: line 1 column 13 (char 13)"}