export-serverless
v0.9.1-beta.2
Published
Deploy a fullstack serverless web app (including React, Angular, Node.js, Python) with an AWS CloudFront distribution in front of your API Gateway and static content from S3. Use your own custom domain, SSL from AWS, and AWS Web Application Firewall.
Maintainers
Readme
export-serverless
A serverless plugin that interpolates serverless config so that you can use it more flexibly.
Home page - https://github.com/anonflux/export-serverless
:zap: Pros
- TBD
Before you begin
- Install the serverless framework
npm install -g serverlessGetting started
First, Install and configure
Installation
npm install --save-dev export-serverlessConfiguration
In real world scenarios, there is more to ensuring quality than simply deploying the application. In applications using the serverless framework, this often presents a problem, as configuration is only available within the context of serverless commands.
Not anymore. This plugin will export serverless.yml configuration, interpolations, variables, etc to a file of your choosing.
# add to your serverless.yml
plugins:
- export-serverless
custom:
export:
toFile: './.service.config.json' # relative to process.cwd() file name/path config will be written to
config: # the output of the config file will be json objects that match this object
service:
name: 'service' # value corresponds to the 'service' property in serverless.yml
stackName: 'provider.stackName' # value corresponds to the 'provider.stackName' property in serverless.yml
envKey: 'custom.env-key' # value corresponds to the 'custom.env-key' property in serverless.ymlFor example, if serverless.yml looked like this:
# add to your serverless.yml
service: exporty-sport-port
provider:
stage: ${opt:stage, 'local'}
stackName: ${self:provider.stage}-${self:service}
custom:
env-key: ${self:provider.stage}
export:
toFile: './.service.config.json'
config:
service:
name: 'service'
stackName: 'provider.stackName'
envKey: 'custom.env-key'
plugins:
- export-serverlessWhen running npx sls export, the ./service.config.json file would look like this:
{
"service": {
"name": "exporty-sport-port"
},
"stackName": "local-exporty-sport-port",
"envKey": "local"
}To run
npx sls exportnpx sls export --stage={stagehere}
