Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ansible 可解-包含变量_Ansible - Fatal编程技术网

Ansible 可解-包含变量

Ansible 可解-包含变量,ansible,Ansible,我正在尝试从Ansible中的文件加载变量。我从脚本运行ansible ./run.sh desupap1 idp1 1 脚本创建一个包含变量的文件~/ansible/roles/esup/vars/vars.yml vars: idp_rga: false 取决于$3参数。 我试图在任务文件/home/run/ansible/roles/esup/tasks/main.yml - name: "Sourcing esup variables" include_vars: d

我正在尝试从Ansible中的文件加载变量。我从脚本运行ansible

./run.sh desupap1 idp1 1
脚本创建一个包含变量的文件
~/ansible/roles/esup/vars/vars.yml

vars:
  idp_rga: false
取决于$3参数。 我试图在任务文件
/home/run/ansible/roles/esup/tasks/main.yml

- name: "Sourcing esup variables"
  include_vars:
    dir: '/home/run/ansible/roles/esup/vars'

- name: "DEBUG"
  debug: var=idp_rga
然而,结果是:

    TASK [esup : Sourcing common variables] ***************************************************************************
task path: /home/run/ansible/roles/esup/tasks/main.yml:1
ok: [desupap1] => {
    "ansible_facts": {
        "vars": {
            "idp_rga": true
        }
    }, 
    "ansible_included_var_files": [
        "/home/run/ansible/roles/esup/vars/vars.yml"
    ], 
    "changed": false
}

TASK [esup : DEBUG] ***********************************************************************************************
task path: /home/run/ansible/roles/esup/tasks/main.yml:5
ok: [desupap1] => {
    "idp_rga": "VARIABLE IS NOT DEFINED!"
}

TASK [esup : Sourcing .bashrc and running start_udp_proxy] ********************************************************
task path: /home/run/ansible/roles/esup/tasks/main.yml:8
fatal: [desupap1]: FAILED! => {
    "msg": "The conditional check 'idp_rga' failed. The error was: error while evaluating conditional (idp_rga): 'idp_rga' is undefined\n\nThe error appears to have been in '/home/run/ansible/roles/esup/tasks/main.yml': line 8, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: \"Sourcing .bashrc and running start_udp_proxy\"\n  ^ here\n"
}
    to retry, use: --limit @/home/run/ansible/playbook.retry

~/ansible/roles/esup/vars/vars.yml
中删除
vars:
。它应该包含的全部内容是:

idp_rga: false

否则,您将尝试定义名为
vars
的字典,而不是变量
idp\u rga

由于
vars
已经是一个保留字,您只能通过
vars.vars.idp\u rga