- name: https_2xx
prober: http
targets:
- path: "https://site.ru"
labes: ["tag: my_site","env: prod","еще_лейбл: значение"]
Как в шаблоне jinja2 перечислить в цикле все что находится в labes с условием что можно много чего добавить туда по типу "еще_лейбл: значение"?
{% for module in bb_modules %}
- labels:
module: {{ module['name'] }}
{% for target in module['targets'] %}
?????
targets:
- {{ target['path'] }}
{% endfor %}
{% endfor %}
Имена меток заранее известны?
нет, labes может быть как 1 так и +100, например
Вы шаблонизируете yaml?
Переделать в lables: - name: foo value: bar Если, конечно, результат не должен быть в виде jaml или json)
{% for target in module['targets'] %} targets: - {{ target['path'] }} labels: {% for label, value in target["labels"].items() %} - {{ label }} {% endfor %} {% endfor %}
ругается 'list object' has no attribute 'items'
отлично! то что нужно! спасибо!
Если тебе обращаться к value итерации не нужно, то можно убрать тогда .items(), вот так оставить: labels: {% for label in target["labels"] %} - {{ label }} {% endfor %}
нужно, я уже его упомянул
Обсуждают сегодня