The serverless-localstack
project has been passed to localstack org. This repository is no longer under active development.
Serverless Plugin to support running against Atlassian Labs Localstack.
This plugin allows any requests to AWS to be redirected to a running Localstack instance.
WARNING: This plugin is very much WIP
Pre-requisites:
- Localstack
The easiest way to get started is to install via npm.
npm install -g serverless
npm install --save-dev serverless-localstack
If you'd like to install serverless-localstack via source:
git clone https://github.com/temyers/serverless-localstack
cd serverless-localstack
npm link
Use npm link
to reference the plugin
cd project-path/
npm link serverless-localstack
There are two ways to configure the plugin, via a JSON file or via serverless.yml. There are two supported methods for configuring the endpoints, globally via the "host" property, or individually. These properties may be mixed, allowing for global override support while also override specific endpoints.
A "host" or individual endpoints must be configured or this plugin will be deactivated.
service: myService
plugins:
- serverless-localstack
custom:
localstack:
host: http://localhost
endpoints:
S3: http://localhost:4572
DynamoDB: http://localhost:4570
CloudFormation: http://localhost:4581
Elasticsearch: http://localhost:4571
ES: http://localhost:4578
SNS: http://localhost:4575
SQS: http://localhost:4576
Lambda: http://localhost:4574
Kinesis: http://localhost:4568
service: myService
plugins:
- serverless-localstack
custom:
localstack:
endpointFile: path/to/file.json
serverless deploy --stage local
would deploy to localstack.serverless deploy --stage production
would deploy to aws.
service: myService
plugins:
- serverless-localstack
custom:
localstack:
stages:
- local
- dev
endpointFile: path/to/file.json
For full documentation, see https://bitbucket.org/atlassian/localstack
The easiest way to get started with Localstack is to install it via Python's pip.
pip install localstack
Clone the repository
git clone git@bitbucket.org:atlassian/localstack.git
There are multiple ways to run Localstack.
If Localstack is installed via pip
localstack start --docker
If Localstack is installed via source
make docker-run
If Localstack is installed via pip
localstack start
If Localstack is installed via source
make infra
Setting up a development environment is easy using Serverless' plugin framework.
git clone https://github.com/temyers/serverless-localstack
cd /path/to/serverless-localstack
npm link
cd myproject
npm link serverless-localstack
An optional debug flag is supported via serverless.yml that will enable additional debug logs.
custom:
localstack:
debug: true
yarn install
yarn version
npm login
npm publish
git push --tags