1

我在 terraform 中运行 ansible。

我使用以下方法下载了一个星系角色:

ansible-galaxy install <role>

这将其下载到我的~/.ansible/roles目录中。

但是当我在我与 terraform 一起使用的 ansible playbook 中引用角色名称时,它找不到它。

所以我指定了一个这样的目录:

ansible-galaxy install --roles-path . <role>

虽然这现在有效,但它与我所有其他受源代码控制的脚本混合在一起。

我想知道是否有一种方法可以在不实际下载的情况下使用银河角色?或者,如果有一种方法可以在我的 ansible playbook 中指定在哪里寻找除了我的角色之外的其他角色?

4

1 回答 1

2

由于 Ansible 只知道如何从本地文件系统中检索角色,因此您必须先下载角色才能使用它们。

您可以通过设置ANSIBLE_ROLES_PATH环境变量或roles_path在您的ansible.cfg. 有关详细信息,请参阅文档

于 2021-01-10T03:33:59.793 回答