Parameters:
  EnvironmentName:
    Description: An environment name that is prefixed to resource names 
    Type: String
    Default: "analytics"
Resources:
  DynamoDB:
    Type: AWS::DynamoDB::Table
    Properties: 
      TableName: !Sub ${EnvironmentName}-dynamodb
      AttributeDefinitions: 
        - AttributeName: "name"
          AttributeType: "S"
        - AttributeName: "phone"
          AttributeType: "S"
      KeySchema:
        - AttributeName: 'name'
          KeyType: "HASH"
        - AttributeName: 'phone'
          KeyType: "RANGE"
      BillingMode: PAY_PER_REQUEST
      Tags: 
        - Key: Name
          Value: !Sub ${EnvironmentName}-dynamodb
Outputs:
  DynamoDB:
    Description: "DynamoDB Table"
    Value: !Ref DynamoDB
    Export:
      Name:
        'Fn::Sub': '${AWS::StackName}-DynamoDB'