jenkins 对于ansible主机,无法将两个变量与下划线连在沿着

yrdbyhpb  于 2023-01-25  发布在  Jenkins
关注(0)|答案(1)|浏览(201)

下面是ansible plugin for Jenkins生成的命令。

ansible-playbook /app/stop.yml -i /app/my-hosts -l test_west -e app_name=test -e environments=west -v

这是我的ansible清单主机文件。

cat my-hosts
[test_west]
10.0.9.88
10.0.9.89

-l选项有助于匹配ansible清单主机文件“test_west”
我的问题是......我在ansible的剧本中要为主持人提到什么?
我的行动手册如下所示,但这似乎不正确或不需要,因为使用传递给ansible的-l参数匹配主机:

---
- hosts: "{{ app_name + '_' + environments }}

您能否建议我应该如何设置主机:到我的ansible剧本中,所以它与-l参数相同,即“test_west”?

szqfcxe2

szqfcxe21#

您应该用途:- hosts: "{{ app_name }}_{{ environments }}"
样本输出:

[root@greenhat-30 tests]$ ansible-playbook -i hosts test.yml -e app_name=test -e environments=west
 [WARNING]: Could not match supplied host pattern, ignoring: test_west

PLAY [test_west] *******************************************************************************************************************************************************************************************************
skipping: no hosts matched

PLAY RECAP *************************************************************************************************************************************************************************************************************

[http_offline@greenhat-30 tests]$

您可以看到选定的组为PLAY [test_west]

相关问题