def test_get_all_elbs_v2(): from lemur.plugins.lemur_aws.elb import get_all_elbs_v2 ec2 = boto3.resource("ec2", region_name="us-east-1") elbv2 = boto3.client("elbv2", region_name="us-east-1") elbs = get_all_elbs_v2(account_number="123456789012", region="us-east-1") assert not elbs vpc = ec2.create_vpc(CidrBlock="10.0.1.0/24") subnet1 = ec2.create_subnet(VpcId=vpc.id, CidrBlock="10.0.1.128/25", AvailabilityZone="us-east-1b") elbv2.create_load_balancer( Name="test-lbv2", Subnets=[ subnet1.id, ], ) elbs = get_all_elbs_v2(account_number="123456789012", region="us-east-1") assert "test-lbv2" in [elb["LoadBalancerName"] for elb in elbs] elbv2.create_load_balancer(Name="test-lbv2-ignored", Subnets=[ subnet1.id, ], Tags=[{ "Key": "lemur-test-ignore", "Value": "", }]) elbs = get_all_elbs_v2(account_number="123456789012", region="us-east-1") assert "test-lbv2" in [elb["LoadBalancerName"] for elb in elbs] assert "test-lbv2-ignored" not in [elb["LoadBalancerName"] for elb in elbs]
def get_endpoints(self, options, **kwargs): endpoints = [] account_number = self.get_option("accountNumber", options) regions = self.get_option("regions", options) if not regions: regions = ec2.get_regions(account_number=account_number) else: regions = regions.split(",") for region in regions: elbs = elb.get_all_elbs(account_number=account_number, region=region) current_app.logger.info( "Describing classic load balancers in {0}-{1}".format( account_number, region)) for e in elbs: endpoints.extend(get_elb_endpoints(account_number, region, e)) # fetch advanced ELBs elbs_v2 = elb.get_all_elbs_v2(account_number=account_number, region=region) current_app.logger.info( "Describing advanced load balancers in {0}-{1}".format( account_number, region)) for e in elbs_v2: endpoints.extend( get_elb_endpoints_v2(account_number, region, e)) return endpoints
def get_endpoints(self, options, **kwargs): endpoints = [] account_number = self.get_option('accountNumber', options) regions = self.get_option('regions', options) if not regions: regions = ec2.get_regions(account_number=account_number) else: regions = regions.split(',') for region in regions: elbs = elb.get_all_elbs(account_number=account_number, region=region) current_app.logger.info("Describing classic load balancers in {0}-{1}".format(account_number, region)) for e in elbs: endpoints.extend(get_elb_endpoints(account_number, region, e)) # fetch advanced ELBs elbs_v2 = elb.get_all_elbs_v2(account_number=account_number, region=region) current_app.logger.info("Describing advanced load balancers in {0}-{1}".format(account_number, region)) for e in elbs_v2: endpoints.extend(get_elb_endpoints_v2(account_number, region, e)) return endpoints
def get_endpoints(self, options, **kwargs): endpoints = [] account_number = self.get_option("accountNumber", options) regions = self.get_option("regions", options) if not regions: regions = ec2.get_regions(account_number=account_number) else: regions = "".join(regions.split()).split(",") for region in regions: elbs = elb.get_all_elbs(account_number=account_number, region=region) current_app.logger.info({ "message": "Describing classic load balancers", "account_number": account_number, "region": region, "number_of_load_balancers": len(elbs) }) for e in elbs: endpoints.extend(get_elb_endpoints(account_number, region, e)) # fetch advanced ELBs elbs_v2 = elb.get_all_elbs_v2(account_number=account_number, region=region) current_app.logger.info({ "message": "Describing advanced load balancers", "account_number": account_number, "region": region, "number_of_load_balancers": len(elbs_v2) }) for e in elbs_v2: endpoints.extend(get_elb_endpoints_v2(account_number, region, e)) return endpoints
def test_get_all_elbs_v2(): from lemur.plugins.lemur_aws.elb import get_all_elbs_v2 elbs = get_all_elbs_v2(account_number="123456789012", region="us-east-1") assert elbs