示例#1
0
def find_ingress_cidr(clients, cidr):
    for client in clients:
        if get_ingress_cidr(securitygroup.Client(client)).count(cidr) > 0:
            logger.info(cidr + ' is found in ' + client)
            return client
    logger.error('Could not find ' + cidr)
    return False
示例#2
0
def find_empty_slots(clients):
    for client in clients:
        empty_slot_ = get_empty_slots(securitygroup.Client(client))
        if empty_slot_ > 0:
            logger.debug(client + ' has ' + str(empty_slot_) + ' empty slots')
            return client
    logger.error('There is no empty slot')
    sys.exit()
示例#3
0
def remove_ingress(client, cidr):
    logger.info('- Removing obsolete cidr: ' + cidr + ' from ' + client)
    try:
        logger.info(
            securitygroup.Client(client).remove_ingress(IpProtocol='tcp',
                                                        FromPort=80,
                                                        ToPort=443,
                                                        CidrIp=cidr))
    except:
        logger.error("Unexpected error: " + str(sys.exc_info()[1]))
示例#4
0
def add_ingress(client, cidr):
    logger.info('- Adding cidr: ' + cidr + ' to ' + client)
    try:
        logger.info(
            securitygroup.Client(client).add_ingress(IpProtocol='tcp',
                                                     FromPort=80,
                                                     ToPort=443,
                                                     CidrIp=cidr))
    except:
        logger.error("Unexpected error: " + str(sys.exc_info()[1]))
示例#5
0
def get_configed_cidr(clients):
    configed_cidr_ = list()
    for client in clients:
        for ip in get_ingress_cidr(securitygroup.Client(client)):
            configed_cidr_.append(ip)
    return configed_cidr_
示例#6
0
def get_total_empty_slots(clients):
    total_empty_slots_ = 0
    for client in clients:
        total_empty_slots_ += get_empty_slots(securitygroup.Client(client))
    return total_empty_slots_