Python:我可以在Ansible的帮助下在yaml配置文件中使用变量和简单表达式吗?

Ale*_*lex 1 python yaml ansible

我的程序是Python的,我的配置文件是yaml.我想在我的yaml文件中使用变量和一些数学表达式.(例如:$ var + $ offset)似乎Ansible支持两者,但我不熟悉Ansible,不确定我是否只能导入处理yaml配置的部分.任何帮助将不胜感激.

参考: Ansible - 设置变量值时可以使用算术吗?


更新:

理想情况下,我想使用Ansible的playbook功能作为库.这里描述的东西:http://oriolrius.cat/blog/2015/01/21/using-ansible-like-library-programming-in-python/但我无法使其工作似乎指令已过时.

Reb*_*aia 6

Ansible支持使用Jinja模板.您可以在任何类型的文件中设置变量,并根据您的需要将其发送到远程.

您可以使用Jinja语法({{variable}})在YAML中引用变量,此处有更多信息.

您还可以使用模板,以防您需要使用所述变量执行其他操作.

作为您发送的示例,您可以使用jinja数学:

vars:
  your_result: "{{ your_var + your_offset }}"
Run Code Online (Sandbox Code Playgroud)