Serverless Staging
A plugin to restrict the deployment of resources or functions on a per stage basis.
Installation
npm install serverless-plugin-staging --save-dev
or
yarn add serverless-plugin-staging --dev
Usage
In your project's serverless file, add serverless-plugin-staging
within the plugins entry.
Example:
plugins: - serverless-plugin-staging
Configuration
To restrict which assets are deployed within a stage, create a custom variable named staging
. Within that staged variable, excludeFunctions
will be used to control what functions are ignored during a deployment, and the excludeResources
to control the resources.
Example excluding the function prodFunctionHandler from deploying on beta stage
custom: staging: excludeFunctions: beta: - prodFunctionHandler
Example excluding the Uploads S3 Bucket from deploying on beta stage
custom: staging: excludeResources: beta: - UploadsBucket
Complete Example
service: serverless-plugin-staging-examplecustom: staging: excludeFunctions: beta: - prodFunctionHandler excludeResources: beta: - UploadsBucketprovider: name: aws runtime: nodejs8.10 region: us-west-2 functions: prodFunctionHandler: handler: handlers.prodLambda normalFunctionHandler: handler: handlers.normalLambdaresources: Resources: UploadsBucket: Type: AWS::S3::Bucket Properties: BucketName: Uploadsplugins: - serverless-plugin-staging