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

# Terraform backends cannot contain interpolations
terraform {
    backend "s3" {
        bucket         = "orcd-terraform-state"
        key            = "prod/lambda-ready-deliveries/terraform.tfstate"
        region         = "us-east-1"
        encrypt        = "true"
    }
}

module "buckets" {
    source                 = "../modules/bucket"
    environment            = "${var.environment}"
}

module "lambda_ready_deliveries" {
    source = "../modules/lambdas/ready_deliveries"

    environment                           = "${var.environment}"
    vpc_security_group_ids                = "${var.vpc_security_group_ids}"
    vpc_subnet_ids                        = "${var.vpc_subnet_ids}"
    lambda_memory_size                    = "${var.lambda_ready_deliveries_lambda_memory_size}"
    LOGGER_DSN                            = "${var.LOGGER_DSN}"
}

module "lambda_ready_deliveries_manager" {
    source = "../modules/lambdas/ready_deliveries_manager"

    environment                           = "${var.environment}"
    vpc_security_group_ids                = "${var.vpc_security_group_ids}"
    vpc_subnet_ids                        = "${var.vpc_subnet_ids}"
    lambda_memory_size                    = "${var.lambda_ready_deliveries_manager_lambda_memory_size}"
    LOGGER_DSN                            = "${var.LOGGER_DSN}"
}

module "lambda_ready_deliveries_datadog_dashboard" {
  source       = "git@github.com:theorchard/terraform-datadog.git//modules/lambda"
  environment  = "${var.environment}"
  service_name = "lambda-ready-deliveries"
}

module "lambda_ready_deliveries_manager_datadog_dashboard" {
  source       = "git@github.com:theorchard/terraform-datadog.git//modules/lambda"
  environment  = "${var.environment}"
  service_name = "lambda-ready-deliveries-manager"
}

