module aws_provider_service {
  source = "git::ssh://git@bitbucket.org/netfoundry/nf-mop-tf.git//modules/aws/ecs_fargate_service"

  service_name = local.workspace["service_name"]
  container_count = local.workspace["task_count"]
  task_definition = data.template_file.task_definition.rendered
  task_role_arn = aws_iam_role.aws_provider_task_role.arn
  registry_arn = aws_service_discovery_service.aws_provider_service.arn
  ecs_cluster_id = data.terraform_remote_state.mop_core.outputs.ecs_cluster_id
  cpu = "1024"
  memory = "2048"
  execution_role_arn = aws_iam_role.aws_provider_task_role.arn
  security_groups = [
    aws_security_group.aws_provider_service.id,
    data.terraform_remote_state.mop_core.outputs.sg_alb_id

  ]
  subnets = data.terraform_remote_state.mop_core.outputs.vpc_subnet_private_ids
  log_retention = 30
}



data template_file "task_definition" {
  template = file("${path.module}/templates/task-definition.json")

  vars = {
    image_url = "745435643501.dkr.ecr.us-east-1.amazonaws.com/aws-provider:${data.aws_ssm_parameter.container_image.value}"
    #image_url = "netfoundry/aws-provider:${data.aws_ssm_parameter.container_image.value}"
    #docker_hub_secret_arn = data.terraform_remote_state.mop_core.outputs.dockerhub_secret_arn
    container_name = local.workspace["service_name"]
    container_port = local.workspace["container_port"]
    service_endpoint = "${local.workspace["short_name"]}.${data.terraform_remote_state.mop_core.outputs.ecs_private_discovery_namespace_name}"
    health_check_path = local.workspace["health_check_path"]
    subdomain = local.workspace["subdomain"]
    log_group_region = local.workspace["region"]
    log_group_name = module.aws_provider_service.cwlog_group_name
    spring_profiles_active = local.workspace["deploy_env_name"]
    aws_default_region = local.workspace["region"]
    auth0_client_id = auth0_client.client.client_id
    auth0_client_secret = auth0_client.client.client_secret
    deploy_environment = local.workspace["deploy_env_name"]
  }

}
