Я искал столько, сколько мог, и пробовал множество разных вариантов, чтобы заставить это работать, но я полностью застрял.
Из сценария Ansible я создаю стеки Cloudformation, которые состоят из сетевого стека и стека экземпляров. Внутри сетевого стека я создаю группу безопасности, а затем при создании экземпляра ищу группу безопасности и беру идентификатор, чтобы передать его в стек экземпляра.
Проблема, с которой я столкнулся, заключается в том, что идентификатор группы безопасности должен иметь формат типа «Список строк».
Идентификатор группы безопасности: sg-c5bfa4bd
поэтому переданный мной параметр должен выглядеть так: ["sg-c5bfa4bd"]
.
У меня проблемы с цитатами. Это код, который, как мы думали, будет работать с sg_group_id
передается в шаблон облачной информации в качестве параметра:
- set_fact:
sg_group_id: '["{{ sg_group_ida }}"]'
Но когда он попадает в AWS, двойные кавычки преобразуются в одинарные. ['sg-c5bfa4bd']
.
Если я установлю для факта две двойные кавычки в начале: '[""{{ sg_group_ida }}"]'
Я получаю двойные кавычки в параметре на AWS и двойные кавычки в конце: ["sg-c5bfa4bd"]
.
Так запутался.
Спасибо за любую помощь.
Дэвид
Если sg_group_ida
это строка sg-c5bfa4bd, затем:
- set_fact:
sg_group_id: '{{ [sg_group_ida] }}'
составит список ["sg-c5bfa4bd"]
как ценность sg_group_id
.