79 lines
No EOL
1.8 KiB
YAML
79 lines
No EOL
1.8 KiB
YAML
service: vxTwitter
|
|
|
|
provider:
|
|
name: aws
|
|
runtime: python3.6
|
|
stage: dev
|
|
iamRoleStatements:
|
|
- Effect: Allow
|
|
Action:
|
|
- dynamodb:Query
|
|
- dynamodb:Scan
|
|
- dynamodb:GetItem
|
|
- dynamodb:PutItem
|
|
- dynamodb:UpdateItem
|
|
- dynamodb:DeleteItem
|
|
Resource:
|
|
- { "Fn::GetAtt": ["vxTwitterDynamoTable", "Arn" ] }
|
|
environment:
|
|
CACHE_TABLE: ${self:custom.tableName}
|
|
RUNNING_SERVERLESS: 1
|
|
VXTWITTER_LINK_CACHE: dynamodb
|
|
VXTWITTER_DATABASE: none
|
|
VXTWITTER_DATABASE_TABLE: none
|
|
VXTWITTER_METHOD: youtube-dl
|
|
VXTWITTER_COLOR: \#43B581
|
|
VXTWITTER_APP_NAME: vxTwitter
|
|
VXTWITTER_REPO: https://github.com/dylanpdx/BetterTwitFix
|
|
VXTWITTER_URL: https://vxtwitter.com
|
|
# Twitter API keys
|
|
VXTWITTER_TWITTER_API_KEY: none
|
|
VXTWITTER_TWITTER_API_SECRET: none
|
|
VXTWITTER_TWITTER_ACCESS_TOKEN: none
|
|
VXTWITTER_TWITTER_ACCESS_SECRET: none
|
|
|
|
package:
|
|
patterns:
|
|
- '!node_modules/**'
|
|
- '!venv/**'
|
|
|
|
plugins:
|
|
- serverless-wsgi
|
|
- serverless-python-requirements
|
|
- serverless-plugin-common-excludes
|
|
- serverless-plugin-include-dependencies
|
|
|
|
functions:
|
|
vxTwitterApp:
|
|
handler: wsgi_handler.handler
|
|
url: true
|
|
layers:
|
|
- Ref: PythonRequirementsLambdaLayer
|
|
|
|
|
|
custom:
|
|
tableName: 'users-table-${self:provider.stage}'
|
|
wsgi:
|
|
app: twitfix.app
|
|
pythonRequirements:
|
|
layer: true
|
|
dockerizePip: true
|
|
|
|
|
|
resources:
|
|
Resources:
|
|
vxTwitterDynamoTable:
|
|
Type: 'AWS::DynamoDB::Table'
|
|
Properties:
|
|
AttributeDefinitions:
|
|
-
|
|
AttributeName: tweet
|
|
AttributeType: S
|
|
KeySchema:
|
|
-
|
|
AttributeName: tweet
|
|
KeyType: HASH
|
|
ProvisionedThroughput:
|
|
ReadCapacityUnits: 1
|
|
WriteCapacityUnits: 1
|
|
TableName: ${self:custom.tableName} |