-
Notifications
You must be signed in to change notification settings - Fork 1
/
serverless.yml
49 lines (43 loc) · 1.4 KB
/
serverless.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
service: aws-scheduler-testing
provider:
name: aws
runtime: python3.7
stage: ${opt:stage, 'dev'}
region: ${opt:region, 'us-east-1'}
iamRoleStatements:
- Effect: Allow
Action:
- dynamodb:DescribeTable
- dynamodb:PutItem
- dynamodb:BatchWriteItem
Resource: { "Fn::Join": [":", ["arn:aws:dynamodb:${self:provider.region}", { "Ref": "AWS::AccountId" }, "table/aws-scheduler-testing" ] ] }
custom:
output_topic:
name:
arn: { "Fn::Join": [":", ["arn:aws:sns:${self:provider.region}", { "Ref": "AWS::AccountId" }, "table/scheduler-test-${self:provider.stage}" ] ] }
pythonRequirements:
pythonBin: python3
functions:
consumer:
handler: consumer.handle
events:
- sns:
arn:
Fn::Join:
- ':'
- - 'arn:aws:sns'
- Ref: 'AWS::Region'
- Ref: 'AWS::AccountId'
- "scheduler-test-${self:provider.stage}"
topicName: "scheduler-test-${self:provider.stage}"
producer:
handler: producer.handle
environment:
INPUT_TOPIC_ARN: 'arn:aws:sns:us-east-1:256608350746:scheduler-input-prod'
OUTPUT_TOPIC_ARN: { "Fn::Join": [":", ["arn:aws:sns:${self:provider.region}", { "Ref": "AWS::AccountId" }, "scheduler-test-${self:provider.stage}" ] ] }
plugins:
- serverless-python-requirements
package:
exclude:
- venv/**
- node_modules/**