Exemple #1
0
def update(bosslet_config):
    rebuild_lambdas = False

    if rebuild_lambdas:
        pre_init(bosslet_config)

    config = create_config(bosslet_config)
    config.update()

    if rebuild_lambdas:
        freshen_lambda(bosslet_config, bosslet_config.names.cache_throttle.lambda_)
Exemple #2
0
    def run(self, args):
        if args.code:
            lambda_names = [
                k for k, v in lambdas.lambda_dirs(args.bosslet_config).items()
                if v == args.lambda_name
            ]
        else:
            lambda_names = [args.lambda_name]

        for lambda_name in lambda_names:
            lambdas.freshen_lambda(args.bosslet_config, lambda_name)
Exemple #3
0
def update(bosslet_config):
    if const.REDIS_THROTTLE_TYPE is not None:
        rebuild_lambdas = console.confirm("Rebuild lambdas", default=True)
    else:
        rebuild_lambdas = False

    if rebuild_lambdas:
        pre_init(bosslet_config)

    config = create_config(bosslet_config)
    config.update()

    if rebuild_lambdas:
        freshen_lambda(bosslet_config,
                       bosslet_config.names.cache_throttle.lambda_)
Exemple #4
0
def update(bosslet_config):
    # To correctly handle if a layer needs to be rebuilt build it
    # before the CF update and then refresh the code files after the
    # update.
    rebuild_lambdas = console.confirm("Rebuild lambdas", default=True)
    if rebuild_lambdas:
        pre_init(bosslet_config)

    user_data = build_user_data(bosslet_config)

    config = create_config(bosslet_config, user_data)
    config.update()

    if rebuild_lambdas:
        for lambda_name in get_lambdas(bosslet_config):
            freshen_lambda(bosslet_config, lambda_name)

    post_init(bosslet_config)
Exemple #5
0
from lib.lambdas import freshen_lambda, lambda_dirs

if __name__ == '__main__':
    parser = configuration.BossParser(
        description="Script for freshening lambda " +
        "function code from S3. To supply arguments " +
        "from a file, provide the filename prepended " + "with an '@'",
        fromfile_prefix_chars='@')
    parser.add_argument(
        '--code',
        action='store_true',
        help='The lambda_name is the name of the lambda directory ' +
        'used to built the code zip. All lambdas that used the ' +
        'code zip will be updated')
    parser.add_bosslet()
    parser.add_argument('lambda_name',
                        help='Name of lambda function to freshen.')

    args = parser.parse_args()

    if args.code:
        lambda_names = [
            k for k, v in lambda_dirs(args.bosslet_config).items()
            if v == args.lambda_name
        ]
    else:
        lambda_names = [args.lambda_name]

    for lambda_name in lambda_names:
        freshen_lambda(args.bosslet_config, lambda_name)