# Lambda defintion for gda_knowledge_graph step

# lambda defination
module "lambda_gda_knowledge_graph" {
  source = "git@github.com:theorchard/terraform-lambda.git//?ref=4.3.0"

  environment         = var.environment
  application_family  = var.application_family
  use_container_image = true
  lambda_name         = var.lambda_name_knowledge_graph
  lambda_description  = "For gda_knowledge_graph step in step function."

  lambda_function_environment_variables = {
    ENVIRONMENT       = var.environment
    SENTRY_DSN        = module.sentry_gda_score_calculation.sentry_key_dsn_public_output
    TOPIC_NAME        = "event.gdaSignup"
    DD_LAMBDA_HANDLER = var.lambda_handler
  }

  lambda_function_timeout                        = var.lambda_default_timeout
  vpc_id                                         = var.vpc_id
  vpc_subnet_ids                                 = var.vpc_subnet_ids
  lambda_function_reserved_concurrent_executions = var.lambda_concurrent_executions
  datadog_advanced_enabled                       = var.datadog_enabled
  dlq_type                                       = "sqs"
  zappa_s3_policy_enabled                        = false
  lambda_function_memory_size                    = "256"
  lambda_function_handler                        = var.lambda_handler
}


# create datadog dashboards.
module "datadog_lambda_gda_knowledge_graph" {
  source = "git@github.com:theorchard/terraform-datadog.git//modules/lambda?ref=6.13.9"

  environment                       = var.environment
  service_name                      = var.lambda_name_knowledge_graph
  lambda_invocation_monitor_enabled = false
  notification_endpoints            = var.datadog_notification_endpoints
}
