diff --git a/README.md b/README.md
index 5a35591..0083343 100644
--- a/README.md
+++ b/README.md
@@ -34,6 +34,8 @@ No resources.
| [dashboards](#input\_dashboards) | Set of unique strings to create Dashboards full names | `set(string)` | `[]` | no |
| [data\_factories](#input\_data\_factories) | Set of unique strings to create Data Factories full names | `set(string)` | `[]` | no |
| [databricks\_workspaces](#input\_databricks\_workspaces) | Set of unique strings to create Databricks Workspaces full names | `set(string)` | `[]` | no |
+| [dev\_center\_projects](#input\_dev\_center\_projects) | Set of unique strings to create Dev Center Project full names | `set(string)` | `[]` | no |
+| [dev\_centers](#input\_dev\_centers) | Set of unique strings to create Dev Center full names | `set(string)` | `[]` | no |
| [environment](#input\_environment) | Environment/Subscription name | `string` | n/a | yes |
| [instance\_number](#input\_instance\_number) | Instance number of deployment | `string` | `"1"` | no |
| [internal\_load\_balancers](#input\_internal\_load\_balancers) | Set of unique strings to create Internal Load Balancers full names | `set(string)` | `[]` | no |
@@ -42,6 +44,7 @@ No resources.
| [linux\_virtual\_machines](#input\_linux\_virtual\_machines) | Set of unique strings to create Linux Virtual Machines full names | `set(string)` | `[]` | no |
| [location](#input\_location) | Azure Region | `string` | n/a | yes |
| [log\_analytics\_workspaces](#input\_log\_analytics\_workspaces) | Set of unique strings to create Log Analytics Workspaces full names | `set(string)` | `[]` | no |
+| [managed\_devops\_pools](#input\_managed\_devops\_pools) | Set of unique strings to create Managed DevOps Pool full names | `set(string)` | `[]` | no |
| [mssql\_databases](#input\_mssql\_databases) | Set of unique strings to create MSSQL Databases full names | `set(string)` | `[]` | no |
| [mssql\_servers](#input\_mssql\_servers) | Set of unique strings to create MSSQL Servers full names | `set(string)` | `[]` | no |
| [nat\_gateways](#input\_nat\_gateways) | Set of unique strings to create Nat Gateways full names | `set(string)` | `[]` | no |
@@ -75,6 +78,10 @@ No resources.
| [data\_factory](#output\_data\_factory) | Built name of single Data Factory |
| [databricks\_workspace](#output\_databricks\_workspace) | Built name of single Databricks Workspace |
| [databricks\_workspaces](#output\_databricks\_workspaces) | Built name of multiple Databricks Workspaces with unique particle |
+| [dev\_center](#output\_dev\_center) | Built name of single Dev Center |
+| [dev\_center\_project](#output\_dev\_center\_project) | Built name of single Dev Center Project |
+| [dev\_center\_projects](#output\_dev\_center\_projects) | Built name of multiple Dev Center Projects with unique particle |
+| [dev\_centers](#output\_dev\_centers) | Built name of multiple Dev Centers with unique particle |
| [internal\_load\_balancer](#output\_internal\_load\_balancer) | Built name of single Internal Load Balancer |
| [internal\_load\_balancers](#output\_internal\_load\_balancers) | Built name of multiple Internal Load Balancers with unique particle |
| [key\_vault](#output\_key\_vault) | Built name of single Key Vault |
@@ -85,6 +92,8 @@ No resources.
| [linux\_virtual\_machines](#output\_linux\_virtual\_machines) | Built name of multiple Linux Virtual Machines with unique particle |
| [log\_analytics\_workspace](#output\_log\_analytics\_workspace) | Built name of single Log Analytics Workspace |
| [log\_analytics\_workspaces](#output\_log\_analytics\_workspaces) | Built name of multiple Log Analytics Workspaces with unique particle |
+| [managed\_devops\_pool](#output\_managed\_devops\_pool) | Built name of single Managed DevOps pool |
+| [managed\_devops\_pools](#output\_managed\_devops\_pools) | Built name of multiple Managed DevOps Pools with unique particle |
| [mssql\_database](#output\_mssql\_database) | Built name of single MSSQL Database |
| [mssql\_databases](#output\_mssql\_databases) | Built name of multiple MSSQL Databases with unique particle |
| [mssql\_server](#output\_mssql\_server) | Built name of single MSSQL Server |
diff --git a/main.tf b/main.tf
index f3ba019..58adf52 100644
--- a/main.tf
+++ b/main.tf
@@ -15,7 +15,7 @@ locals {
network_security_group = substr(join("-", compact(["nsg", var.project, var.environment, var.location, var.instance_number])), 0, 80)
network_security_groups = { for item in var.network_security_groups : item => substr(join("-", compact(["nsg", var.project, item, var.environment, var.location, var.instance_number])), 0, 80) }
- # Application Security Groups
+ # Application Security Groups
application_security_group = substr(join("-", compact(["asg", var.project, var.environment, var.location, var.instance_number])), 0, 80)
application_security_groups = { for item in var.application_security_groups : item => substr(join("-", compact(["asg", var.project, item, var.environment, var.location, var.instance_number])), 0, 80) }
@@ -102,6 +102,19 @@ locals {
# User Assigned Identity
user_assigned_identity = substr(join("-", compact(["id", var.project, var.environment, var.location, var.instance_number])), 0, 63)
user_assigned_identities = { for item in var.user_assigned_identities : item => substr(join("-", compact(["id", var.project, item, var.environment, var.location, var.instance_number])), 0, 63) }
+
+ # Dev Center
+ dev_center = substr(join("-", compact(["dc", var.project, var.environment,
+ var.location, var.instance_number])), 0, 26)
+ dev_centers = { for item in var.dev_centers : item => substr(join("-", compact(["dc", var.project, item, var.environment, var.location, var.instance_number])), 0, 26) }
+
+ # Dev Center Project
+ dev_center_project = substr(join("-", compact(["dcp", var.project, var.environment, var.location, var.instance_number])), 0, 63)
+ dev_center_projects = { for item in var.dev_center_projects : item => substr(join("-", compact(["dcp", var.project, item, var.environment, var.location, var.instance_number])), 0, 63) }
+
+ # Managed DevOps Pool
+ managed_devops_pool = substr(join("-", compact(["mdp", var.project, var.environment, var.location, var.instance_number])), 0, 63)
+ managed_devops_pools = { for item in var.managed_devops_pools : item => substr(join("-", compact(["mdp", var.project, item, var.environment, var.location, var.instance_number])), 0, 63) }
}
locals {
diff --git a/outputs.tf b/outputs.tf
index 75f5a64..ddaa829 100644
--- a/outputs.tf
+++ b/outputs.tf
@@ -283,3 +283,36 @@ output "user_assigned_identities" {
description = "Built name of multiple User Assigned Identities with unique particle"
value = local.user_assigned_identities
}
+
+# Dev Center
+output "dev_center" {
+ description = "Built name of single Dev Center"
+ value = local.dev_center
+}
+
+output "dev_centers" {
+ description = "Built name of multiple Dev Centers with unique particle"
+ value = local.dev_centers
+}
+
+# Dev Center Project
+output "dev_center_project" {
+ description = "Built name of single Dev Center Project"
+ value = local.dev_center_project
+}
+
+output "dev_center_projects" {
+ description = "Built name of multiple Dev Center Projects with unique particle"
+ value = local.dev_center_projects
+}
+
+# Managed DevOps Pool
+output "managed_devops_pool" {
+ description = "Built name of single Managed DevOps pool"
+ value = local.managed_devops_pool
+}
+
+output "managed_devops_pools" {
+ description = "Built name of multiple Managed DevOps Pools with unique particle"
+ value = local.managed_devops_pools
+}
diff --git a/variables.tf b/variables.tf
index 29884e1..24a6e0b 100644
--- a/variables.tf
+++ b/variables.tf
@@ -174,3 +174,21 @@ variable "application_security_groups" {
description = "Set of unique strings to create Application Security Groups full names"
default = []
}
+
+variable "dev_centers" {
+ type = set(string)
+ description = "Set of unique strings to create Dev Center full names"
+ default = []
+}
+
+variable "dev_center_projects" {
+ type = set(string)
+ description = "Set of unique strings to create Dev Center Project full names"
+ default = []
+}
+
+variable "managed_devops_pools" {
+ type = set(string)
+ description = "Set of unique strings to create Managed DevOps Pool full names"
+ default = []
+}