module "lambda_playwright_test_runner" {
  source = "git@github.com:theorchard/terraform-lambda.git//?ref=5.2.2"

  environment               = var.environment
  application_family        = var.application_family
  lambda_name               = var.service_name
  lambda_description        = "Run playwright tests"
  lambda_function_timeout   = "900"
  use_container_image       = true
  vpc_create_security_group = true

  lambda_function_memory_size            = 4096
  lambda_function_ephemeral_storage_size = 2048

  lambda_function_reserved_concurrent_executions = var.lambda_function_concurrent_executions

  vpc_id         = module.vpc_info.vpc_id
  vpc_subnet_ids = module.vpc_info.default_private_subnet_ids

  iam_managed_policy_attachments = [
    aws_iam_policy.playwright_dynamoDb_policy.arn,
    aws_iam_policy.secrets_manager_policy.arn,
    aws_iam_policy.s3_playwright_read_write_policy.arn,
  ]

  lambda_function_environment_variables = {
    FRAMEWORK_ENV = var.environment
    RUNTIME_ENV   = "lambda"
  }

  datadog_function_destination_lambda_name = "DatadogLambdaFunction"
  datadog_advanced_enabled                 = true
}
