MrA*_*rAZ 5 yaml ansible ansible-role
我们有 3 个存储库,比如说存储库 Y、Z 和 W。
存储库 W 下有存储库 Y 和 Z 想要使用的角色。
从阅读来看,我们似乎需要如下设置requirements.yml,
- src: git@github.com:SOMEREPOSITORY/test-role.git
version: main
name: test_role
Run Code Online (Sandbox Code Playgroud)
但是,我们仍然没有成功使用共享角色,
ERROR! the role 'test_role' was not found in /home/coder/provision/Build/roles:/home/coder/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles:/home/coder/provision/Build
Run Code Online (Sandbox Code Playgroud)
我们错过了 ansible.cfg 文件中是否需要进行配置?
几天后我找到了解决方案。
不使用 Ansible Tower。
解决方案是当我们不使用 Ansible Tower 时,我们可以使用以下步骤从另一个存储库安装角色,
在./roles文件夹下创建requirements.yml文件requirements.yml的内容示例:
---
- src: git@github.com:SOMEREPOSITORY/testing-repository.git
name: test_role
scm: git
Run Code Online (Sandbox Code Playgroud)
然后,运行以下命令从另一个存储库安装角色,在执行以下命令之前确保您位于与角色目录相同级别的目录中:
ansible-galaxy install --role-file roles/requirements.yml --roles-path roles/
Run Code Online (Sandbox Code Playgroud)
使用 Ansible 塔。
假设 Git 存储库名称是 Test_Repository,那么 ./roles 目录应该位于“Test_Repository”文件夹内。由于 playbook 结构对于 Ansible Tower 查找 requests.yml 至关重要。
希望这对其他人有帮助。
归档时间: |
|
查看次数: |
7855 次 |
最近记录: |