我想在我的状态下使用变量作为参数
我在map.jinja中很有价值:
'package_9.6': '3.7.5-1',
我声明了处于状态的变量:
{% set package_version = '9.6' %}
然后我在其中添加了字符串:
{% set something = "my_package.package_" ~ package_version %}
并希望在我的状态下使用所有这些
{% from "somewhere/map.jinja" import my_package with context %}
pkg.installed:
- pkgs:
- my_package: {{ something }}
在完美的宇宙中,我想将变量的值解析为map.jinja(3.7.5-1)中的值。但是我得到了 my_package.package_9.6 字符串。
也许满足我的需求是完全错误的方式,但是经过一些实验,我才选择了此选项。
答案 0 :(得分:0)
使用变量之前,您需要在状态文件中导入map.jinja
文件。
{% from "path-to-map" import map with context %}
在您的map.jinja
文件中,变量应声明为
{% set package_9.6 = '3.7.5-1' %}
然后您可以使用,在状态文件中访问它,
{% set something = "my_package.package_" + map.package_9.6 %}