ansible - Ansible:连接角色的最佳实践(meta、rolename: 或 import_role)
问题描述
有三种方法(据我所知)调用另一个角色:
1)在一个剧本中role: rolename
2) 在角色名/meta/main.yml -file 中的角色本身
dependencies:
- { role: rolename2 }
3)
- import_role:
name: anotherrolename
我想我也知道区别:2号(元方法)将rolname2在任务中指定的东西之前执行。第 3 号 = https://docs.ansible.com/ansible/2.4/import_role_module.html
首先我的问题不是这些方法之间的区别(请随时让我们知道),但我想知道连接两个(或更多)角色的最佳实践是什么。方法一、二还是三?
解决方案
如果您有一个相当简单的项目,您希望在所有节点上以相同的顺序运行相同的角色,请继续并在剧本中按顺序调用它们。
如果您有更复杂的依赖关系,并且只想管理相互依赖的角色,那么元依赖关系方法很好,据我所知是稳定的。
除非您需要来自 的额外功能import_role
,例如在另一个任务列表中使用不同的参数多次运行角色,否则元数据依赖项将是首选,因为import_role
在编写preview时。
推荐阅读
- go - 为什么我得到 j 0 而不是 777
- html - 如何在 iPhone 上按下按钮时摆脱恼人的灰色高光效果
- java - AsyncTask在android中以非常不同的次数加载数据
- node.js - 如何按自定义顺序从 3 个 mongoose sachems 中检索数据
- r - 使用 purrr 将地图功能应用于分组数据框
- angular - 如何从两个列表中进行过滤?角 4
- ios - 如果只能选择两个,如何更改 UiCollectionView 中单元格的颜色
- python - 如何使用 bfs 找到 n 叉树的最大深度?
- react-native - 如何使用关系参数过滤 GraphQL 查询,React Native
- angular - 在 mat-grid-list 组件中为 mat-grid-tile 设置不同的宽度