Skip to content

Instantly share code, notes, and snippets.

@viesti
Created September 17, 2015 13:10

Revisions

  1. viesti created this gist Sep 17, 2015.
    19 changes: 19 additions & 0 deletions filters.py
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,19 @@
    def make_rules(hosts, ports, proto):
    return [{"proto": proto,
    "from_port": port,
    "to_port": port,
    "cidr_ip": host} for host in hosts for port in map(int, ports.split(","))]

    class FilterModule(object):
    def filters(self):
    return {'make_rules': make_rules}


    usage:

    random_hosts:
    - 192.168.1.2/32
    - 172.16.0.2/32

    ec2_group:
    rules: "{{ random_hosts | make_rules('22,8080', 'tcp') }}"