使用属性名称作为其他变量访问ansible变量属性

时间:2017-09-22 04:20:12

标签: ansible ansible-facts

我有以下代码:

- name: "Get output from ec2.py"
  shell: python convinventory/ec2.py
  register: ec2_py_output
- set_fact:
    EC2_MY_AP_HOST: "{{(ec2_py_output.stdout | from_json ).myIPs[0]}}"
- set_fact:
    EC2_MY_AP_DATA: "{{ (ec2_py_output.stdout | from_json)._meta.hostvars. }}-{{EC2_IFX_AP_HOST}} "    //Need to know the syntax on this line

我确认EC2_MY_AP_HOST返回字符串ip,如10.0.1.2

我从python convinventory/ec2.py收到的json结构如下所示:

{
  "_meta": {
    "hostvars": {
      "10.0.1.2": {

    < need to access this data in EC2_MY_AP_DATA > 
}
} } }

访问此数据的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

回答你的问题:

atoi

但我的猜测是你走错了路,而且你试图用这段代码解决的任务有不同的解决方案。