-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathserverless.yml
128 lines (122 loc) · 4.13 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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
service: cloudtrailTracker
provider:
name: aws
stage: dev
region: us-east-1
memorySize: 256
deploymentBucket:
name: cursocloudaws-trail
role: arn:aws:iam::111111111111:role/your-iam-role
plugins:
- serverless-python-requirements
package: # Optional deployment packaging configuration
include: # Specify the directories and files which should be included in the deployment package
- dynamodb/Logs.py
functions:
EventUploads:
handler: lambda/eventuploads/Upload.handler
name: ctt-upload-test
description: CloudTrail-Tracker (Event Uploads)
runtime: python3.6
memorySize: 128
timeout: 30
reservedConcurrency: 5
Query:
handler: lambda/query/getQuery.handler
name: ctt-query-test
description: cloudTrail-Tracker results
runtime: python3.6
memorySize: 512
timeout: 30
reservedConcurrency: 5
events:
- http:
path: scan/
method: get
cors: true
integration: lambda
request:
parameters:
querystrings:
count: false
eventName: false
from: false
to: false
param: false
value: false
template:
application/json: '{ "scan" : "scan",
"count" : "$input.params(''count'')",
"eventName" : "$input.params(''eventName'')",
"from" : "$input.params(''from'')",
"to" : "$input.params(''to'')",
"param" : "$input.params(''param'')",
"value" : "$input.params(''value'')"}'
- http:
path: users
method: get
cors: true
integration: lambda
request:
template:
application/json: '{ "list_users" : "list_users" }'
- http:
path: users/{user}
method: get
cors: true
integration: lambda
request:
parameters:
querystrings:
count: false
eventName: false
from: false
to: false
param: false
value: false
template:
application/json: '{ "user" : "$input.params(''user'')",
"count" : "$input.params(''count'')",
"eventName" : "$input.params(''eventName'')",
"from" : "$input.params(''from'')",
"to" : "$input.params(''to'')",
"param" : "$input.params(''param'')",
"value" : "$input.params(''value'')"}'
- http:
path: services
method: get
cors: true
integration: lambda
request:
template:
application/json: '{ "services_list" : "services_list" }'
- http:
path: parameters
method: get
cors: true
integration: lambda
request:
template:
application/json: '{ "parameters_list" : "parameters_list" }'
- http:
path: services/{service}
method: get
cors: true
integration: lambda
request:
parameters:
querystrings:
count: false
eventName: false
from: false
to: false
param: false
value: false
template:
application/json: '{ "service" : "$input.params(''service'')",
"count" : "$input.params(''count'')",
"eventName" : "$input.params(''eventName'')",
"from" : "$input.params(''from'')",
"to" : "$input.params(''to'')",
"param" : "$input.params(''param'')",
"value" : "$input.params(''value'')"}'