Deploy SNS Subscription to AWS in seconds with Serverless Components.
$ npm install -g @serverless/components
Just create a serverless.yml
file
$ touch serverless.yml
$ touch .env # your development AWS api keys
$ touch .env.prod # your production AWS api keys
the .env
files are not required if you have the aws keys set globally and you want to use a single stage, but they should look like this.
AWS_ACCESS_KEY_ID=XXX
AWS_SECRET_ACCESS_KEY=XXX
# serverless.yml
name: my-topic
stage: dev
AwsSnsSubscriptionLambda:
component: '@serverless/aws-sns-subscription'
inputs:
topic: arn:aws:sns:us-east-1:123456789012:my-topic
protocol: lambda
endpoint: arn:aws:lambda:us-east-1:123456789012:function:my-function
AwsSnsSubscriptionEmail:
component: '@serverless/aws-sns-subscription'
inputs:
topic: arn:aws:sns:us-east-1:123456789012:my-topic
protocol: email
endpoint: [email protected]
AwsSnsSubscription (master)$ components
AwsSnsSubscriptionLambda › outputs:
arn: 'arn:aws:sns:us-east-1:123456789012:my-topic:95e7dbca-9e45-4e4d-84f3-66f282b89b01'
AwsSnsSubscriptionEmail › outputs:
arn: 'arn:aws:sns:us-east-1:123456789012:my-topic:2495cad9-928a-4853-84b1-fcf613df61e7'
2s › dev › AwsSnsSubscription › done
AwsSnsSubscription (master)$
Checkout the Serverless Components repo for more information.