2016-11-23 232 views
0

这种使用正则表达式在AWS EC2过滤器是为我工作的罚款ansible我怎样才能标签

- ec2_remote_facts: 
    region: "{{region}}" 
    filters: 
     "tag:Name": "server1" 

但我想有正则表达式像

- ec2_remote_facts: 
    region: "{{region}}" 
    filters: 
     "tag:Name": "server1*" 

我如何能做到这一点

回答

2

是的。您可以在tag:Name过滤器中指定*

- ec2_remote_facts: 
     region: us-east-1 
     filters: 
     "tag:Name": server1* 
    register: myinsts 

    - debug: msg="Total instances that match the tag-Name pattern {{myinsts.instances | length}}" 

输出:

"msg": "Total instances that match the tag-Name pattern 29" 
+1

挑剔:这不是一个正则表达式。它更像一个shell glob(“server1 *”并不意味着“服务器”后跟零个或多个1,这意味着“server1”可选地跟随一些字符)。 '?'是单个字符的通配符。 – Bulletmagnet