Ansible';带有#u项目';不';不要把自己交给一个负责任的角色
我想不出来。我有一些主持人,我想把他们传给我的负责人。我可以反复浏览剧本中的项目,但是如果我把项目交给我的负责人角色,它就不起作用了。我的主机清单如下所示:Ansible';带有#u项目';不';不要把自己交给一个负责任的角色,ansible,Ansible,我想不出来。我有一些主持人,我想把他们传给我的负责人。我可以反复浏览剧本中的项目,但是如果我把项目交给我的负责人角色,它就不起作用了。我的主机清单如下所示: hosts: host_one: domain: one ip: 172.18.1.1 connection: - connection_name: two connection_ip: 172.18.1.2
hosts:
host_one:
domain: one
ip: 172.18.1.1
connection:
- connection_name: two
connection_ip: 172.18.1.2
- connection_index: three
local_hub_ip: 172.18.1.3
host_two:
domain: two
ip: 172.18.1.2
例如,这是正确的:
tasks:
- debug:
msg: "{{item.connection_name}}"
with_items:
- "{{ connection }}"
将正确打印出connections.connection\我拥有的每个连接的名称,“2”和“3”。但是,如果我尝试将其传递给角色:
tasks:
- name: Adding several connections
include_role:
name: connection-create
with_items:
- "{{ connection }}"
在我的角色“连接创建”使用名为“连接名称”的变量时,我得到:
失败!=>{“msg”:“'connection_name'未定义”}
为什么这不起作用?带有_项的循环:“{{connection}}”创建循环变量项。包含的角色可以使用
item.connection_name
item.connection_ip
如果需要,可以重命名循环变量。请参见带有_项的循环:“{{connection}}”创建循环变量项。包含的角色可以使用
item.connection_name
item.connection_ip
如果需要,可以重命名循环变量。请参见我明白了,问题出在我的角色中我有另一个“with_items”任务,因此我必须重新构造它,以便使用“item.connection_name”我明白了,问题出在我的角色中我有另一个“with_items”任务,因此我必须重新构造它,以便使用“item.connection_name”