epsagon / serverless-package-external

Add external folders to the deploy package πŸ“¦

Home Page:https://epsagon.com/blog/how-to-package-external-code-in-aws-lambda-using-serverless-framework/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

serverless-package-external πŸ“¦

serverless semantic-release npm version Build Status

Deploy a Serverless Python Function services with external code

Before deploying, this plugin symlinks folders containing shared code into the root directory of your Serverless function. This plugin works also with serverless-offline plugin.

Installation

npm i serverless-package-external --save-dev

Usage

service: service-name

plugins:
  - serverless-package-external

functions:
  # Your functions here

custom:
  packageExternal:
    external:
      - '../common'
      - '../service-a/module'

Example Directory Structure

└── common
    └── resource.py
└── service-a
    └── handler.py
    └── serverless.yml
    └── module
        └── main.py
└── service-b
    └── handler.py
    └── serverless.yml

In handler.py, external code can be imported:

from common.resource import shared_resource

Licensing

serverless-package-external is licensed under the MIT License.

It is originally based on serverless-package-common.