Select which resources are to be deployed based on region and stage. Only tested with AWS.
This plugin was originally forked from serverless-plugin-select. Difference between them is serverless-plugin-select is for filtering functions and this plugin is for filtering AWS resources while deploying.
Note: Requires Serverless v1.12.x or higher.
Install via npm in the root of your Serverless service:
npm install serverless-plugin-select-resource --save-dev
- Add the plugin to the
pluginsarray in your Serverlessserverless.yml, you should place it at the top of the list:
plugins:
- serverless-plugin-select-resource
- ...-
Add
regionsorstagesin your resources to select for deployment -
Run deploy command
sls deploy --stage [STAGE NAME] --region [REGION NAME] -
Resources will be deployed based on your selection
-
All done!
-
How it works? When deployment region or stage don't match resources regions or stages, that function will be deleted from deployment.
-
regions - Resource accepted deployment regions.
resources:
Resources:
AwesomeQueueInSingleRegion:
Type: AWS::SQS::Queue
Properties:
QueueName: awesome-queue-in-single-region
regions:
- 'eu-central-1'
- ...- stages - Resource accepted deployment stages.
resources:
Resources:
AwesomeQueueInSingleStage:
Type: AWS::SQS::Queue
Properties:
QueueName: awesome-queue-in-single-stage
stages:
- dev
- prodHelp us making this plugin better and future proof.
- Clone the code
- Install the dependencies with
npm install - Create a feature branch
git checkout -b new_feature - Lint with standard
npm run lint
This software is released under the MIT license. See the license file for more details.