Jinja2 определение переменных другими переменными для повторного использования для рендеринга - PullRequest
0 голосов
/ 11 октября 2018

У меня есть файл YAML, который я хочу использовать в качестве шаблона.Допустим, есть поле s3_path.Я хотел бы шаблонировать его так:

s3_path: {{ composite_path }}

И я хотел бы определить значения для рендеринга в отдельном файле.Например, variables.yaml:

composite_path: s3://my_bucket/path_in_bucket/

Однако я хотел бы определить и повторно использовать переменные в variables.yaml, например:

prefix: s3://
bucket: my_bucket
suffix: path_in_bucket
composite_path: {{ prefix }}{{ bucket }}/{{ suffix }}

Возможно ли создать такой файл,загрузите его, создайте все подстановки и используйте полученный словарь, чтобы отобразить файл шаблона с s3_path?Я приветствую даже другие подходы, кроме загрузки значений из файла YAML или использования jinja2.

Я знаю, что могу шаблонировать s3_path как этот

s3_path: {{ prefix }}{{ bucket }}/{{ suffix }}

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

...