73 lines
No EOL
1.6 KiB
YAML
73 lines
No EOL
1.6 KiB
YAML
app: secret-santa
|
|
service: secret-santa
|
|
|
|
frameworkVersion: '3'
|
|
configValidationMode: error
|
|
provider:
|
|
name: aws
|
|
runtime: python3.11
|
|
region: eu-west-1
|
|
environment:
|
|
SECRETSANTA_SERVER_URL: "https://foo.bar"
|
|
SECRETSANTA_S3_BUCKET_NAME: ${env:SECRETSANTA_S3_BUCKET_NAME}
|
|
SECRETSANTA_S3_ACCESS_KEY_ID: ${env:SECRETSANTA_S3_ACCESS_KEY_ID}
|
|
SECRETSANTA_S3_SECRET_ACCESS_KEY: ${env:SECRETSANTA_S3_SECRET_ACCESS_KEY}
|
|
|
|
package:
|
|
excludeDevDependencies: true
|
|
individually: false
|
|
patterns:
|
|
- '!./**'
|
|
- ./*.py
|
|
- ../../../secretsanta/**.py
|
|
|
|
custom:
|
|
pythonRequirements:
|
|
dockerizePip: true
|
|
zip: true
|
|
slim: true
|
|
layer: true
|
|
prune:
|
|
automatic: true
|
|
includeLayers: true
|
|
number: 1
|
|
apiGatewayCaching:
|
|
enabled: true
|
|
apiGatewayThrottling:
|
|
maxRequestsPerSecond: 100
|
|
maxConcurrentRequests: 5
|
|
|
|
plugins:
|
|
- serverless-python-requirements
|
|
- serverless-offline
|
|
- serverless-prune-plugin
|
|
- serverless-api-gateway-caching
|
|
- serverless-api-gateway-throttling
|
|
|
|
functions:
|
|
get_participants:
|
|
handler: app.get_participants
|
|
layers:
|
|
- Ref: PythonRequirementsLambdaLayer
|
|
events:
|
|
- httpApi:
|
|
path: /api/v1/groups/{group_uuid}
|
|
method: get
|
|
|
|
create_group:
|
|
handler: app.create_group
|
|
layers:
|
|
- Ref: PythonRequirementsLambdaLayer
|
|
events:
|
|
- httpApi:
|
|
path: /api/v1/groups/{group_uuid}
|
|
method: put
|
|
|
|
get_pair:
|
|
handler: app.get_pair
|
|
layers:
|
|
- Ref: PythonRequirementsLambdaLayer
|
|
events:
|
|
- httpApi:
|
|
path: /api/v1/groups/{group_uuid}/pair/{participant}
|
|
method: get |