我正在创建一组公司的 Ansible 角色。其中一个依赖于另一个。
所有这些角色都托管在其特定的 Gitlab 存储库中(显然,每个角色一个)。
而不是搞乱requirements.yml
,我更喜欢使用我的文件的dependencies
标签。meta/main.yml
但是我找不到使用哪种语法来创建依赖链接而不在 Ansible Galaxy 中声明它们(这显然是不可能的)。
我怎样才能做到这一点 ?
我正在创建一组公司的 Ansible 角色。其中一个依赖于另一个。
所有这些角色都托管在其特定的 Gitlab 存储库中(显然,每个角色一个)。
而不是搞乱requirements.yml
,我更喜欢使用我的文件的dependencies
标签。meta/main.yml
但是我找不到使用哪种语法来创建依赖链接而不在 Ansible Galaxy 中声明它们(这显然是不可能的)。
我怎样才能做到这一点 ?
我还没有测试过它,但根据 Ansible-Galaxy 的有关依赖项的文档,似乎:
meta/main.yml
您可以通过提供角色列表来指定文件中的角色依赖关系。如果角色的来源是 Galaxy,您可以简单地在格式中指定角色username.role_name
。还支持使用的更复杂的格式requirements.yml
,允许您提供src
、scm
、version
和name
.
下面是一个例子:
dependencies:
- src: geerlingguy.ansible
- src: git+https://github.com/geerlingguy/ansible-role-composer.git
version: 775396299f2da1f519f0d8885022ca2d6ee80ee8
name: composer