Awesome
serverless-ini-env
Install
npm install -D serverless-ini-env
or
serverless plugin install --name serverless-ini-env
Add the plugin to your serverless.yml
file:
plugins:
- serverless-ini-env
Serverless configuration
custom:
serverless-ini-env:
dev: "./your_configs/dev.ini"
prod: "./your_configs/prod.ini"
functions:
my_function_name_a:
handler: handler.a_func
my_function_name_b:
handler: handler.b_func
Note:
If you did not specify any configuration, plugins will consider root folder and stage options ex.
sls deploy --stage qa
-> ./qa.ini
sls deploy --stage dev
-> ./dev.ini
Environment configuration example
./your_configs/dev.ini
# will be available for both functions
MY_GLOBAL_VAR=DEV_VALUE
[my_function_name_a]
NAME="function A"
FOO=DEV_VALUE
[my_function_name_b]
NAME="function B"
BAR=DEV_VALUE
[my_function_name_a,my_function_name_b]
SHARED_VARS="function A and B"
./your_configs/prod.ini
# will be available for both functions
MY_GLOBAL_VAR=PROD_VALUE
[my_function_name_a]
NAME="function A"
FOO=PROD_VALUE
[my_function_name_b]
NAME="function B"
BAR=PROD_VALUE
[my_function_name_a,my_function_name_b]
SHARED_VARS="function A and B"
Usage and command line options
# Update all lambda environments
sls update-environments --stage prod
# Update a single function environments vars
sls update-environments function -f my_function_name_a --stage qa
Contributing
Yes, thank you! This plugin is community-driven, most of its features are from different authors. Please update the docs and tests and add your name to the package.json file. We try to follow Airbnb's JavaScript Style Guide.
License
MIT