Как расширить jinja внутри импорта для GCP Deployment Manager

Как расширить jinja внутри импорта для GCP Deployment Manager

У меня есть шаблон/схема Deployment Manager, и я хочу динамически включать различные параметры startup-script для cloud-init в зависимости от вызываемого мной template.yaml. В моем template.jinja у меня есть:

      metadata:
        items:
        - key: startup-script
          value: |
{{ imports['startup-script-pre']|indent(14, true) }}
{{ imports['startup-script-custom']|indent(14, true) }}
{{ imports['startup-script-post']|indent(14, true) }}

Все импорты включены в конечный вывод, однако jinja2 внутри них не обрабатывается, он оставляет там такие вещи, как {{ env["name"] }}, чтобы cloud-init не заработал. Внутри консоли GCP Expanded Config выглядит так:

systemctl daemon-reload
systemctl enable {{ env["name"] }}
systemctl start {{ env["name"] }}

с чем, очевидно, cloud-init не имеет ни малейшего представления, как справиться.

Есть ли способ принудительно обрабатывать эти импорты для jinja, а не просто вставлять их в необработанном виде?

решение1

Связанный контент