我可以在任务中将库存转储到远程机器吗?
Can I dump the inventory to a remote machine in a task?
我有一个 Ansible 角色,我需要在远程机器上创建一个清单文件。我想使用当前的清单文件,但删除了一个组。
例如,如果我有以下库存:
[operator]
host1.example.com
[control]
host2.example.com
host3.example.com
[compute]
host4.example.com some_var=value
host5.example.com
# some comment
[foo:children]
control
compute
[bar:vars]
var1=value
#var2=value
然后我需要复制这个的东西:
- hosts: operator
tasks:
- name: Create inventory
...
host1.example.com
的结果如下:
[control]
host2.example.com
host3.example.com
[compute]
host4.example.com some_var=value
host5.example.com
# some comment
[foo:children]
control
compute
[bar:vars]
var1=value
#var2=value
将当前库存文件一分为二:
- 仅包含
operator
组,
- 一个包含其余部分。
只复制后者到目标系统。
你知道你可以point to a directory containing multiple files作为你的库存,对吧?
我有一个 Ansible 角色,我需要在远程机器上创建一个清单文件。我想使用当前的清单文件,但删除了一个组。
例如,如果我有以下库存:
[operator]
host1.example.com
[control]
host2.example.com
host3.example.com
[compute]
host4.example.com some_var=value
host5.example.com
# some comment
[foo:children]
control
compute
[bar:vars]
var1=value
#var2=value
然后我需要复制这个的东西:
- hosts: operator
tasks:
- name: Create inventory
...
host1.example.com
的结果如下:
[control]
host2.example.com
host3.example.com
[compute]
host4.example.com some_var=value
host5.example.com
# some comment
[foo:children]
control
compute
[bar:vars]
var1=value
#var2=value
将当前库存文件一分为二:
- 仅包含
operator
组, - 一个包含其余部分。
- 仅包含
只复制后者到目标系统。
你知道你可以point to a directory containing multiple files作为你的库存,对吧?