在Ansible 1.7中,我可以使用命令行中的--tags来仅运行该剧本任务的一个子集。Ansible:在剧本中,通过标记过滤角色而不通过命令行
但是我想烘焙到我的剧本中,只运行匹配标签的任务来运行一组角色。也就是说,我不想通过命令行来传递它,因为它每次都是一样的。
起初我以为是这个命令,但是这却做了相反的事情:用这些标签标记任务,而不是基于这些标签过滤出来。
roles:
- { role: webserver, port: 5000, tags: [ 'web', 'foo' ] }
我可以想象实现这个使用条件,但标签将是一个更加优雅的方式来实现这一点。
顺便说一句,我想这样做的原因是跨多个角色运行所有软件包安装任务,所以我可以创建一个缓存所有更新/升级/安装的AMI。然后我可以使用它作为我的基础AMI。让脚本正常工作,现在只需通过命令行指定 – 2014-09-04 23:36:27