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_)
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)
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_)
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)
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)