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

  environment              = var.environment
  application_family       = var.application_family
  use_container_image      = true
  lambda_name              = format("%s-%s", var.service_name, var.lambda_generate_error_report_name)
  lambda_description       = "Generate error report for given products and asset types."
  datadog_advanced_enabled = var.datadog_advanced_enabled
  datadog_enabled          = var.datadog_enabled
  lambda_function_timeout  = var.lambda_default_timeout
  vpc_enabled              = true
  vpc_id                   = module.vpc_info.vpc_id
  vpc_subnet_ids           = module.vpc_info.default_private_subnet_ids

  lambda_function_environment_variables = {
    Environment          = var.environment
    SENTRY_DSN           = module.sentry_generate_error_report.sentry_key_dsn_public_output
    S3_INPUT_BUCKET      = module.bulk_asset_download_input_bucket.s3_bucket_name_output
    S3_OUTPUT_BUCKET     = module.bulk_asset_download_output_bucket.s3_bucket_name_output
  }

  iam_managed_policy_attachments = [
    aws_iam_policy.s3_bulk_asset_download_input_bucket_access_policy.arn,
    aws_iam_policy.s3_bulk_asset_download_output_bucket_access_policy.arn,
  ]
}
