Skip to content

Instantly share code, notes, and snippets.

@thanakijwanavit
Last active October 21, 2020 06:09
Show Gist options
  • Save thanakijwanavit/f694e6be536a5b4c2b0ab5fa2eb1d8e7 to your computer and use it in GitHub Desktop.
Save thanakijwanavit/f694e6be536a5b4c2b0ab5fa2eb1d8e7 to your computer and use it in GitHub Desktop.
from villaWalletDatabase.database import getMember, setMember, addMember, removeMember, test
Resources:
getMember:
Type: AWS::Serverless::Function
Properties:
CodeUri: getSetData
Handler: app.getMember
Runtime: python3.8
FunctionName: !Join [ "-" , [ !Ref ROOTSTACKNAME, "get-member"]]
Policies:
- DynamoDBWritePolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
- DynamoDBReadPolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
setMember:
Type: AWS::Serverless::Function
Properties:
CodeUri: getSetData
Handler: app.setMember
Runtime: python3.8
FunctionName: !Join [ "-" , [ !Ref ROOTSTACKNAME, "set-member"]]
Policies:
- DynamoDBWritePolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
- DynamoDBReadPolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
addMember:
Type: AWS::Serverless::Function
Properties:
CodeUri: getSetData
Handler: app.addMember
Runtime: python3.8
FunctionName: !Join [ "-" , [ !Ref ROOTSTACKNAME, "add-member"]]
Policies:
- DynamoDBWritePolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
- DynamoDBReadPolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
removeMember:
Type: AWS::Serverless::Function
Properties:
CodeUri: getSetData
Handler: app.removeMember
Runtime: python3.8
FunctionName: !Join [ "-" , [ !Ref ROOTSTACKNAME, "remove-member"]]
Policies:
- DynamoDBWritePolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
- DynamoDBReadPolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
- DynamoDBCrudPolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
test:
Type: AWS::Serverless::Function
Properties:
CodeUri: getSetData
Handler: app.test
Runtime: python3.8
FunctionName: !Join [ "-" , [ !Ref ROOTSTACKNAME, "test-member"]]
Policies:
- DynamoDBWritePolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
- DynamoDBReadPolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
- DynamoDBCrudPolicy:
TableName: !Join [ "-" , ["member", "*", !Ref BRANCH]]
MemberDatabase:
Type: AWS::DynamoDB::Table
Properties:
AttributeDefinitions:
- AttributeName: hashedPhone
AttributeType: S
- AttributeName: memberId
AttributeType: S
- AttributeName: tm_code
AttributeType: S
- AttributeName: tm_refcode
AttributeType: S
BillingMode: PAY_PER_REQUEST
KeySchema:
- AttributeName: hashedPhone
KeyType: HASH
- AttributeName: memberId
KeyType: RANGE
GlobalSecondaryIndexes:
- IndexName: tm_code
KeySchema:
- AttributeName: tm_code
KeyType: HASH
Projection:
ProjectionType: ALL
- IndexName: tm_refcode
KeySchema:
- AttributeName: tm_refcode
KeyType: HASH
Projection:
ProjectionType: ALL
PointInTimeRecoverySpecification:
PointInTimeRecoveryEnabled: true
TableName: !Join [ "-" , ["member", "database", !Ref BRANCH]]
MemberDatabaseLogs:
Type: AWS::DynamoDB::Table
Properties:
AttributeDefinitions:
- AttributeName: logType
AttributeType: S
- AttributeName: timeStamp
AttributeType: N
BillingMode: PAY_PER_REQUEST
KeySchema:
- AttributeName: logType
KeyType: HASH
- AttributeName: timeStamp
KeyType: RANGE
TableName: !Join [ "-" , ["member", "wallet-database-log", !Ref BRANCH]]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment