Skip to content

Commit 8a7c0e5

Browse files
committed
Update yaml comments
1 parent d6cb5d3 commit 8a7c0e5

File tree

3 files changed

+78
-113
lines changed

3 files changed

+78
-113
lines changed
Lines changed: 23 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,17 @@
1-
# yaml-language-server: $schema=./azureResources.shema.json
2-
#
3-
# Microsoft Dev Box accelerator: Resource Groups Configuration
4-
# =======================================================
5-
#
6-
# Purpose: Defines the resource group organization structure for environments.
7-
# This configuration aligns with Azure Landing Zone principles by segregating resources
8-
# based on their functional purpose (workload, security, monitoring, connectivity).
9-
#
1+
# azureResources.yaml
2+
# -------------------------------------------------------
3+
# Purpose: Defines resource group organization for Dev Box environments.
4+
# Follows Azure Landing Zone principles for segregation by function.
105
# References:
116
# - Microsoft Dev Box accelerator: https://evilazaro.github.io/DevExp-DevBox/docs/configureresources/resourceorganization/
127
# - Azure Landing Zones: https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/ready/landing-zone/
138
# - Azure Resource Groups: https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resource-groups-portal
149

1510
# Workload Resource Group
16-
# -----------------------
17-
# Purpose: Contains the primary Dev Box workload resources including:
18-
# - Dev Center resources
19-
# - Dev Box definitions
20-
# - Dev Box pools
21-
# - Project resources
22-
#
23-
# Best practice: Separate application workloads from infrastructure components
24-
# to enable independent scaling, access control, and lifecycle management.
25-
workload:
11+
workload: # Main application resources
2612
create: true
2713
name: devexp-workload
2814
description: prodExp
29-
3015
tags:
3116
environment: dev # Deployment environment (dev, test, prod)
3217
division: Platforms # Business division responsible for the resource
@@ -38,51 +23,31 @@ workload:
3823
resources: ResourceGroup # Resource type
3924

4025
# Security Resource Group
41-
# ----------------------
42-
# Purpose: Contains security-related resources including:
43-
# - Key Vaults for secret management
44-
# - Microsoft Defender for Cloud configurations
45-
# - Network Security Groups
46-
# - Private endpoints
47-
#
48-
# Best practice: Isolate security resources to apply stricter access controls
49-
# and enable separate monitoring/auditing of security components.
50-
security:
26+
security: # Security-related resources (Key Vaults, NSGs, Defender, etc.)
5127
create: true
5228
name: devexp-security
5329
description: prodExp
54-
5530
tags:
56-
environment: dev
57-
division: Platforms
58-
team: DevExP
59-
project: Contoso-DevExp-DevBox
60-
costCenter: IT
61-
owner: Contoso
62-
landingZone: Workload
63-
resources: ResourceGroup
31+
environment: dev # Deployment environment
32+
division: Platforms # Business division
33+
team: DevExP # Team
34+
project: Contoso-DevExp-DevBox # Project name
35+
costCenter: IT # Cost center
36+
owner: Contoso # Owner
37+
landingZone: Workload # Landing zone
38+
resources: ResourceGroup # Resource type
6439

