元/main.yml
dependencies:
- { role: 030.sensu-install }
结果是:
[DEPRECATION WARNING]: The comma separated role spec format, use the
yaml/explicit format instead..
This feature will be removed in a future release.
Deprecation warnings can be disabled by setting deprecation_warnings=False in
ansible.cfg.
什么时候sudo ansible-galaxy install -r requirements/development.yml
发出。
尝试解决问题
什么时候
dependencies:
- role: 030.sensu-install
version: 0.1.0
已定义,语法检查成功,但弃用警告仍然存在。
什么时候
dependencies:
- src: 030.sensu-install
version: 0.1.0
已定义,sudo ansible-galaxy install -r requirements/development.yml
运行时弃用警告已解决,但ansible-playbook /etc/ansible/roles/role_under_test/tests/${playbook} --syntax-check
会导致:
ERROR! role definitions must contain a role name
根据此代码段更新 meta/main.yml ,如下所示:
并且通过发布安装要求
ansible-galaxy install -r requirements/development.yml
不再返回[DEPRECATION WARNING]: The comma separated role spec format
问题。在 github 上有关于这个问题的开放 bugfix pull request,但它仍然不清楚它是一个 bug 还是你应该使用src:相反,检查讨论。
https://github.com/ansible/ansible/pull/14612
我想在开发人员下定决心之前,您可以忽略该警告。此外,您并没有真正使用逗号分隔的语法,因此我认为不应出现此警告。
应该可以。
如果您使用的是 Galaxy 的私人仓库,那么
元\main.yml
注意:您可能需要在主机中拥有用于 git clone 的私钥