【发布时间】:2015-12-15 10:59:57
【问题描述】:
Ansible Best Practices 描述了每个角色都包含文件目录,其中包含该规则所需的所有文件。
就我而言,我有不同的角色共享相同的文件。但是我无法在每个角色中制作这些文件的副本,因为这些文件没有一个来源,如果对其中一个进行编辑,则为每个角色进行此更改将变得乏味。
我提出的一个解决方案是创建另一个文件夹并使用绝对或相对路径引用它。 这是最好的方法吗?
我的 ansible 目录是这样的
play.yml
roles/
web/
tasks/
files/
common-1
common-2
other-multiple-files
role-2/
tasks/
files/
common-1
common-2
other-multiple-files
role-3/
tasks/
files/
common-2
role-4/
tasks/
files/
common-1
【问题讨论】:
-
使用新角色中的公共文件重构两个角色的任务,然后将这个新角色作为两个角色的 meta/main.yml 中的依赖项
-
@ᴳᵁᴵᴰᴼ 如果两个规则之间有相同的文件,我可以这样做,但是如果我有更多的规则包含一些文件创建角色作为依赖项将不适用。抱歉,我对此不够清楚,我在问题中添加了另外两条规则以明确我的观点
标签: ansible