6540
# Monitoring Resource Group
66-
# ------------------------
67-
# Purpose: Contains monitoring and observability resources including:
68-
# - Log Analytics workspaces
69-
# - Application Insights components
70-
# - Azure Monitor alerts and action groups
71-
# - Dashboard and reporting resources
72-
#
73-
# Best practice: Centralize monitoring resources to provide a unified view
74-
# of operational health and simplify diagnostic activities.
75-
monitoring:
41+
monitoring: # Monitoring and observability resources
7642
create: true
7743
name: devexp-monitoring
7844
description: prodExp
79-
8045
tags:
81-
environment: dev
82-
division: Platforms
83-
team: DevExP
84-
project: Contoso-DevExp-DevBox
85-
costCenter: IT
86-
owner: Contoso
87-
landingZone: Workload
88-
resources: ResourceGroup
46+
environment: dev # Deployment environment
47+
division: Platforms # Business division
48+
team: DevExP # Team
49+
project: Contoso-DevExp-DevBox # Project name
50+
costCenter: IT # Cost center
51+
owner: Contoso # Owner
52+
landingZone: Workload # Landing zone
53+
resources: ResourceGroup # Resource type
Lines changed: 25 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,39 @@
1+
12
# yaml-language-server: $schema=./security.schema.json
2-
#
3+
# -------------------------------------------------------
34
# Azure Key Vault Configuration
4-
# ----------------------------
5-
# This file defines the configuration for an Azure Key Vault resource
6-
# used for storing sensitive credentials and secrets in the development environment.
7-
8-
# Purpose: Centralized management of secrets, keys, and certificates\
9-
# for secure access by applications and services in the Contoso development environment.
10-
# References:
5+
# -------------------------------------------------------
6+
# Purpose: Centralized management of secrets, keys, and certificates for secure access by applications and services in the Contoso development environment.
7+
# This file defines the configuration for an Azure Key Vault resource used for storing sensitive credentials and secrets in the development environment.
8+
#
9+
# References:
1110
# - Microsoft Dev Box accelerator: https://evilazaro.github.io/DevExp-DevBox/docs/configureresources/security/
1211
# - Azure Key Vault documentation: https://learn.microsoft.com/en-us/azure/key-vault/general/basic-concepts
1312
# - Azure Key Vault best practices: https://learn.microsoft.com/en-us/azure/key-vault/general/best-practices
1413

15-
# Whether to create the Key Vault resource
14+
# Top-level flag: Should the Key Vault resource be created?
1615
create: true
1716

18-
# Key Vault configuration
17+
# Key Vault configuration block
1918
keyVault:
2019
# Basic settings
21-
name: contoso # Name of the Key Vault (must be globally unique)
22-
description: Development Environment Key Vault # Purpose of this Key Vault
23-
secretName: gha-token # Name of the GitHub Actions token secret
20+
name: contoso # Globally unique Key Vault name
21+
description: Development Environment Key Vault # Purpose of this Key Vault
22+
secretName: gha-token # Name of the GitHub Actions token secret
2423

2524
# Security settings
26-
enablePurgeProtection: true # Prevents permanent deletion of secrets even by authorized users
27-
enableSoftDelete: true # Enables recovery of deleted secrets within retention period
28-
softDeleteRetentionInDays: 7 # Number of days deleted secrets remain recoverable (7-90 days)
29-
enableRbacAuthorization: true # Uses Azure RBAC for access control instead of vault access policies
25+
enablePurgeProtection: true # Prevent permanent deletion of secrets
26+
enableSoftDelete: true # Allow recovery of deleted secrets within retention period
27+
softDeleteRetentionInDays: 7 # Retention period for deleted secrets (7-90 days)
28+
enableRbacAuthorization: true # Use Azure RBAC for access control
3029

31-
# Resource organization
30+
# Resource organization tags
3231
tags:
33-
environment: dev # Deployment environment (dev/test/staging/prod)
34-
division: Platforms # Organizational division responsible for this resource
35-
team: DevExP # Team that owns this resource
36-
project: Contoso-DevExp-DevBox # Project associated with this resource
37-
costCenter: IT # Cost center for billing and chargeback
38-
owner: Contoso # Resource owner
39-
landingZone: security # Azure landing zone classification
40-
resources: ResourceGroup # Resource grouping identifier
32+
environment: dev # Deployment environment (dev/test/staging/prod)
33+
division: Platforms # Organizational division
34+
team: DevExP # Owning team
35+
project: Contoso-DevExp-DevBox # Associated project
36+
costCenter: IT # Cost center for billing
37+
owner: Contoso # Resource owner
38+
landingZone: security # Azure landing zone classification
39+
resources: ResourceGroup # Resource grouping identifier

infra/settings/workload/devcenter.yaml

Lines changed: 30 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -171,36 +171,37 @@ projects:
171171
- name: "eShop"
172172
description: "eShop project."
173173

