【发布时间】:2019-09-10 09:54:43
【问题描述】:
我是 ansible 的新手,正在探索依赖角色。 documentation link
我没有看到文档是 - 放置 requirements.yml 文件的位置。
例如,如果我的site.yml 看起来像这样:
---
- name: prepare system
hosts: all
roles:
- role1
还有,让我们说
- role1 依赖于 role2 和 role3
- role2 依赖于 role4 和 role5
通常,ansible-galaxy 具有以下结构:
└── test-role
├── defaults
│ └── main.yml
├── files
├── handlers
│ └── main.yml
├── meta
│ └── main.yml
├── README.md
├── tasks
│ └── main.yml
├── templates
├── tests
│ ├── inventory
│ └── test.yml
└── vars
└── main.yml
依赖关系,添加到meta/main.yml。假设,角色 1 在此文件中标记了依赖项,例如(角色 2 也是如此):
dependencies:
- role: role2
- role: role3
而且,我还有一个requirements.yml 文件,看起来像:
---
- src: some git link1
version: master
name: role2
- src: some git link2
version: master
name: role3
我的问题:
我应该将这个 requirements.yml 文件放置在哪里?
我了解需要通过命令安装要求,
ansible-galaxy install -r requirements.yml -p roles/
而且,我可以为角色 1 执行此操作,但如何为角色 2 自动执行此操作?后续的依赖是否需要这样手动解析安装,还是有更好的办法?
【问题讨论】:
标签: ansible ansible-role