app: x-lambda-helpers
org: visionsofparadise
service:
  name: x-lambda-helpers

plugins:
  - serverless-dynamodb-local

provider:
  name: aws
  runtime: nodejs10.x
  stage: ${opt:stage, dev}
  region: ${opt:region, us-east-1}
  environment:
    STAGE: ${self:provider.stage}
    NODE_ENV: ${self:provider.stage}
    REGION: ${self:provider.region}
    DYNAMODB_TABLE: x-lambda-helpers-db-${self:provider.stage}
    LOG_LEVEL: info
    LOG_SILENT: "false"

custom:
  dynamodb:
    stages:
      - local
      - test
    start:
      port: 8000
      inMemory: true
      heapInitial: 200m
      heapMax: 1g
      migrate: true
      seed: true
      convertEmptyValues: true

resources:
  Resources:
    DynamoDB:
      Type: AWS::DynamoDB::Table
      Properties:
        TableName: ${self:provider.environment.DYNAMODB_TABLE}
        BillingMode: PAY_PER_REQUEST
        StreamSpecification:
          StreamViewType: NEW_AND_OLD_IMAGES
        TimeToLiveSpecification:
          AttributeName: expiresAt
          Enabled: true
        AttributeDefinitions:
          - AttributeName: pk
            AttributeType: S
          - AttributeName: sk
            AttributeType: S
        KeySchema:
          - AttributeName: pk
            KeyType: HASH
          - AttributeName: sk
            KeyType: RANGE

package:
  exclude:
    - node_modules/serverless-offline/**
