in workload-management/s3-trigger-ecs-task/s3-file-processor/utils/Dynamodb.go [231:261]
func createTable() error {
_, err := svc.CreateTable(&dynamodb.CreateTableInput{
AttributeDefinitions: []*dynamodb.AttributeDefinition{
{
AttributeName: aws.String(hashKey),
AttributeType: aws.String("S"),
},
},
KeySchema: []*dynamodb.KeySchemaElement{
{
AttributeName: aws.String(hashKey),
KeyType: aws.String("HASH"),
},
},
BillingMode: aws.String(dynamodb.BillingModePayPerRequest),
TableName: aws.String(tableName),
})
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case dynamodb.ErrCodeResourceInUseException:
return nil
default:
log.Printf("Error while creating table: %s", err.Error())
return aerr
}
}
}
return pollForTableCreation()
}