terraform {
  required_providers {
    alicloud = {
      source  = "aliyun/alicloud"
      version = "1.261.0"
    }
  }

  backend "oss" {
    profile = "default"
  }
}
provider "alicloud" {
  profile = var.account
}

variable "account" {
  type = string
}

variable "env" {
  type = string
}

variable "logical_region_name" {
  type = string
}

variable "controlplane_role_arns" {
  type = list(string)
}

variable "auto_deploy_owner_tag" {
  type = string
}

module "dataplane-manager" {
  source = "../../modules/dataplane"

  assumed_role_name       = "${var.env}-${var.logical_region_name}-dataplane-manager-assumed"
  profile = var.account
  controlplane_role_arns = var.controlplane_role_arns
  system_policies = [
    "AliyunOSSFullAccess",
    "AliyunECSFullAccess",
    "AliyunVPCFullAccess",
    "AliyunCSFullAccess",
    "AliyunPrivateLinkFullAccess",
    "AliyunNLBFullAccess",
  ]
  auto_deploy_owner_tag = var.auto_deploy_owner_tag
}

output "role_id" {
  value = module.dataplane-manager.assumed_role_id
}

output "role_name" {
  value = module.dataplane-manager.assumed_role_name
}

output "role_arn" {
  value = module.dataplane-manager.assumed_role_arn
}