174+
# Network configuration for eShop project
174175
network:
175-
name: eShop
176-
create: true
177-
resourceGroupName: "eShop-connectivity-RG"
178-
virtualNetworkType: Managed
176+
name: eShop # Name of the virtual network
177+
create: true # Should the network be created?
178+
resourceGroupName: "eShop-connectivity-RG" # Resource group for network
179+
virtualNetworkType: Managed # Type of virtual network
179180
addressPrefixes:
180-
- 10.0.0.0/16
181+
- 10.0.0.0/16 # Address space for VNet
181182
subnets:
182-
- name: identityProvider-subnet
183+
- name: eShop-subnet # Subnet name
183184
properties:
184-
addressPrefix: 10.0.1.0/24
185+
addressPrefix: 10.0.1.0/24 # Subnet address range
185186
tags:
186-
environment: dev
187-
division: Platforms
188-
team: DevExP
189-
project: DevExP-DevBox
190-
costCenter: IT
191-
owner: Contoso
192-
resources: Network
187+
environment: dev # Deployment environment
188+
division: Platforms # Organizational division
189+
team: DevExP # Team responsible
190+
project: DevExP-DevBox # Project name
191+
costCenter: IT # Cost center for billing
192+
owner: Contoso # Resource owner
193+
resources: Network # Resource type identifier
193194

194195
# Project identity configuration - controls project-level security
195196
identity:
196-
type: SystemAssigned
197+
type: SystemAssigned # Managed identity type
197198
roleAssignments:
198-
- azureADGroupId: "9d42a792-2d74-441d-8bcb-71009371725f"
199-
azureADGroupName: "eShop Developers"
199+
- azureADGroupId: "9d42a792-2d74-441d-8bcb-71009371725f" # Azure AD group ID
200+
azureADGroupName: "eShop Developers" # Azure AD group name
200201
azureRBACRoles:
201-
- name: "Contributor"
202-
id: "b24988ac-6180-42a0-ab88-20f7382dd24c"
203-
scope: Project
202+
- name: "Contributor" # RBAC role name
203+
id: "b24988ac-6180-42a0-ab88-20f7382dd24c" # RBAC role ID
204+
scope: Project # Role scope
204205
- name: "Dev Box User"
205206
id: "45d50f46-0b78-4001-a660-4198cbe8cd05"
206207
scope: Project
@@ -217,21 +218,21 @@ projects:
217218
# Dev Box pools - collections of Dev Boxes with specific configurations
218219
# Best practice: Create role-specific pools with appropriate tools and settings
219220
pools:
220-
- name: "backend-engineer"
221-
imageDefinitionName: "eShop-backend-engineer"
222-
vmSku: general_i_32c128gb512ssd_v2
223-
- name: "frontend-engineer"
224-
imageDefinitionName: "eShop-frontend-engineer"
225-
vmSku: general_i_16c64gb256ssd_v2
221+
- name: "backend-engineer" # Pool for backend engineers
222+
imageDefinitionName: "eShop-backend-engineer" # Image definition for backend
223+
vmSku: general_i_32c128gb512ssd_v2 # VM SKU for backend pool
224+
- name: "frontend-engineer" # Pool for frontend engineers
225+
imageDefinitionName: "eShop-frontend-engineer" # Image definition for frontend
226+
vmSku: general_i_16c64gb256ssd_v2 # VM SKU for frontend pool
226227

227228
# Project-specific environment types
228229
# Defines which deployment environments are available to the project
229230
environmentTypes:
230-
- name: "dev"
231+
- name: "dev" # Development environment
231232
deploymentTargetId: ""
232-
- name: "staging"
233+
- name: "staging" # Staging environment
233234
deploymentTargetId: ""
234-
- name: "UAT"
235+
- name: "UAT" # User Acceptance Testing environment
235236
deploymentTargetId: ""
236237

237238
# Project-specific catalogs - repositories containing project configurations

0 commit comments

Comments
 (0)