Ansible变量嵌套解析
Posted pekkle
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ansible变量嵌套解析相关的知识,希望对你有一定的参考价值。
有时候需要用到ansible的变量的嵌套解析,就是“变量中嵌套变量”。例子如下:
假设有一个外部传递的变量,system_code = CRM,而我们同时有一系列类似的变量,如:
ABS_port=10000
ETL_port=5678
CRM_port=1234
想通过system_code变量来决定我要用哪个xxx_port,所以需要变量嵌套。
ansible yaml写法如下,在ansible 2.2中通过。(在2.5版本后有新的写法)
- hosts: remote_node vars: SYSTEM: "{{system_code}}_port" # 先得到字符串CRM_port tasks: - name: "Get port number" shell: "echo {{ vars[SYSTEM] }}" # 再在vars字典中提取上面拼接得到的字符串结果,然后在全局变量中解析"CRM_port"的值
以上是关于Ansible变量嵌套解析的主要内容,如果未能解决你的问题,请参考以下文章
如何解析 Ansible group_vars 字典中的变量?