Initial implementation of elb scheme

This commit is contained in:
Chris Henry 2015-12-02 17:46:24 -05:00
parent 1bca6f2849
commit 6017a481cf
2 changed files with 9 additions and 7 deletions

View File

@ -44,13 +44,14 @@ class FakeBackend(object):
class FakeLoadBalancer(object):
def __init__(self, name, zones, ports):
def __init__(self, name, zones, ports, scheme='internet-facing',):
self.name = name
self.health_check = None
self.instance_ids = []
self.zones = zones
self.listeners = []
self.backends = []
self.scheme = scheme
self.attributes = FakeLoadBalancer.get_default_attributes()
self.policies = Policies()
self.policies.other_policies = []
@ -135,8 +136,10 @@ class ELBBackend(BaseBackend):
def __init__(self):
self.load_balancers = {}
def create_load_balancer(self, name, zones, ports):
new_load_balancer = FakeLoadBalancer(name=name, zones=zones, ports=ports)
def create_load_balancer(self, name, zones, ports, scheme='internet-facing'):
print scheme
new_load_balancer = FakeLoadBalancer(name=name, zones=zones, ports=ports, scheme=scheme)
self.load_balancers[name] = new_load_balancer
return new_load_balancer

View File

@ -21,17 +21,16 @@ class ELBResponse(BaseResponse):
return elb_backends[self.region]
def create_load_balancer(self):
"""
u'Scheme': [u'internet-facing'],
"""
load_balancer_name = self._get_param('LoadBalancerName')
availability_zones = self._get_multi_param("AvailabilityZones.member")
ports = self._get_list_prefix("Listeners.member")
scheme = self._get_param('Scheme')
self.elb_backend.create_load_balancer(
name=load_balancer_name,
zones=availability_zones,
ports=ports,
scheme=scheme
)
template = self.response_template(CREATE_LOAD_BALANCER_TEMPLATE)
return template.render()
@ -325,7 +324,7 @@ DESCRIBE_LOAD_BALANCERS_TEMPLATE = """<DescribeLoadBalancersResponse xmlns="http
</AvailabilityZones>
<CanonicalHostedZoneName>tests.us-east-1.elb.amazonaws.com</CanonicalHostedZoneName>
<CanonicalHostedZoneNameID>Z3ZONEID</CanonicalHostedZoneNameID>
<Scheme>internet-facing</Scheme>
<Scheme>{{ load_balancer.scheme }}</Scheme>
<DNSName>tests.us-east-1.elb.amazonaws.com</DNSName>
<BackendServerDescriptions>
{% for backend in load_balancer.backends %}