Fix Project Name logic
This commit is contained in:
parent
042266f28c
commit
e270adf516
|
@ -64,11 +64,11 @@ locals {
|
|||
|
||||
module "lnd-prj" {
|
||||
source = "../../../modules/project"
|
||||
name = var.project_id["landing"]
|
||||
name = try(var.project_ids["landing"], "lnd")
|
||||
parent = try(var.project_create.parent, null)
|
||||
billing_account = try(var.project_create.billing_account_id, null)
|
||||
project_create = var.project_create != null
|
||||
prefix = var.project_create == null ? null : var.prefix
|
||||
project_create = can(var.project_ids["landing"])
|
||||
prefix = can(var.project_ids["landing"]) ? var.prefix : null
|
||||
# additive IAM bindings avoid disrupting bindings in existing project
|
||||
iam = var.project_create != null ? local.iam_lnd : {}
|
||||
iam_additive = var.project_create == null ? local.iam_lnd : {}
|
||||
|
|
|
@ -52,11 +52,11 @@ locals {
|
|||
|
||||
module "lod-prj" {
|
||||
source = "../../../modules/project"
|
||||
name = var.project_id["load"]
|
||||
name = try(var.project_ids["load"], "lod")
|
||||
parent = try(var.project_create.parent, null)
|
||||
billing_account = try(var.project_create.billing_account_id, null)
|
||||
project_create = var.project_create != null
|
||||
prefix = var.project_create == null ? null : var.prefix
|
||||
project_create = can(var.project_ids["load"])
|
||||
prefix = can(var.project_ids["load"]) ? var.prefix : null
|
||||
# additive IAM bindings avoid disrupting bindings in existing project
|
||||
iam = var.project_create != null ? local.iam_lod : {}
|
||||
iam_additive = var.project_create == null ? local.iam_lod : {}
|
||||
|
|
|
@ -73,11 +73,11 @@ locals {
|
|||
|
||||
module "orc-prj" {
|
||||
source = "../../../modules/project"
|
||||
name = var.project_id["orchestration"]
|
||||
name = try(var.project_ids["orchestration"], "orc")
|
||||
parent = try(var.project_create.parent, null)
|
||||
billing_account = try(var.project_create.billing_account_id, null)
|
||||
project_create = var.project_create != null
|
||||
prefix = var.project_create == null ? null : var.prefix
|
||||
project_create = can(var.project_ids["orchestration"])
|
||||
prefix = can(var.project_ids["orchestration"]) ? var.prefix : null
|
||||
# additive IAM bindings avoid disrupting bindings in existing project
|
||||
iam = var.project_create != null ? local.iam_orc : {}
|
||||
iam_additive = var.project_create == null ? local.iam_orc : {}
|
||||
|
|
|
@ -47,11 +47,11 @@ locals {
|
|||
|
||||
module "trf-prj" {
|
||||
source = "../../../modules/project"
|
||||
name = var.project_id["trasformation"]
|
||||
name = try(var.project_ids["trasformation"], "trf")
|
||||
parent = try(var.project_create.parent, null)
|
||||
billing_account = try(var.project_create.billing_account_id, null)
|
||||
project_create = var.project_create != null
|
||||
prefix = var.project_create == null ? null : var.prefix
|
||||
project_create = can(var.project_ids["trasformation"])
|
||||
prefix = can(var.project_ids["trasformation"]) ? var.prefix : null
|
||||
# additive IAM bindings avoid disrupting bindings in existing project
|
||||
iam = var.project_create != null ? local.iam_trf : {}
|
||||
iam_additive = var.project_create == null ? local.iam_trf : {}
|
||||
|
|
|
@ -63,11 +63,11 @@ locals {
|
|||
|
||||
module "dtl-0-prj" {
|
||||
source = "../../../modules/project"
|
||||
name = var.project_id["datalake-l0"]
|
||||
name = try(var.project_ids["datalake-l0"], "dtl-0")
|
||||
parent = try(var.project_create.parent, null)
|
||||
billing_account = try(var.project_create.billing_account_id, null)
|
||||
project_create = var.project_create != null
|
||||
prefix = var.project_create == null ? null : var.prefix
|
||||
project_create = can(var.project_ids["datalake-l0"])
|
||||
prefix = can(var.project_ids["datalake-l0"]) ? var.prefix : null
|
||||
# additive IAM bindings avoid disrupting bindings in existing project
|
||||
iam = var.project_create != null ? local.iam_dtl : {}
|
||||
iam_additive = var.project_create == null ? local.iam_dtl : {}
|
||||
|
@ -92,11 +92,11 @@ module "dtl-0-prj" {
|
|||
|
||||
module "dtl-1-prj" {
|
||||
source = "../../../modules/project"
|
||||
name = var.project_id["datalake-l1"]
|
||||
name = try(var.project_ids["datalake-l1"], "dtl-1")
|
||||
parent = try(var.project_create.parent, null)
|
||||
billing_account = try(var.project_create.billing_account_id, null)
|
||||
project_create = var.project_create != null
|
||||
prefix = var.project_create == null ? null : var.prefix
|
||||
project_create = can(var.project_ids["datalake-l1"])
|
||||
prefix = can(var.project_ids["datalake-l1"]) ? var.prefix : null
|
||||
# additive IAM bindings avoid disrupting bindings in existing project
|
||||
iam = var.project_create != null ? local.iam_dtl : {}
|
||||
iam_additive = var.project_create == null ? local.iam_dtl : {}
|
||||
|
@ -121,11 +121,11 @@ module "dtl-1-prj" {
|
|||
|
||||
module "dtl-2-prj" {
|
||||
source = "../../../modules/project"
|
||||
name = var.project_id["datalake-l2"]
|
||||
name = try(var.project_ids["datalake-l2"], "dtl-2")
|
||||
parent = try(var.project_create.parent, null)
|
||||
billing_account = try(var.project_create.billing_account_id, null)
|
||||
project_create = var.project_create != null
|
||||
prefix = var.project_create == null ? null : var.prefix
|
||||
project_create = can(var.project_ids["datalake-l2"])
|
||||
prefix = can(var.project_ids["datalake-l2"]) ? var.prefix : null
|
||||
# additive IAM bindings avoid disrupting bindings in existing project
|
||||
iam = var.project_create != null ? local.iam_dtl : {}
|
||||
iam_additive = var.project_create == null ? local.iam_dtl : {}
|
||||
|
@ -150,11 +150,11 @@ module "dtl-2-prj" {
|
|||
|
||||
module "dtl-plg-prj" {
|
||||
source = "../../../modules/project"
|
||||
name = var.project_id["datalake-playground"]
|
||||
name = try(var.project_ids["datalake-playground"], "dtl-plg")
|
||||
parent = try(var.project_create.parent, null)
|
||||
billing_account = try(var.project_create.billing_account_id, null)
|
||||
project_create = var.project_create != null
|
||||
prefix = var.project_create == null ? null : var.prefix
|
||||
project_create = can(var.project_ids["datalake-playground"])
|
||||
prefix = can(var.project_ids["datalake-playground"]) ? var.prefix : null
|
||||
# additive IAM bindings avoid disrupting bindings in existing project
|
||||
iam = var.project_create != null ? local.iam_dtl : {}
|
||||
iam_additive = var.project_create == null ? local.iam_dtl : {}
|
||||
|
|
|
@ -38,11 +38,11 @@ locals {
|
|||
|
||||
module "cmn-prj" {
|
||||
source = "../../../modules/project"
|
||||
name = var.project_id["common"]
|
||||
name = try(var.project_ids["common"], "cmn")
|
||||
parent = try(var.project_create.parent, null)
|
||||
billing_account = try(var.project_create.billing_account_id, null)
|
||||
project_create = var.project_create != null
|
||||
prefix = var.project_create == null ? null : var.prefix
|
||||
project_create = can(var.project_ids["common"])
|
||||
prefix = can(var.project_ids["common"]) ? var.prefix : null
|
||||
# additive IAM bindings avoid disrupting bindings in existing project
|
||||
iam = var.project_create != null ? local.iam_cmn : {}
|
||||
iam_additive = var.project_create == null ? local.iam_cmn : {}
|
||||
|
@ -53,8 +53,7 @@ module "cmn-prj" {
|
|||
])
|
||||
}
|
||||
|
||||
# Uncomment this section and assigne key links accondingly in local. variable
|
||||
# if you want to create KMS keys in the common projet
|
||||
# To create KMS keys in the common projet: uncomment this section and assigne key links accondingly in local.service_encryption_keys variable
|
||||
|
||||
# module "cmn-kms-0" {
|
||||
# source = "../../../modules/kms"
|
||||
|
|
|
@ -28,11 +28,11 @@ locals {
|
|||
|
||||
module "exp-prj" {
|
||||
source = "../../../modules/project"
|
||||
name = var.project_id["exposure"]
|
||||
name = try(var.project_ids["exposure"], "exp")
|
||||
parent = try(var.project_create.parent, null)
|
||||
billing_account = try(var.project_create.billing_account_id, null)
|
||||
project_create = var.project_create != null
|
||||
prefix = var.project_create == null ? null : var.prefix
|
||||
project_create = can(var.project_ids["exposure"])
|
||||
prefix = can(var.project_ids["exposure"]) ? var.prefix : null
|
||||
# additive IAM bindings avoid disrupting bindings in existing project
|
||||
iam = var.project_create != null ? local.iam_exp : {}
|
||||
iam_additive = var.project_create == null ? local.iam_exp : {}
|
||||
|
|
|
@ -17,24 +17,22 @@
|
|||
locals {
|
||||
_networks = {
|
||||
load = {
|
||||
network_name = element(split("/", var.network_config.network_self_link != null ? var.network_config.network_self_link : module.lod-vpc[0].self_link), length(split("/", var.network_config.network_self_link != null ? var.network_config.network_self_link : module.lod-vpc[0].self_link)) - 1)
|
||||
network = var.network_config.network_self_link != null ? var.network_config.network_self_link : module.lod-vpc[0].self_link
|
||||
subnet = var.network_config.network_self_link != null ? var.network_config.subnet_self_links.load : module.lod-vpc[0].subnet_self_links["${var.location_config.region}/${local.prefix_lod}-subnet"]
|
||||
network_name = coalesce(local._shared_vpc_network, module.lod-vpc[0].name)
|
||||
network = coalesce(var.network_config.network_self_link, module.lod-vpc[0].self_link)
|
||||
subnet = try(var.network_config.subnet_self_links.load, module.lod-vpc[0].subnet_self_links["${var.location_config.region}/${local.prefix_lod}-subnet"])
|
||||
}
|
||||
orchestration = {
|
||||
#TODO Fix Network name logic
|
||||
network_name = element(split("/", var.network_config.network_self_link != null ? var.network_config.network_self_link : module.orc-vpc[0].self_link), length(split("/", var.network_config.network_self_link != null ? var.network_config.network_self_link : module.orc-vpc[0].self_link)) - 1)
|
||||
network = var.network_config.network_self_link != null ? var.network_config.network_self_link : module.orc-vpc[0].self_link
|
||||
subnet = var.network_config.network_self_link != null ? var.network_config.subnet_self_links.orchestration : module.orc-vpc[0].subnet_self_links["${var.location_config.region}/${local.prefix_orc}-subnet"]
|
||||
network_name = coalesce(local._shared_vpc_network, module.orc-vpc[0].name)
|
||||
network = coalesce(var.network_config.network_self_link, module.orc-vpc[0].self_link)
|
||||
subnet = try(var.network_config.subnet_self_links.orchestration, module.orc-vpc[0].subnet_self_links["${var.location_config.region}/${local.prefix_orc}-subnet"])
|
||||
}
|
||||
transformation = {
|
||||
#TODO Fix Network name logic
|
||||
network_name = element(split("/", var.network_config.network_self_link != null ? var.network_config.network_self_link : module.trf-vpc[0].self_link), length(split("/", var.network_config.network_self_link != null ? var.network_config.network_self_link : module.trf-vpc[0].self_link)) - 1)
|
||||
network = var.network_config.network_self_link != null ? var.network_config.network_self_link : module.trf-vpc[0].self_link
|
||||
subnet = var.network_config.network_self_link != null ? var.network_config.subnet_self_links.transformation : module.trf-vpc[0].subnet_self_links["${var.location_config.region}/${local.prefix_trf}-subnet"]
|
||||
network_name = coalesce(local._shared_vpc_network, module.trf-vpc[0].name)
|
||||
network = coalesce(var.network_config.network_self_link, module.trf-vpc[0].self_link)
|
||||
subnet = try(var.network_config.subnet_self_links.transformation, module.trf-vpc[0].subnet_self_links["${var.location_config.region}/${local.prefix_trf}-subnet"])
|
||||
}
|
||||
}
|
||||
|
||||
_shared_vpc_network = try(regex("[a-z]([-a-z0-9]*[a-z0-9])?$", var.network_config.network_self_link), null)
|
||||
_shared_vpc_project = try(regex("projects/([a-z0-9-]{6,30})", var.network_config.network_self_link)[0], null)
|
||||
_shared_vpc_service_config = var.network_config.network_self_link != null ? {
|
||||
attach = true
|
||||
|
@ -45,7 +43,7 @@ locals {
|
|||
groups_iam = { for k, v in local.groups : k => "group:${v}" }
|
||||
service_encryption_keys = var.service_encryption_keys
|
||||
|
||||
# Uncomment this section and assigne comment the previous line
|
||||
# To create KMS keys in the common projet: uncomment assignement below and comment assignement above
|
||||
|
||||
# service_encryption_keys = {
|
||||
# bq = module.sec-kms-1.key_ids.bq
|
||||
|
|
|
@ -93,7 +93,7 @@ variable "project_create" {
|
|||
default = null
|
||||
}
|
||||
|
||||
variable "project_id" {
|
||||
variable "project_ids" {
|
||||
description = "Project id, references existing project if `project_create` is null."
|
||||
type = object({
|
||||
landing = string
|
||||
|
|
Loading…
Reference in New Issue