Serverless Plugin VPC Eni Cleanup

Automatic cleanup of VPC network interfaces on stage removal

user  

medikoo

*nix build status Windows build status Tests coverage Transpilation status npm version

serverless-plugin-vpc-eni-cleanup

Cleanup of VPC network interfaces on stage removal

Removal of stage (so CloudFormation stack deletion) that involves VPC lambda functions is very slow.
"Waiting for NetworkInterfaces associated with the Lambda Function to be cleaned up" process takes usually around 40 minutes.

While the AWS team works on improving that, the workaround for a meantime is to remove those interfaces manually, so stack deletion finalizes in reasonable time.

This plugin removes all detected network interfaces in parallel to stack deletion process.

Installation

npm install serverless-plugin-vpc-eni-cleanup

Configuration

Activate plugin in serverless.yml

plugins:
 - serverless-plugin-vpc-eni-cleanup

Following IAM policy needs to be ensured for plugin to work without issues

{
  "Effect": "Allow",
  "Action": [
    "ec2:DeleteNetworkInterface",
    "ec2:DetachNetworkInterface",
    "ec2:DescribeNetworkInterfaces"
  ],
  "Resource": ["*"]
}

That's it. Having that, with every sls remove operation plugin will attempt to delete discovered network interfaces

Tests

npm test
view on Github

Latest commit b2f54ec on Sep 24, 2017

New to serverless?

To get started, pop open your terminal & run:

npm install serverless -g