【发布时间】:2014-09-04 20:41:53
【问题描述】:
在 Ansible 1.7 中,我可以使用命令行中的 --tags 来仅运行该剧本任务的子集。
但我想融入我的剧本来运行一组角色,其中只有与标签匹配的任务。也就是说,我不想通过命令行传递它,因为它每次都是一样的。
一开始我以为是这个命令,但结果恰恰相反:用这些标签标记任务,而不是根据这个过滤掉它们。
roles:
- { role: webserver, port: 5000, tags: [ 'web', 'foo' ] }
我可以想象使用条件来实现这一点,但标签将是实现这一点的更优雅的方式。
【问题讨论】:
-
顺便说一句,我想要这样做的原因是跨多个角色运行所有包安装任务,这样我就可以创建一个缓存所有更新/升级/安装的 AMI。然后我可以将它用作我的基础 AMI。让脚本正常工作,现在只需通过命令行指定