我有一个剧本通过使用VARS声明的词典生成EC2:然后登记所述IP地址为一组,以在后面使用。Ansible字典和标签
的字典是这样的:
servers:
serv1:
name: tag1
type: t2.small
region: us-west-1
image: ami-****
serv2:
name: tag2
type: t2.medium
region: us-east-1
image: ami-****
serv3:
[...]
我想标签适用于这个剧本中最简单的方法,所以我可以使用标签创建只是其中的一些。例如,使用--tags tag1,tag3
运行剧本只会启动EC2匹配serv1和serv3。
词典中应用的标签似乎并不可能,我想避免这样做乘法的任务,如:
- Creatinge EC2
- 注册的相关信息
- 获取私有IP从以前注册的相关信息
- 添加主机到群组
虽然我已经有一个工作循环的情况下我wa nt立刻创建所有的EC2,有没有什么办法可以实现这一点(不依赖--extra-vars,这需要key = value)?例如,通过只保留运行EC2循环之前标记的内容来过滤字典?
林不知道我明白你的问题,但你可以指定'-e',例如'-e复杂的JSON项目“{‘测试’:‘一’,‘二’]}”' – user2599522
我会加一个例子,但我想避免-e使它尽可能简单的使用它。标签是完美的,因为用逗号分隔的关键字。 – Hiruma