variable environment {}
variable lambda_function_name {}

provider "aws" {
  region = "us-east-1"
}

# Terraform backends cannot contain interpolations
terraform {
  backend "s3" {
    bucket         = "orcd-terraform-state"
    key            = "qa/mr-snowflake-dynamo-to-s3/terraform.tfstate"
    region         = "us-east-1"
    encrypt        = "true"
    dynamodb_table = "terraform-qa-mr-snowflake-dynamo-to-s3"
  }
}

module "dynamo_to_s3" {
  source = "../modules/lambda"

  s3_bucket          = "${var.environment}-orcdbucket"
  s3_path            = "mr-snowflake-dynamo-to-s3"
  lambda_name        = "${var.environment}-${var.lambda_function_name}"
  lambda_description = "This function saves DynamoDB events as json files on S3"

  lambda_function_environment_variables = {
    Environment      = "qa"
    S3_BUCKET_NAME   = "qa-orcdbucket"
    S3_BUCKET_FOLDER = "mr-snowflake-dynamo-to-s3"
  }

  lambda_function_handler = "lambda_dynamo_to_s3.handler"

  # This is a dummy zip used for function creation only.
  lambda_function_package_path = "${path.module}/lambda.zip"
  lambda_function_timeout      = 300
  vpc_security_group_ids       = ["sg-21f1ed44"]
  vpc_subnet_ids               = ["subnet-5366ef24", "subnet-cb4dbae0"]
}
