Облачная информация AWS - импорт переменных, определенных Jinja, в файлы YAML - PullRequest
0 голосов
/ 27 декабря 2018

У меня есть несколько сигналов тревоги Cloudwatch, сгенерированных в файлах Jinja.Я хочу использовать один из этих сигналов тревоги в файлах YML для облачной информации.Простое указание DependsOn не работает, так как процессный сбой завершается с ошибкой, говорящей

"StatusReason": "Template format error: Unresolved resource dependencies [ABC.Alarm] in the Resources block of the template",

Как импортировать переменные Jinja в файлы YML для развертываний Cloudformation?

Редактировать:

Наши конфигурации содержат как файлы YML, так и файлы Jinja, и я не собираюсь заменять полный шаблон.Но просто использовать параметр, определенный в файлах Jinja.

Ответы [ 2 ]

0 голосов
/ 27 декабря 2018

Возможно, вы еще не хотите создавать шаблоны CloudFormation.Лучше использовать Параметры CloudFormation

Вы можете использовать ansible для предварительной обработки и даже для "исполнения" шаблонов.

Ansible имеет облачную информациюмодуль и вы можете передать ему имя стека, который вы хотите создать / обновить, и вы можете передать параметры шаблона.

в Ansible playbook experiments.yml:

- hosts: localhost
  connection: local
  gather_facts: False

  tasks:
    - cloudformation:
        stack_name: experiments
        template: experiments-stack.yml
        template_parameters:
            MyParameter: MyParameterValue

Шаблон стека CloudFormation experiments-stack.yml:

...

Parameters:
    MyParameter:
        Type: String

Resources:
    Something:
        Type: ...
        Properties:
        PropertyName: !Ref MyParameter

Запустите Playbook с ansible-playbook ./experiments.yml

0 голосов
/ 27 декабря 2018

Существует несколько способов использования шаблонов yaml для замены на Jinja.

...