Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/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
Variables Ansible如何将新值指定给额外变量值_Variables_Ansible_Ansible Tower - Fatal编程技术网

Variables Ansible如何将新值指定给额外变量值

Variables Ansible如何将新值指定给额外变量值,variables,ansible,ansible-tower,Variables,Ansible,Ansible Tower,塔台:3.2.3 表2.4.2 我有一个塔楼剧本,其中指定了一个值,比如说build\u cl:latest。这是在Ansible Tower的调查中定义的,我认为这被认为是额外的VAR。我有一个执行检查的任务,如果条件正确,我需要修改build\u cl的值 因此,让我们假设当塔楼剧本被踢开时,var是: build_cl: latest 然后: -name:“获取组['Healthcheck\u Host'][0]上最新安装的CL” 外壳:| grep-oP'(?额外变量(即通过-e选项在

塔台:3.2.3 表2.4.2

我有一个塔楼剧本,其中指定了一个值,比如说build\u cl:latest。这是在Ansible Tower的调查中定义的,我认为这被认为是额外的VAR。我有一个执行检查的任务,如果条件正确,我需要修改build\u cl的值

因此,让我们假设当塔楼剧本被踢开时,var是:

build_cl: latest
然后:

-name:“获取组['Healthcheck\u Host'][0]上最新安装的CL”
外壳:|
grep-oP'(?额外变量(即通过
-e
选项在命令行上传递的变量)具有,并且在playbook生命周期内无法更改。
set\u fact
不会抛出任何错误,但该值将保持在启动时传递的值

下面是一个快速示例来说明:

---
-名称:不可变额外变量演示
主机:本地主机
收集事实:错误
变量:
测试变量:在playbook变量中设置的值
任务:
-名称:在playbook开始时调试变量值
调试:
var:test_var
-名称:更改变量值
设定事实:
测试变量:集合事实中的值集合
-名称:剧本结尾处的调试变量值
调试:
var:test_var
无额外风险值:

$ ansible-playbook test.yml 

PLAY [Immutable extra var demo] ********************************************************************************************************************************************************************************************************

TASK [debug var value at playbook start] ***********************************************************************************************************************************************************************************************
ok: [localhost] => {
    "test_var": "value set in playbook var"
}

TASK [change var value] ****************************************************************************************************************************************************************************************************************
ok: [localhost]

TASK [debug var value at playbook end] *************************************************************************************************************************************************************************************************
ok: [localhost] => {
    "test_var": "value set in set_fact"
}

PLAY RECAP *****************************************************************************************************************************************************************************************************************************
localhost                  : ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
$ ansible-playbook test.yml -e "test_var='value set in extra vars'"

PLAY [Immutable extra var demo] ********************************************************************************************************************************************************************************************************

TASK [debug var value at playbook start] ***********************************************************************************************************************************************************************************************
ok: [localhost] => {
    "test_var": "value set in extra vars"
}

TASK [change var value] ****************************************************************************************************************************************************************************************************************
ok: [localhost]

TASK [debug var value at playbook end] *************************************************************************************************************************************************************************************************
ok: [localhost] => {
    "test_var": "value set in extra vars"
}

PLAY RECAP *****************************************************************************************************************************************************************************************************************************
localhost                  : ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
附加var:

$ ansible-playbook test.yml 

PLAY [Immutable extra var demo] ********************************************************************************************************************************************************************************************************

TASK [debug var value at playbook start] ***********************************************************************************************************************************************************************************************
ok: [localhost] => {
    "test_var": "value set in playbook var"
}

TASK [change var value] ****************************************************************************************************************************************************************************************************************
ok: [localhost]

TASK [debug var value at playbook end] *************************************************************************************************************************************************************************************************
ok: [localhost] => {
    "test_var": "value set in set_fact"
}

PLAY RECAP *****************************************************************************************************************************************************************************************************************************
localhost                  : ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
$ ansible-playbook test.yml -e "test_var='value set in extra vars'"

PLAY [Immutable extra var demo] ********************************************************************************************************************************************************************************************************

TASK [debug var value at playbook start] ***********************************************************************************************************************************************************************************************
ok: [localhost] => {
    "test_var": "value set in extra vars"
}

TASK [change var value] ****************************************************************************************************************************************************************************************************************
ok: [localhost]

TASK [debug var value at playbook end] *************************************************************************************************************************************************************************************************
ok: [localhost] => {
    "test_var": "value set in extra vars"
}

PLAY RECAP *****************************************************************************************************************************************************************************************************************************
localhost                  : ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

我已验证ansible正在分配新值:{“changed”:false,“ansible_facts”:{“build_cl”:“123456”},“\u ansible_no_log”:false}您是否将此作为额外变量传递?如果是,您绝对没有机会修改此值。额外变量有。邓…感谢您的快速回复。我必须花时间修改我的逻辑:)