ec2stack/templates/securitygroups.xml (57 lines of code) (raw):

{% extends "response.xml" %} {% block response_content %} <securityGroupInfo> {% for securitygroup in response.securitygroup %} <item> <ownerId>{{ securitygroup.account }}</ownerId> <groupId>{{ securitygroup.id }}</groupId> <groupName>{{ securitygroup.name }}</groupName> <groupDescription>{{ securitygroup.description }}</groupDescription> <ipPermissions> {% for rule in securitygroup.ingressrule %} <item> <ipProtocol>{{ rule.protocol }}</ipProtocol> {% if rule.startport %} <fromPort>{{ rule.startport }}</fromPort> {% elif 'icmptype' in rule %} <fromPort>{{ rule.icmptype }}</fromPort> {% endif %} {% if 'endport' in rule %} <toPort>{{ rule.endport }}</toPort> {% elif 'icmpcode' in rule %} <toPort>{{ rule.icmpcode }}</toPort> {% endif %} <ipRanges> <item> <cidrIp>{{ rule.cidr }}</cidrIp> </item> </ipRanges> </item> {% endfor %} </ipPermissions> <ipPermissionsEgress> {% for rule in securitygroup.egressrule %} <item> <ipProtocol>{{ rule.protocol }}</ipProtocol> {% if rule.startport %} <fromPort>{{ rule.startport }}</fromPort> {% elif 'icmptype' in rule %} <fromPort>{{ rule.icmptype }}</fromPort> {% endif %} {% if 'endport' in rule %} <toPort>{{ rule.endport }}</toPort> {% elif 'icmpcode' in rule %} <toPort>{{ rule.icmpcode }}</toPort> {% endif %} <ipRanges> <item> <cidrIp>{{ rule.cidr }}</cidrIp> </item> </ipRanges> </item> {% endfor %} </ipPermissionsEgress> </item> {% endfor %} </securityGroupInfo> {% endblock %}