diff --git a/modules/terraform-cdp-azure-pre-reqs/README.md b/modules/terraform-cdp-azure-pre-reqs/README.md index a6f56e0..2badfe4 100644 --- a/modules/terraform-cdp-azure-pre-reqs/README.md +++ b/modules/terraform-cdp-azure-pre-reqs/README.md @@ -75,10 +75,11 @@ In each directory an example `terraform.tfvars.sample` values file is included t | [create\_azure\_cml\_nfs](#input\_create\_azure\_cml\_nfs) | Whether to create NFS for CML | `bool` | `false` | no | | [create\_azure\_storage\_network\_rules](#input\_create\_azure\_storage\_network\_rules) | Enable creation of network rules for the Azure Storage Accounts. | `bool` | `false` | no | | [create\_azure\_storage\_private\_endpoints](#input\_create\_azure\_storage\_private\_endpoints) | Flag to specify if Private Endpoints are created for each storage account. | `bool` | `true` | no | +| [create\_cdp\_resource\_group](#input\_create\_cdp\_resource\_group) | Flag to specify if the Resource Group for Cloudera Resources should be created | `bool` | `true` | no | | [create\_delegated\_subnet](#input\_create\_delegated\_subnet) | Flag to specify if the delegated subnet should be created. Only applicable if create\_vnet is true. | `bool` | `false` | no | | [create\_nat\_gateway](#input\_create\_nat\_gateway) | Flag to specify if the NAT Gateway should be created. Only applicable if create\_vnet is true. | `bool` | `true` | no | +| [create\_network\_resource\_group](#input\_create\_network\_resource\_group) | Flag to specify if the Resource Group for Network Resources should be created. Note that if create\_vnet is false this must be false. Note that if separate\_network\_resource\_group is false this will not be used. | `bool` | `true` | no | | [create\_private\_flexible\_server\_resources](#input\_create\_private\_flexible\_server\_resources) | Flag to specify if resources to support a Private Postgres flexible server should be created. | `bool` | `null` | no | -| [create\_resource\_group](#input\_create\_resource\_group) | Flag to specify if the Resource Group should be created | `bool` | `true` | no | | [create\_vm\_mounting\_nfs](#input\_create\_vm\_mounting\_nfs) | Whether to create a VM which mounts this NFS | `bool` | `true` | no | | [create\_vnet](#input\_create\_vnet) | Flag to specify if the VNet should be created | `bool` | `true` | no | | [data\_storage](#input\_data\_storage) | Data storage locations for CDP environment |
object({
data_storage_bucket = string
data_storage_object = string
}) | `null` | no |
diff --git a/modules/terraform-cdp-azure-pre-reqs/examples/ex02-existing-rg/main.tf b/modules/terraform-cdp-azure-pre-reqs/examples/ex02-existing-rg/main.tf
index 9d4a0e5..5967e17 100644
--- a/modules/terraform-cdp-azure-pre-reqs/examples/ex02-existing-rg/main.tf
+++ b/modules/terraform-cdp-azure-pre-reqs/examples/ex02-existing-rg/main.tf
@@ -45,8 +45,8 @@ module "ex04_existing_rg" {
ingress_extra_cidrs_and_ports = var.ingress_extra_cidrs_and_ports
# Used existing resource group
- create_resource_group = false
- cdp_resourcegroup_name = azurerm_resource_group.rmgp.name
+ create_cdp_resource_group = false
+ cdp_resourcegroup_name = azurerm_resource_group.rmgp.name
depends_on = [azurerm_resource_group.rmgp]
}
diff --git a/modules/terraform-cdp-azure-pre-reqs/main.tf b/modules/terraform-cdp-azure-pre-reqs/main.tf
index 88fca6f..33d0867 100644
--- a/modules/terraform-cdp-azure-pre-reqs/main.tf
+++ b/modules/terraform-cdp-azure-pre-reqs/main.tf
@@ -19,15 +19,18 @@ module "azure_cdp_rmgp" {
source = "../terraform-azure-resource-group"
- create_resource_group = (var.create_resource_group && var.create_vnet)
+ create_resource_group = (
+ var.create_cdp_resource_group &&
+ (var.create_vnet || var.separate_network_resource_group)
+ )
# Variables required when creating RG
- resourcegroup_name = (var.create_resource_group && var.create_vnet) ? local.cdp_resourcegroup_name : null
- azure_region = (var.create_resource_group && var.create_vnet) ? var.azure_region : null
- tags = (var.create_resource_group && var.create_vnet) ? var.env_tags : null
+ resourcegroup_name = (var.create_cdp_resource_group && (var.create_vnet || var.separate_network_resource_group)) ? local.cdp_resourcegroup_name : null
+ azure_region = (var.create_cdp_resource_group && (var.create_vnet || var.separate_network_resource_group)) ? var.azure_region : null
+ tags = (var.create_cdp_resource_group && (var.create_vnet || var.separate_network_resource_group)) ? var.env_tags : null
# Variables required when using pre-existing RG
- existing_resource_group_name = (var.create_resource_group && var.create_vnet) ? null : var.cdp_resourcegroup_name
+ existing_resource_group_name = (var.create_cdp_resource_group && (var.create_vnet || var.separate_network_resource_group)) ? null : var.cdp_resourcegroup_name
}
@@ -37,15 +40,15 @@ module "azure_network_rmgp" {
source = "../terraform-azure-resource-group"
- create_resource_group = (var.create_resource_group && var.create_vnet)
+ create_resource_group = (var.create_network_resource_group && var.create_vnet)
# Variables required when creating RG
- resourcegroup_name = (var.create_resource_group && var.create_vnet) ? local.network_resourcegroup_name : null
- azure_region = (var.create_resource_group && var.create_vnet) ? var.azure_region : null
- tags = (var.create_resource_group && var.create_vnet) ? var.env_tags : null
+ resourcegroup_name = (var.create_network_resource_group && var.create_vnet) ? local.network_resourcegroup_name : null
+ azure_region = (var.create_network_resource_group && var.create_vnet) ? var.azure_region : null
+ tags = (var.create_network_resource_group && var.create_vnet) ? var.env_tags : null
# Variables required when using pre-existing RG
- existing_resource_group_name = (var.create_resource_group && var.create_vnet) ? null : var.network_resourcegroup_name
+ existing_resource_group_name = (var.create_network_resource_group && var.create_vnet) ? null : var.network_resourcegroup_name
}
diff --git a/modules/terraform-cdp-azure-pre-reqs/variables.tf b/modules/terraform-cdp-azure-pre-reqs/variables.tf
index 0104ae6..646b711 100644
--- a/modules/terraform-cdp-azure-pre-reqs/variables.tf
+++ b/modules/terraform-cdp-azure-pre-reqs/variables.tf
@@ -108,10 +108,18 @@ variable "cdp_resourcegroup_name" {
}
-variable "create_resource_group" {
+variable "create_cdp_resource_group" {
type = bool
- description = "Flag to specify if the Resource Group should be created"
+ description = "Flag to specify if the Resource Group for Cloudera Resources should be created"
+
+ default = true
+}
+
+variable "create_network_resource_group" {
+ type = bool
+
+ description = "Flag to specify if the Resource Group for Network Resources should be created. Note that if create_vnet is false this must be false. Note that if separate_network_resource_group is false this will not be used."
default = true
}