JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 2
  • Score
    100M100P100Q30095F
  • License Apache-2.0

A serverless application to automatically manage and delete old AWS Lambda Layer versions, retaining only the specified number of most recent versions.

Package Exports

  • lambda-layer-version-cleaner
  • lambda-layer-version-cleaner/lib/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (lambda-layer-version-cleaner) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

NPM version PyPI version Release License

lambda-layer-version-cleaner

lambda-layer-version-cleaner is a CDK Construct that helps you manage and automatically clean up old versions of AWS Lambda Layers. It works with both JavaScript / TypeScript and Python CDK apps. Please note that this cleaner will only clean up versions of Lambda Layers in the region where it's deployed.

Installation

For JavaScript / TypeScript projects:

npm install lambda-layer-version-cleaner

For Python projects:

pip install lambda-layer-version-cleaner

Usage

To use the LambdaLayerVersionCleaner in your CDK project, simply import it and add it to your stack.

JavaScript / TypeScript

import * as cdk from 'aws-cdk-lib';
import * as events from 'aws-cdk-lib/aws-events';
import { LambdaLayerVersionCleaner } from 'lambda-layer-version-cleaner';

const app = new cdk.App();
const stack = new cdk.Stack(app, 'ExampleStack');

new LambdaLayerVersionCleaner(stack, 'LambdaLayerVersionCleaner', {
  retainVersions: '5',
  layerCleanerSchedule: events.Schedule.rate(cdk.Duration.days(7)),
});

Python

from aws_cdk import core as cdk
from aws_cdk.aws_events import Schedule
from aws_cdk.core import Duration
from lambda_layer_version_cleaner import LambdaLayerVersionCleaner

app = cdk.App()
stack = cdk.Stack(app, "ExampleStack")

LambdaLayerVersionCleaner(stack, "LambdaLayerVersionCleaner",
    retain_versions="5",
    layer_cleaner_schedule=Schedule.rate(Duration.days(7))
)

app.synth()

Configuration

The LambdaLayerVersionCleaner construct takes two optional parameters:

  • retainVersions (default: '5'): The number of layer versions to retain, specified as a string containing a positive integer. The cleaner will delete older versions beyond this count. Note that this value should be a string, not a number. If not specified, the default is '5'. Note that if a Layer has only one version, it won't be deleted.
  • layerCleanerSchedule (default: events.Schedule.rate(cdk.Duration.days(1))): The schedule for running the cleanup process. If not specified, the default is to run once per day.