Create the Blockade lambda functions.

def generate_lambda_functions():
    """Create the Blockade lambda functions."""
    logger.debug("[#] Setting up the Lambda functions")
    aws_lambda = boto3.client('lambda', region_name=PRIMARY_REGION)
    functions = aws_lambda.list_functions().get('Functions')
    existing_funcs = [x['FunctionName'] for x in functions]

    iam = boto3.resource('iam')
    account_id = iam.CurrentUser().arn.split(':')[4]

    responses = list()
    for label in LAMBDA_FUNCTIONS:
        if label in existing_funcs:
            logger.debug("[*] Lambda function %s already exists" % (label))
            continue
        dir_path = os.path.dirname(os.path.realpath(__file__))
        dir_path = dir_path.replace('/cli', '/aws')

        kwargs = {
            'Runtime': 'python2.7',
            'Role': 'arn:aws:iam::{0}:role/{1}'.format(account_id, BLOCKADE_ROLE),
            'Timeout': 3,
            'MemorySize': 128,
            'Publish': True,
            'Code': {
                'ZipFile': open("{0}/lambda-zips/{1}.zip".format(dir_path, label), 'rb').read()
            }
        }
        kwargs.update(LAMBDA_SCHEMA[label])
        logger.debug("[#] Setting up the %s Lambda function" % (label))
        response = aws_lambda.create_function(**kwargs)
        responses.append(response)
        logger.debug("[#] Successfully setup Lambda function %s" % (label))
    logger.info("[#] Successfully setup Lambda functions")

    return responses