-RG --yes --no-wait
+```
+
+> β οΈ **Warning:** Key Vault soft-delete is enabled by default. Use `--purge` flag or manually purge deleted vaults to fully remove secrets.
+
+---
+
+## π€ Contributing
+
+Contributions are welcome! We follow a standard GitHub workflow.
+
+### How to Contribute
+
+1. **Fork** the repository
+2. **Create** a feature branch:
+
+ ```bash
+ git checkout -b feature/amazing-feature
+ ```
+
+3. **Make** your changes following the guidelines below
+4. **Test** locally:
+
+ ```bash
+ az bicep build --file infra/main.bicep
+ ```
+
+5. **Commit** your changes:
+
+ ```bash
+ git commit -m 'feat: add amazing feature'
+ ```
+
+6. **Push** to the branch:
+
+ ```bash
+ git push origin feature/amazing-feature
+ ```
+
+7. **Open** a Pull Request to `main`
+
+### Development Guidelines
+
+| Area | Guideline |
+|------|-----------|
+| **Bicep** | Follow [Bicep best practices](https://learn.microsoft.com/azure/azure-resource-manager/bicep/best-practices) |
+| **Parameters** | Include `@description()` decorators for all parameters |
+| **Resources** | Add appropriate tags to all resources |
+| **Naming** | Use consistent naming conventions (camelCase for variables, kebab-case for resources) |
+| **Documentation** | Update README and architecture docs for configuration changes |
+| **Testing** | Validate Bicep files compile before submitting PRs |
+
+### Commit Message Convention
+
+We use [Conventional Commits](https://www.conventionalcommits.org/):
+
+```
+feat: add new Dev Box pool configuration
+fix: correct Key Vault access policy
+docs: update README with DSC examples
+refactor: simplify network module
+```
+
+---
+
+## π License
+
+This project is licensed under the **MIT License** β see the [LICENSE](LICENSE) file for details.
+
+---
+
+## π Additional Resources
+
+### Documentation
+
+| Resource | Description |
+|----------|-------------|
+| [Architecture Documentation](./docs/architecture/) | TOGAF-aligned architecture decision records |
+| [DevOps Documentation](./docs/devops/README.md) | Comprehensive CI/CD pipeline documentation |
+| [Script Documentation](./docs/scripts/README.md) | Setup and configuration script guides |
+
+### External References
+
+| Resource | Link |
+|----------|------|
+| Microsoft Dev Box | [Documentation](https://learn.microsoft.com/azure/dev-box/overview-what-is-microsoft-dev-box) |
+| Azure DevCenter | [Documentation](https://learn.microsoft.com/azure/deployment-environments/overview-what-is-azure-deployment-environments) |
+| Azure Bicep | [Documentation](https://learn.microsoft.com/azure/azure-resource-manager/bicep/) |
+| Azure Landing Zones | [Cloud Adoption Framework](https://learn.microsoft.com/azure/cloud-adoption-framework/ready/landing-zone/) |
+| Azure Developer CLI | [Documentation](https://learn.microsoft.com/azure/developer/azure-developer-cli/) |
+
+### Support
+
+- π **Issues:** [GitHub Issues](https://github.com/Evilazaro/DevExp-DevBox/issues)
+- π¬ **Discussions:** [GitHub Discussions](https://github.com/Evilazaro/DevExp-DevBox/discussions)
+
+---
+
+
+ Built with β€οΈ by the DevExp Team
+
diff --git a/docs/architecture/01-business-architecture.md b/docs/architecture/01-business-architecture.md
index da4852d3..12a4bf83 100644
--- a/docs/architecture/01-business-architecture.md
+++ b/docs/architecture/01-business-architecture.md
@@ -40,15 +40,15 @@ tags:
## π Table of Contents
-- [π Executive Summary](#executive-summary)
-- [π― Business Context](#business-context)
-- [π₯ Stakeholder Analysis](#stakeholder-analysis)
-- [βοΈ Business Capabilities](#business-capabilities)
-- [π Value Streams](#value-streams)
-- [π Business Requirements](#business-requirements)
-- [π Success Metrics](#success-metrics)
-- [π Glossary](#glossary)
-- [π References](#references)
+- [π Executive Summary](#-executive-summary)
+- [π― Business Context](#-business-context)
+- [π₯ Stakeholder Analysis](#-stakeholder-analysis)
+- [βοΈ Business Capabilities](#%EF%B8%8F-business-capabilities)
+- [π Value Streams](#-value-streams)
+- [π Business Requirements](#-business-requirements)
+- [π Success Metrics](#-success-metrics)
+- [π Glossary](#-glossary)
+- [π References](#-references)
---
@@ -278,6 +278,7 @@ flowchart TB
class C9,C10,C11,C12 secondary
class C13,C14,C15 primary
+ style L1 fill:#F3F4F6,stroke:#6B7280,stroke-width:2px
style L2A fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px
style L2B fill:#FEE2E2,stroke:#F44336,stroke-width:2px
style L2C fill:#ECFDF5,stroke:#10B981,stroke-width:2px
diff --git a/docs/architecture/02-data-architecture.md b/docs/architecture/02-data-architecture.md
index bf46f76d..9c35bef2 100644
--- a/docs/architecture/02-data-architecture.md
+++ b/docs/architecture/02-data-architecture.md
@@ -40,15 +40,15 @@ tags:
## π Table of Contents
-- [π Data Overview](#data-overview)
-- [π Configuration Data Model](#configuration-data-model)
-- [π Secrets Management](#secrets-management)
-- [πΆ Telemetry & Diagnostics](#telemetry--diagnostics)
-- [π Data Flow Diagrams](#data-flow-diagrams)
-- [π‘οΈ Data Governance](#data-governance)
-- [π Schema Documentation](#schema-documentation)
-- [π Glossary](#glossary)
-- [π References](#references)
+- [π Data Overview](#-data-overview)
+- [π Configuration Data Model](#-configuration-data-model)
+- [π Secrets Management](#-secrets-management)
+- [πΆ Telemetry & Diagnostics](#-telemetry--diagnostics)
+- [π Data Flow Diagrams](#-data-flow-diagrams)
+- [π‘οΈ Data Governance](#%EF%B8%8F-data-governance)
+- [π Schema Documentation](#-schema-documentation)
+- [π Glossary](#-glossary)
+- [π References](#-references)
---
@@ -105,6 +105,7 @@ flowchart TB
class T1,T2,T3 secondary
class ST1,ST2,ST3 datastore
+ style DataCategories fill:#F3F4F6,stroke:#6B7280,stroke-width:2px
style Config fill:#E0E7FF,stroke:#4F46E5,stroke-width:2px
style Secrets fill:#FEE2E2,stroke:#F44336,stroke-width:2px
style Telemetry fill:#ECFDF5,stroke:#10B981,stroke-width:2px
diff --git a/docs/architecture/03-application-architecture.md b/docs/architecture/03-application-architecture.md
index 381938f1..920af925 100644
--- a/docs/architecture/03-application-architecture.md
+++ b/docs/architecture/03-application-architecture.md
@@ -40,15 +40,15 @@ tags:
## π Table of Contents
-- [π Application Overview](#application-overview)
-- [π Bicep Module Catalog](#bicep-module-catalog)
-- [π Module Dependency Graph](#module-dependency-graph)
-- [π Interface Contracts](#interface-contracts)
-- [π Deployment Orchestration](#deployment-orchestration)
-- [π§ Component Details](#component-details)
-- [π Integration Patterns](#integration-patterns)
-- [π Extension Points](#extension-points)
-- [π References](#references)
+- [π Application Overview](#-application-overview)
+- [π Bicep Module Catalog](#-bicep-module-catalog)
+- [π Module Dependency Graph](#-module-dependency-graph)
+- [π Interface Contracts](#-interface-contracts)
+- [π Deployment Orchestration](#-deployment-orchestration)
+- [π§ Component Details](#-component-details)
+- [π Integration Patterns](#-integration-patterns)
+- [π Extension Points](#-extension-points)
+- [π References](#-references)
---
diff --git a/docs/architecture/04-technology-architecture.md b/docs/architecture/04-technology-architecture.md
index 719ca9da..8015aa54 100644
--- a/docs/architecture/04-technology-architecture.md
+++ b/docs/architecture/04-technology-architecture.md
@@ -40,16 +40,16 @@ tags:
## π Table of Contents
-- [π Technology Overview](#technology-overview)
-- [π¦ Azure Service Catalog](#azure-service-catalog)
-- [ποΈ Landing Zone Design](#landing-zone-design)
-- [π Network Architecture](#network-architecture)
-- [π» Compute Architecture](#compute-architecture)
-- [π CI/CD Infrastructure](#cicd-infrastructure)
-- [πΆ Monitoring Infrastructure](#monitoring-infrastructure)
-- [π Infrastructure Sizing](#infrastructure-sizing)
-- [π Technology Standards](#technology-standards)
-- [π References](#references)
+- [π Technology Overview](#-technology-overview)
+- [π¦ Azure Service Catalog](#-azure-service-catalog)
+- [ποΈ Landing Zone Design](#%EF%B8%8F-landing-zone-design)
+- [π Network Architecture](#-network-architecture)
+- [π» Compute Architecture](#-compute-architecture)
+- [π CI/CD Infrastructure](#-cicd-infrastructure)
+- [πΆ Monitoring Infrastructure](#-monitoring-infrastructure)
+- [π Infrastructure Sizing](#-infrastructure-sizing)
+- [π Technology Standards](#-technology-standards)
+- [π References](#-references)
---
@@ -128,6 +128,10 @@ flowchart TB
style IaC fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px
style CI_CD fill:#EEF2FF,stroke:#4F46E5,stroke-width:2px
style Azure fill:#ECFDF5,stroke:#10B981,stroke-width:2px
+ style Compute fill:#D1FAE5,stroke:#059669,stroke-width:1px
+ style Security fill:#D1FAE5,stroke:#059669,stroke-width:1px
+ style Network fill:#D1FAE5,stroke:#059669,stroke-width:1px
+ style Monitor fill:#D1FAE5,stroke:#059669,stroke-width:1px
```
### Technology Decision Matrix
@@ -517,6 +521,9 @@ flowchart TB
style DevCenter fill:#E0E7FF,stroke:#4F46E5,stroke-width:2px
style Runtime fill:#ECFDF5,stroke:#10B981,stroke-width:2px
+ style Images fill:#D1FAE5,stroke:#059669,stroke-width:1px
+ style Projects fill:#D1FAE5,stroke:#059669,stroke-width:1px
+ style Pools fill:#D1FAE5,stroke:#059669,stroke-width:1px
```
### Dev Box SKU Options
@@ -639,6 +646,8 @@ flowchart TB
style GitHub fill:#EEF2FF,stroke:#4F46E5,stroke-width:2px
style Azure fill:#ECFDF5,stroke:#10B981,stroke-width:2px
+ style Actions fill:#E0E7FF,stroke:#4F46E5,stroke-width:1px
+ style Secrets fill:#E0E7FF,stroke:#4F46E5,stroke-width:1px
```
### Workflow Pipeline Structure
@@ -791,6 +800,8 @@ flowchart TB
style Collection fill:#EEF2FF,stroke:#4F46E5,stroke-width:2px
style LAW fill:#E0E7FF,stroke:#4F46E5,stroke-width:2px
style Consumers fill:#ECFDF5,stroke:#10B981,stroke-width:2px
+ style Tables fill:#D1FAE5,stroke:#059669,stroke-width:1px
+ style Solutions fill:#D1FAE5,stroke:#059669,stroke-width:1px
```
### Diagnostic Settings Configuration
diff --git a/docs/architecture/05-security-architecture.md b/docs/architecture/05-security-architecture.md
index e22b3748..c7e509d2 100644
--- a/docs/architecture/05-security-architecture.md
+++ b/docs/architecture/05-security-architecture.md
@@ -40,17 +40,17 @@ tags:
## π Table of Contents
-- [π Security Overview](#security-overview)
-- [β οΈ Threat Model](#threat-model)
-- [π Identity & Access Management](#identity--access-management)
-- [π₯ RBAC Hierarchy](#rbac-hierarchy)
-- [π Secrets Management](#secrets-management)
-- [π Network Security](#network-security)
-- [π‘οΈ Data Protection](#data-protection)
-- [β
Compliance & Governance](#compliance--governance)
-- [πΆ Security Operations](#security-operations)
-- [π Security Controls Matrix](#security-controls-matrix)
-- [π References](#references)
+- [π Security Overview](#-security-overview)
+- [β οΈ Threat Model](#%EF%B8%8F-threat-model)
+- [π Identity & Access Management](#-identity--access-management)
+- [π₯ RBAC Hierarchy](#-rbac-hierarchy)
+- [π Secrets Management](#-secrets-management)
+- [π Network Security](#-network-security)
+- [π‘οΈ Data Protection](#%EF%B8%8F-data-protection)
+- [β
Compliance & Governance](#-compliance--governance)
+- [πΆ Security Operations](#-security-operations)
+- [π Security Controls Matrix](#-security-controls-matrix)
+- [π References](#-references)
---
@@ -542,6 +542,8 @@ flowchart TB
style Sources fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px
style KeyVault fill:#FEE2E2,stroke:#F44336,stroke-width:2px
style Access fill:#ECFDF5,stroke:#10B981,stroke-width:2px
+ style Settings fill:#FECACA,stroke:#C62828,stroke-width:1px
+ style Secrets fill:#FECACA,stroke:#C62828,stroke-width:1px
```
### Key Vault Configuration
@@ -661,6 +663,9 @@ flowchart TB
style Internet fill:#F3F4F6,stroke:#6B7280,stroke-width:2px
style AzureNetwork fill:#E0E7FF,stroke:#4F46E5,stroke-width:2px
style Resources fill:#ECFDF5,stroke:#10B981,stroke-width:2px
+ style NSG fill:#D1FAE5,stroke:#059669,stroke-width:1px
+ style VNet fill:#D1FAE5,stroke:#059669,stroke-width:1px
+ style PE fill:#D1FAE5,stroke:#059669,stroke-width:1px
```
### Network Configuration Options
diff --git a/docs/architecture/07-deployment-architecture.md b/docs/architecture/07-deployment-architecture.md
index ccefaecb..9342a182 100644
--- a/docs/architecture/07-deployment-architecture.md
+++ b/docs/architecture/07-deployment-architecture.md
@@ -14,7 +14,7 @@ tags:
# π Deployment Architecture
-> π This document describes the deployment architecture and CI/CD pipeline design for the Dev Box Accelerator project.
+> **DevExp-DevBox Landing Zone Accelerator**
> [!NOTE]
> **Target Audience:** DevOps Engineers, Platform Engineers, Release Managers
@@ -29,20 +29,27 @@ tags:
+| Property | Value |
+|:---------|:------|
+| **Version** | 1.0.0 |
+| **Last Updated** | 2026-01-23 |
+| **Author** | DevExp Team |
+| **Status** | Published |
+
---
## π Table of Contents
-- [π― Overview](#overview)
-- [ποΈ High-Level Architecture](#high-level-architecture)
-- [π Pipeline Architecture](#pipeline-architecture)
-- [π Deployment Environments](#deployment-environments)
-- [π Security Architecture](#security-architecture)
-- [π¦ Infrastructure Components](#infrastructure-components)
-- [πΎ Artifact Management](#artifact-management)
-- [π οΈ Deployment Process](#deployment-process)
-- [πΆ Monitoring & Observability](#monitoring--observability)
-- [π Related Documentation](#related-documentation)
+- [π― Overview](#-overview)
+- [ποΈ High-Level Architecture](#%EF%B8%8F-high-level-architecture)
+- [π Pipeline Architecture](#-pipeline-architecture)
+- [π Deployment Environments](#-deployment-environments)
+- [π Security Architecture](#-security-architecture)
+- [π¦ Infrastructure Components](#-infrastructure-components)
+- [πΎ Artifact Management](#-artifact-management)
+- [π οΈ Deployment Process](#%EF%B8%8F-deployment-process)
+- [πΆ Monitoring & Observability](#-monitoring--observability)
+- [π Related Documentation](#-related-documentation)
---
@@ -59,55 +66,72 @@ The Dev Box Accelerator uses a modern GitOps-style deployment approach with GitH
## ποΈ High-Level Architecture
```mermaid
+---
+title: High-Level Architecture
+---
flowchart TB
- subgraph "π¨βπ» Development"
+ %% ===== DEVELOPMENT =====
+ subgraph Development["π¨βπ» Development"]
DEV1["Developer Workstation"]
DEV2["VS Code + Bicep Extension"]
- DEV1 --> DEV2
+ DEV1 -->|uses| DEV2
end
- subgraph "π¦ Source Control"
+ %% ===== SOURCE CONTROL =====
+ subgraph SourceControl["π¦ Source Control"]
GH1["GitHub Repository"]
GH2["Branch Strategy"]
GH3["Pull Requests"]
- GH1 --> GH2
- GH2 --> GH3
+ GH1 -->|implements| GH2
+ GH2 -->|enables| GH3
end
- subgraph "π CI/CD Pipeline"
+ %% ===== CI/CD PIPELINE =====
+ subgraph CICD["π CI/CD Pipeline"]
direction TB
CI["π¨ CI Workflow"]
RELEASE["π·οΈ Release Workflow"]
DEPLOY["π Deploy Workflow"]
end
- subgraph "βοΈ Azure"
+ %% ===== AZURE =====
+ subgraph Azure["βοΈ Azure"]
direction TB
SUB["Azure Subscription"]
RG["Resource Groups"]
DC["Dev Center"]
KV["Key Vault"]
VNET["Virtual Network"]
- SUB --> RG
- RG --> DC & KV & VNET
+ SUB -->|contains| RG
+ RG -->|hosts| DC
+ RG -->|hosts| KV
+ RG -->|hosts| VNET
end
- DEV2 --> |"git push"| GH1
- GH2 --> |"feature/fix branches"| CI
- GH3 --> |"PR to main"| CI
- GH1 --> |"manual trigger"| RELEASE
- GH1 --> |"manual trigger"| DEPLOY
- DEPLOY --> |"azd provision"| SUB
-
- classDef dev fill:#E3F2FD,stroke:#1565C0,color:#000
- classDef gh fill:#F3E5F5,stroke:#6A1B9A,color:#000
- classDef cicd fill:#FFF3E0,stroke:#EF6C00,color:#000
- classDef azure fill:#E8F5E9,stroke:#2E7D32,color:#000
-
- class DEV1,DEV2 dev
- class GH1,GH2,GH3 gh
- class CI,RELEASE,DEPLOY cicd
- class SUB,RG,DC,KV,VNET azure
+ %% ===== CONNECTIONS =====
+ DEV2 -->|git push| GH1
+ GH2 -->|triggers| CI
+ GH3 -->|triggers| CI
+ GH1 -->|manual trigger| RELEASE
+ GH1 -->|manual trigger| DEPLOY
+ DEPLOY -->|azd provision| SUB
+
+ %% ===== NODE STYLES =====
+ classDef primary fill:#4F46E5,stroke:#3730A3,color:#FFFFFF
+ classDef secondary fill:#10B981,stroke:#059669,color:#FFFFFF
+ classDef trigger fill:#818CF8,stroke:#4F46E5,color:#FFFFFF
+ classDef datastore fill:#F59E0B,stroke:#D97706,color:#000000
+
+ class DEV1,DEV2 primary
+ class GH1,GH2,GH3 trigger
+ class CI,RELEASE,DEPLOY datastore
+ class SUB,RG,DC,KV,VNET secondary
+
+ %% ===== SUBGRAPH STYLES =====
+ style Development fill:#E0E7FF,stroke:#4F46E5,stroke-width:2px
+ style SourceControl fill:#EEF2FF,stroke:#4F46E5,stroke-width:2px
+ style CICD fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px
+ style Azure fill:#ECFDF5,stroke:#10B981,stroke-width:2px
```
---
@@ -121,58 +145,75 @@ flowchart TB
### Workflow Relationships
```mermaid
+---
+title: Workflow Relationships
+---
flowchart LR
- subgraph "Trigger Events"
- T1([Push to feature/**])
- T2([Push to fix/**])
- T3([PR to main])
- T4([Manual Dispatch])
+ %% ===== TRIGGER EVENTS =====
+ subgraph Triggers["π― Trigger Events"]
+ T1(["Push to feature/**"])
+ T2(["Push to fix/**"])
+ T3(["PR to main"])
+ T4(["Manual Dispatch"])
end
- subgraph "Workflows"
+ %% ===== WORKFLOWS =====
+ subgraph Workflows["π Workflows"]
direction TB
- W1["ci.yml
Continuous Integration"]
- W2["release.yml
Branch-Based Release"]
- W3["deploy.yml
Deploy to Azure"]
+ W1["ci.yml
Continuous Integration"]
+ W2["release.yml
Branch-Based Release"]
+ W3["deploy.yml
Deploy to Azure"]
end
- subgraph "Artifacts & Outputs"
+ %% ===== ARTIFACTS & OUTPUTS =====
+ subgraph Outputs["π¦ Artifacts & Outputs"]
A1[/"Versioned Artifacts"/]
A2[/"GitHub Release"/]
- A3[(Azure Resources)]
+ A3[("Azure Resources")]
end
- T1 & T2 --> W1
- T3 --> W1
- T4 --> W2
- T4 --> W3
+ %% ===== CONNECTIONS =====
+ T1 -->|triggers| W1
+ T2 -->|triggers| W1
+ T3 -->|triggers| W1
+ T4 -->|triggers| W2
+ T4 -->|triggers| W3
- W1 --> A1
- W2 --> A1
- W2 --> A2
- W3 --> A3
+ W1 -->|produces| A1
+ W2 -->|produces| A1
+ W2 -->|creates| A2
+ W3 -->|provisions| A3
- classDef trigger fill:#2196F3,stroke:#1565C0,color:#fff
- classDef workflow fill:#FF9800,stroke:#EF6C00,color:#fff
- classDef artifact fill:#4CAF50,stroke:#2E7D32,color:#fff
+ %% ===== NODE STYLES =====
+ classDef trigger fill:#818CF8,stroke:#4F46E5,color:#FFFFFF
+ classDef datastore fill:#F59E0B,stroke:#D97706,color:#000000
+ classDef secondary fill:#10B981,stroke:#059669,color:#FFFFFF
class T1,T2,T3,T4 trigger
- class W1,W2,W3 workflow
- class A1,A2,A3 artifact
+ class W1,W2,W3 datastore
+ class A1,A2,A3 secondary
+
+ %% ===== SUBGRAPH STYLES =====
+ style Triggers fill:#EEF2FF,stroke:#4F46E5,stroke-width:2px
+ style Workflows fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px
+ style Outputs fill:#ECFDF5,stroke:#10B981,stroke-width:2px
```
### Detailed CI/CD Flow
```mermaid
+---
+title: Detailed CI/CD Flow
+---
sequenceDiagram
- participant Dev as Developer
- participant GH as GitHub
- participant CI as CI Workflow
- participant Release as Release Workflow
- participant Deploy as Deploy Workflow
- participant Azure as Azure
-
- rect rgb(227, 242, 253)
+ participant Dev as π€ Developer
+ participant GH as π GitHub
+ participant CI as π¨ CI Workflow
+ participant Release as π·οΈ Release Workflow
+ participant Deploy as π Deploy Workflow
+ participant Azure as βοΈ Azure
+
+ rect rgb(224, 231, 255)
Note over Dev,GH: Feature Development
Dev->>GH: Push to feature/** branch
GH->>CI: Trigger CI workflow
@@ -181,7 +222,7 @@ sequenceDiagram
CI->>GH: Upload artifacts
end
- rect rgb(243, 229, 245)
+ rect rgb(238, 242, 255)
Note over Dev,GH: Pull Request
Dev->>GH: Create PR to main
GH->>CI: Trigger CI workflow
@@ -189,7 +230,7 @@ sequenceDiagram
CI-->>GH: PR check status
end
- rect rgb(255, 243, 224)
+ rect rgb(254, 243, 199)
Note over GH,Release: Release Creation
Dev->>Release: Manual trigger
Release->>Release: Calculate version
@@ -197,7 +238,7 @@ sequenceDiagram
Release->>GH: Create GitHub Release
end
- rect rgb(232, 245, 233)
+ rect rgb(236, 253, 245)
Note over Deploy,Azure: Deployment
Dev->>Deploy: Manual trigger
Deploy->>Deploy: Build Bicep
@@ -226,30 +267,41 @@ sequenceDiagram
### Environment Configuration
```mermaid
+---
+title: Environment Configuration
+---
flowchart TB
- subgraph "GitHub Environments"
+ %% ===== GITHUB ENVIRONMENTS =====
+ subgraph GitHubEnv["π GitHub Environments"]
direction LR
ENV1["dev"]
ENV2["staging"]
ENV3["prod"]
end
- subgraph "Azure Subscriptions"
+ %% ===== AZURE SUBSCRIPTIONS =====
+ subgraph AzureSub["βοΈ Azure Subscriptions"]
direction LR
SUB1["Dev Subscription"]
SUB2["Staging Subscription"]
SUB3["Prod Subscription"]
end
- ENV1 --> |OIDC| SUB1
- ENV2 --> |OIDC| SUB2
- ENV3 --> |OIDC| SUB3
+ %% ===== CONNECTIONS =====
+ ENV1 -->|OIDC| SUB1
+ ENV2 -->|OIDC| SUB2
+ ENV3 -->|OIDC| SUB3
- classDef env fill:#2196F3,stroke:#1565C0,color:#fff
- classDef azure fill:#4CAF50,stroke:#2E7D32,color:#fff
+ %% ===== NODE STYLES =====
+ classDef trigger fill:#818CF8,stroke:#4F46E5,color:#FFFFFF
+ classDef secondary fill:#10B981,stroke:#059669,color:#FFFFFF
- class ENV1,ENV2,ENV3 env
- class SUB1,SUB2,SUB3 azure
+ class ENV1,ENV2,ENV3 trigger
+ class SUB1,SUB2,SUB3 secondary
+
+ %% ===== SUBGRAPH STYLES =====
+ style GitHubEnv fill:#EEF2FF,stroke:#4F46E5,stroke-width:2px
+ style AzureSub fill:#ECFDF5,stroke:#10B981,stroke-width:2px
```
---
@@ -263,35 +315,50 @@ flowchart TB
### Authentication Flow
```mermaid
+---
+title: Authentication Flow
+---
flowchart LR
- subgraph "GitHub Actions"
+ %% ===== GITHUB ACTIONS =====
+ subgraph GitHub["π GitHub Actions"]
GH1["Workflow Run"]
GH2["Request OIDC Token"]
+ GH1 -->|initiates| GH2
end
- subgraph "Azure AD"
+ %% ===== AZURE AD =====
+ subgraph AzureAD["π’ Azure AD"]
AD1["Validate Token"]
AD2["Issue Access Token"]
AD3["Federated Credential"]
+ AD1 -->|checks| AD3
+ AD3 -->|authorizes| AD2
end
- subgraph "Azure Resources"
+ %% ===== AZURE RESOURCES =====
+ subgraph AzureRes["βοΈ Azure Resources"]
AZ1["Subscription"]
AZ2["Resource Group"]
+ AZ1 -->|contains| AZ2
end
- GH1 --> GH2
- GH2 --> |"JWT"| AD1
- AD1 --> AD3
- AD3 --> AD2
- AD2 --> |"Bearer Token"| AZ1
- AZ1 --> AZ2
+ %% ===== CONNECTIONS =====
+ GH2 -->|JWT| AD1
+ AD2 -->|Bearer Token| AZ1
- classDef github fill:#24292E,stroke:#1B1F23,color:#fff
- classDef azure fill:#0078D4,stroke:#005A9E,color:#fff
+ %% ===== NODE STYLES =====
+ classDef trigger fill:#818CF8,stroke:#4F46E5,color:#FFFFFF
+ classDef primary fill:#4F46E5,stroke:#3730A3,color:#FFFFFF
+ classDef secondary fill:#10B981,stroke:#059669,color:#FFFFFF
- class GH1,GH2 github
- class AD1,AD2,AD3,AZ1,AZ2 azure
+ class GH1,GH2 trigger
+ class AD1,AD2,AD3 primary
+ class AZ1,AZ2 secondary
+
+ %% ===== SUBGRAPH STYLES =====
+ style GitHub fill:#EEF2FF,stroke:#4F46E5,stroke-width:2px
+ style AzureAD fill:#E0E7FF,stroke:#4F46E5,stroke-width:2px
+ style AzureRes fill:#ECFDF5,stroke:#10B981,stroke-width:2px
```
### Security Controls
@@ -315,12 +382,17 @@ flowchart LR
### Bicep Module Structure
```mermaid
+---
+title: Bicep Module Structure
+---
flowchart TB
- subgraph "Entry Point"
+ %% ===== ENTRY POINT =====
+ subgraph EntryPoint["π― Entry Point"]
MAIN["main.bicep"]
end
- subgraph "src/workload"
+ %% ===== WORKLOAD MODULES =====
+ subgraph Workload["π¦ src/workload"]
W1["workload.bicep"]
W2["core/devCenter.bicep"]
W3["core/catalog.bicep"]
@@ -329,39 +401,60 @@ flowchart TB
W6["project/projectPool.bicep"]
end
- subgraph "src/connectivity"
+ %% ===== CONNECTIVITY MODULES =====
+ subgraph Connectivity["π src/connectivity"]
C1["connectivity.bicep"]
C2["vnet.bicep"]
C3["networkConnection.bicep"]
end
- subgraph "src/security"
+ %% ===== SECURITY MODULES =====
+ subgraph Security["π src/security"]
S1["security.bicep"]
S2["keyVault.bicep"]
S3["secret.bicep"]
end
- subgraph "src/identity"
+ %% ===== IDENTITY MODULES =====
+ subgraph Identity["π€ src/identity"]
I1["devCenterRoleAssignment.bicep"]
I2["projectIdentityRoleAssignment.bicep"]
end
- MAIN --> W1 & C1 & S1 & I1
- W1 --> W2 & W3 & W4 & W5 & W6
- C1 --> C2 & C3
- S1 --> S2 & S3
-
- classDef main fill:#F44336,stroke:#C62828,color:#fff
- classDef workload fill:#2196F3,stroke:#1565C0,color:#fff
- classDef connectivity fill:#4CAF50,stroke:#2E7D32,color:#fff
- classDef security fill:#FF9800,stroke:#EF6C00,color:#fff
- classDef identity fill:#9C27B0,stroke:#6A1B9A,color:#fff
-
- class MAIN main
- class W1,W2,W3,W4,W5,W6 workload
- class C1,C2,C3 connectivity
- class S1,S2,S3 security
- class I1,I2 identity
+ %% ===== CONNECTIONS =====
+ MAIN -->|deploys| W1
+ MAIN -->|deploys| C1
+ MAIN -->|deploys| S1
+ MAIN -->|deploys| I1
+ W1 -->|includes| W2
+ W1 -->|includes| W3
+ W1 -->|includes| W4
+ W1 -->|includes| W5
+ W1 -->|includes| W6
+ C1 -->|includes| C2
+ C1 -->|includes| C3
+ S1 -->|includes| S2
+ S1 -->|includes| S3
+
+ %% ===== NODE STYLES =====
+ classDef trigger fill:#818CF8,stroke:#4F46E5,color:#FFFFFF
+ classDef primary fill:#4F46E5,stroke:#3730A3,color:#FFFFFF
+ classDef secondary fill:#10B981,stroke:#059669,color:#FFFFFF
+ classDef datastore fill:#F59E0B,stroke:#D97706,color:#000000
+ classDef failed fill:#F44336,stroke:#C62828,color:#FFFFFF
+
+ class MAIN trigger
+ class W1,W2,W3,W4,W5,W6 primary
+ class C1,C2,C3 secondary
+ class S1,S2,S3 datastore
+ class I1,I2 failed
+
+ %% ===== SUBGRAPH STYLES =====
+ style EntryPoint fill:#EEF2FF,stroke:#4F46E5,stroke-width:2px
+ style Workload fill:#E0E7FF,stroke:#4F46E5,stroke-width:2px
+ style Connectivity fill:#ECFDF5,stroke:#10B981,stroke-width:2px
+ style Security fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px
+ style Identity fill:#FEE2E2,stroke:#F44336,stroke-width:2px
```
---
@@ -375,37 +468,51 @@ flowchart TB
### Artifact Flow
```mermaid
+---
+title: Artifact Flow
+---
flowchart LR
- subgraph "Build Stage"
+ %% ===== BUILD STAGE =====
+ subgraph Build["π¨ Build Stage"]
B1["Bicep Source"]
B2["az bicep build"]
B3["ARM Templates"]
- B1 --> B2 --> B3
+ B1 -->|compiles| B2
+ B2 -->|generates| B3
end
- subgraph "Storage"
- S1["GitHub Artifacts
30-day retention"]
- S2["GitHub Releases
Permanent"]
+ %% ===== STORAGE =====
+ subgraph Storage["πΎ Storage"]
+ S1["GitHub Artifacts
30-day retention"]
+ S2["GitHub Releases
Permanent"]
end
- subgraph "Deployment"
+ %% ===== DEPLOYMENT =====
+ subgraph Deployment["π Deployment"]
D1["azd provision"]
D2["Azure Resources"]
- D1 --> D2
+ D1 -->|creates| D2
end
- B3 --> S1
- B3 --> S2
- S1 --> D1
- S2 --> D1
-
- classDef build fill:#FF9800,stroke:#EF6C00,color:#fff
- classDef storage fill:#2196F3,stroke:#1565C0,color:#fff
- classDef deploy fill:#4CAF50,stroke:#2E7D32,color:#fff
-
- class B1,B2,B3 build
- class S1,S2 storage
- class D1,D2 deploy
+ %% ===== CONNECTIONS =====
+ B3 -->|uploads| S1
+ B3 -->|uploads| S2
+ S1 -->|downloads| D1
+ S2 -->|downloads| D1
+
+ %% ===== NODE STYLES =====
+ classDef datastore fill:#F59E0B,stroke:#D97706,color:#000000
+ classDef primary fill:#4F46E5,stroke:#3730A3,color:#FFFFFF
+ classDef secondary fill:#10B981,stroke:#059669,color:#FFFFFF
+
+ class B1,B2,B3 datastore
+ class S1,S2 primary
+ class D1,D2 secondary
+
+ %% ===== SUBGRAPH STYLES =====
+ style Build fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px
+ style Storage fill:#E0E7FF,stroke:#4F46E5,stroke-width:2px
+ style Deployment fill:#ECFDF5,stroke:#10B981,stroke-width:2px
```
### Versioning Scheme
diff --git a/docs/devops/release.md b/docs/devops/release.md
index 053e83f5..600e33d5 100644
--- a/docs/devops/release.md
+++ b/docs/devops/release.md
@@ -309,37 +309,74 @@ permissions:
### Branch-Based Version Calculation
```mermaid
+---
+title: Version Calculation Flow
+---
flowchart LR
- subgraph "π Version Calculation"
+ %% ===== VERSION CALCULATION =====
+ subgraph VersionCalc["π Version Calculation"]
direction TB
- START((Start)) --> CHECK{Branch Type?}
- CHECK --> |main| MAIN["Conditional Major
if minor=0 AND patch=0"]
- CHECK --> |feature/**| FEAT["Patch + commits
Suffix: -feature.name"]
- CHECK --> |fix/**| FIX["Minor + commits
Suffix: -fix.name"]
-
- MAIN --> OVERFLOW1{Overflow?}
- FEAT --> OVERFLOW2{patch > 99?}
- FIX --> OVERFLOW3{minor > 99?}
+ START(("βΆοΈ Start"))
+ CHECK{"π Branch Type?"}
+ MAIN["π Conditional Major\nif minor=0 AND patch=0"]
+ FEAT["πΏ Patch + commits\nSuffix: -feature.name"]
+ FIX["π§ Minor + commits\nSuffix: -fix.name"]
- OVERFLOW1 --> |"patch > 99"| INCMIN["minor++, patch=0"]
- OVERFLOW2 --> |Yes| INCMIN2["minor++, patch=0"]
- OVERFLOW3 --> |Yes| INCMAJ["major++, minor=0"]
+ START -->|analyzes| CHECK
+ CHECK -->|main| MAIN
+ CHECK -->|feature/**| FEAT
+ CHECK -->|fix/**| FIX
+ end
+
+ %% ===== OVERFLOW HANDLING =====
+ subgraph OverflowHandling["β οΈ Overflow Handling"]
+ direction TB
+ OVERFLOW1{"patch > 99?"}
+ OVERFLOW2{"patch > 99?"}
+ OVERFLOW3{"minor > 99?"}
- INCMIN --> FINALV[/"Final Version"/]
- INCMIN2 --> FINALV
- INCMAJ --> FINALV
- OVERFLOW1 --> |No| FINALV
- OVERFLOW2 --> |No| FINALV
- OVERFLOW3 --> |No| FINALV
+ INCMIN["π minor++, patch=0"]
+ INCMIN2["π minor++, patch=0"]
+ INCMAJ["π major++, minor=0"]
end
- classDef decision fill:#FFC107,stroke:#FFA000,color:#000
- classDef process fill:#2196F3,stroke:#1565C0,color:#fff
- classDef output fill:#4CAF50,stroke:#2E7D32,color:#fff
+ %% ===== OUTPUT =====
+ subgraph Output["π¦ Output"]
+ FINALV[/"π·οΈ Final Version"/]
+ end
+ %% ===== CONNECTIONS =====
+ MAIN -->|checks| OVERFLOW1
+ FEAT -->|checks| OVERFLOW2
+ FIX -->|checks| OVERFLOW3
+
+ OVERFLOW1 -->|Yes| INCMIN
+ OVERFLOW2 -->|Yes| INCMIN2
+ OVERFLOW3 -->|Yes| INCMAJ
+
+ INCMIN -->|outputs| FINALV
+ INCMIN2 -->|outputs| FINALV
+ INCMAJ -->|outputs| FINALV
+ OVERFLOW1 -.->|No| FINALV
+ OVERFLOW2 -.->|No| FINALV
+ OVERFLOW3 -.->|No| FINALV
+
+ %% ===== STYLES =====
+ classDef trigger fill:#818CF8,stroke:#4F46E5,color:#FFFFFF
+ classDef primary fill:#4F46E5,stroke:#3730A3,color:#FFFFFF
+ classDef secondary fill:#10B981,stroke:#059669,color:#FFFFFF
+ classDef datastore fill:#F59E0B,stroke:#D97706,color:#000000
+ classDef decision fill:#FFFBEB,stroke:#F59E0B,color:#000000
+
+ class START trigger
+ class MAIN,FEAT,FIX,INCMIN,INCMIN2,INCMAJ primary
class CHECK,OVERFLOW1,OVERFLOW2,OVERFLOW3 decision
- class MAIN,FEAT,FIX,INCMIN,INCMIN2,INCMAJ process
- class FINALV output
+ class FINALV datastore
+
+ %% ===== SUBGRAPH STYLES =====
+ style VersionCalc fill:#E0E7FF,stroke:#4F46E5,stroke-width:2px
+ style OverflowHandling fill:#FEE2E2,stroke:#F44336,stroke-width:2px
+ style Output fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px
```
### Version Rules by Branch
diff --git a/docs/scripts/README.md b/docs/scripts/README.md
index da3cb013..8cb7a142 100644
--- a/docs/scripts/README.md
+++ b/docs/scripts/README.md
@@ -33,16 +33,16 @@ tags:
## π Table of Contents
-- [π― Overview](#overview)
-- [ποΈ Scripts Architecture](#scripts-architecture)
-- [β‘ Quick Reference](#quick-reference)
-- [π Scripts by Category](#scripts-by-category)
-- [βοΈ Prerequisites Summary](#prerequisites-summary)
-- [π Common Workflows](#common-workflows)
-- [β οΈ Error Handling Patterns](#error-handling-patterns)
-- [π File Structure](#file-structure)
-- [π Related Documentation](#related-documentation)
-- [π€ Contributing](#contributing)
+- [π― Overview](#-overview)
+- [ποΈ Scripts Architecture](#%EF%B8%8F-scripts-architecture)
+- [β‘ Quick Reference](#-quick-reference)
+- [π Scripts by Category](#-scripts-by-category)
+- [βοΈ Prerequisites Summary](#%EF%B8%8F-prerequisites-summary)
+- [π Common Workflows](#-common-workflows)
+- [β οΈ Error Handling Patterns](#%EF%B8%8F-error-handling-patterns)
+- [π File Structure](#-file-structure)
+- [π Related Documentation](#-related-documentation)
+- [π€ Contributing](#-contributing)
---
diff --git a/docs/scripts/azure/create-custom-role.md b/docs/scripts/azure/create-custom-role.md
index be9914e6..984d6906 100644
--- a/docs/scripts/azure/create-custom-role.md
+++ b/docs/scripts/azure/create-custom-role.md
@@ -38,11 +38,11 @@ tags:
- [π― Overview](#-overview)
- [π Flow Visualization](#-flow-visualization)
- [π Parameters](#-parameters)
-- [βοΈ Prerequisites](#-prerequisites)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
- [π Role Definition](#-role-definition)
- [π§ Functions Reference](#-functions-reference)
- [π Usage Examples](#-usage-examples)
-- [β οΈ Error Handling](#-error-handling)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
- [π§ Troubleshooting](#-troubleshooting)
- [π Security Considerations](#-security-considerations)
- [π Related Scripts](#-related-scripts)
diff --git a/docs/scripts/azure/create-users-and-assign-role.md b/docs/scripts/azure/create-users-and-assign-role.md
index 6bf68e8f..e4a62229 100644
--- a/docs/scripts/azure/create-users-and-assign-role.md
+++ b/docs/scripts/azure/create-users-and-assign-role.md
@@ -35,11 +35,11 @@ tags:
- [π― Overview](#-overview)
- [π Flow Visualization](#-flow-visualization)
- [π Parameters](#-parameters)
-- [βοΈ Prerequisites](#-prerequisites)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
- [π Assigned Roles](#-assigned-roles)
- [π§ Functions Reference](#-functions-reference)
- [π Usage Examples](#-usage-examples)
-- [β οΈ Error Handling](#-error-handling)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
- [π§ Troubleshooting](#-troubleshooting)
- [π Security Considerations](#-security-considerations)
- [π Related Scripts](#-related-scripts)
diff --git a/docs/scripts/azure/delete-deployment-credentials.md b/docs/scripts/azure/delete-deployment-credentials.md
index e67cec6f..78f060f6 100644
--- a/docs/scripts/azure/delete-deployment-credentials.md
+++ b/docs/scripts/azure/delete-deployment-credentials.md
@@ -38,10 +38,10 @@ tags:
- [π― Overview](#-overview)
- [π Flow Visualization](#-flow-visualization)
- [π Parameters](#-parameters)
-- [βοΈ Prerequisites](#-prerequisites)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
- [π§ Functions Reference](#-functions-reference)
- [π Usage Examples](#-usage-examples)
-- [β οΈ Error Handling](#-error-handling)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
- [π§ Troubleshooting](#-troubleshooting)
- [π Security Considerations](#-security-considerations)
- [π Related Scripts](#-related-scripts)
diff --git a/docs/scripts/azure/delete-users-and-assigned-roles.md b/docs/scripts/azure/delete-users-and-assigned-roles.md
index 9dacfe56..f6dd8e34 100644
--- a/docs/scripts/azure/delete-users-and-assigned-roles.md
+++ b/docs/scripts/azure/delete-users-and-assigned-roles.md
@@ -35,11 +35,11 @@ tags:
- [π― Overview](#-overview)
- [π Flow Visualization](#-flow-visualization)
- [π Parameters](#-parameters)
-- [βοΈ Prerequisites](#-prerequisites)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
- [π Removed Roles](#-removed-roles)
- [π§ Functions Reference](#-functions-reference)
- [π Usage Examples](#-usage-examples)
-- [β οΈ Error Handling](#-error-handling)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
- [π§ Troubleshooting](#-troubleshooting)
- [π Security Considerations](#-security-considerations)
- [π Related Scripts](#-related-scripts)
diff --git a/docs/scripts/azure/generate-deployment-credentials.md b/docs/scripts/azure/generate-deployment-credentials.md
index 9069a006..01828621 100644
--- a/docs/scripts/azure/generate-deployment-credentials.md
+++ b/docs/scripts/azure/generate-deployment-credentials.md
@@ -40,13 +40,13 @@ tags:
- [π Flow Visualization](#-flow-visualization)
- [π Service Principal Creation Flow](#-service-principal-creation-flow)
- [π Parameters](#-parameters)
-- [βοΈ Prerequisites](#-prerequisites)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
- [π₯ Assigned Roles](#-assigned-roles)
- [π§ Functions Reference](#-functions-reference)
- [π Usage Examples](#-usage-examples)
-- [β οΈ Error Handling](#-error-handling)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
- [π Security Considerations](#-security-considerations)
-- [π οΈ Troubleshooting](#-troubleshooting)
+- [π οΈ Troubleshooting](#%EF%B8%8F-troubleshooting)
- [π Related Scripts](#-related-scripts)
---
diff --git a/docs/scripts/clean-setup.md b/docs/scripts/clean-setup.md
index 6d4675ab..50b59d7f 100644
--- a/docs/scripts/clean-setup.md
+++ b/docs/scripts/clean-setup.md
@@ -35,15 +35,15 @@ tags:
## π Table of Contents
-- [π― Overview](#overview)
-- [π Flow Visualization](#flow-visualization)
-- [π Parameters](#parameters)
-- [βοΈ Prerequisites](#prerequisites)
-- [π§ Functions Reference](#functions-reference)
-- [π Usage Examples](#usage-examples)
-- [β οΈ Error Handling](#error-handling)
-- [π§ Troubleshooting](#troubleshooting)
-- [π Related Scripts](#related-scripts)
+- [π― Overview](#-overview)
+- [π Flow Visualization](#-flow-visualization)
+- [π Parameters](#-parameters)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
+- [π§ Functions Reference](#-functions-reference)
+- [π Usage Examples](#-usage-examples)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
+- [π§ Troubleshooting](#-troubleshooting)
+- [π Related Scripts](#-related-scripts)
---
diff --git a/docs/scripts/configuration/README.md b/docs/scripts/configuration/README.md
index c6256646..eba83128 100644
--- a/docs/scripts/configuration/README.md
+++ b/docs/scripts/configuration/README.md
@@ -36,7 +36,7 @@ tags:
- [π― Overview](#-overview)
- [π Scripts Inventory](#-scripts-inventory)
- [π Workflow Diagram](#-workflow-diagram)
-- [βοΈ Prerequisites](#-prerequisites)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
- [π Quick Start](#-quick-start)
- [π Related Documentation](#-related-documentation)
diff --git a/docs/scripts/configuration/clean-up.md b/docs/scripts/configuration/clean-up.md
index 95dcd502..8602aa86 100644
--- a/docs/scripts/configuration/clean-up.md
+++ b/docs/scripts/configuration/clean-up.md
@@ -38,12 +38,12 @@ tags:
- [π― Overview](#-overview)
- [π Flow Visualization](#-flow-visualization)
- [π Parameters](#-parameters)
-- [βοΈ Prerequisites](#-prerequisites)
-- [ποΈ Resource Groups Deleted](#-resource-groups-deleted)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
+- [ποΈ Resource Groups Deleted](#%EF%B8%8F-resource-groups-deleted)
- [π§ Functions Reference](#-functions-reference)
- [π Usage Examples](#-usage-examples)
-- [β οΈ Error Handling](#-error-handling)
-- [π οΈ Troubleshooting](#-troubleshooting)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
+- [π οΈ Troubleshooting](#%EF%B8%8F-troubleshooting)
- [π Security Considerations](#-security-considerations)
- [π Related Scripts](#-related-scripts)
diff --git a/docs/scripts/configuration/winget-update.md b/docs/scripts/configuration/winget-update.md
index 4fe5d4a7..69480dd8 100644
--- a/docs/scripts/configuration/winget-update.md
+++ b/docs/scripts/configuration/winget-update.md
@@ -40,11 +40,11 @@ tags:
- [π Flow Visualization](#-flow-visualization)
- [π Update Process Flow](#-update-process-flow)
- [π Parameters](#-parameters)
-- [βοΈ Prerequisites](#-prerequisites)
-- [π οΈ Configuration](#-configuration)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
+- [π οΈ Configuration](#%EF%B8%8F-configuration)
- [π§ Functions Reference](#-functions-reference)
- [π Usage Examples](#-usage-examples)
-- [β οΈ Error Handling](#-error-handling)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
- [π Troubleshooting](#-troubleshooting)
- [π DSC Integration](#-dsc-integration)
- [π Security Considerations](#-security-considerations)
diff --git a/docs/scripts/github/README.md b/docs/scripts/github/README.md
index 08036184..14cb934a 100644
--- a/docs/scripts/github/README.md
+++ b/docs/scripts/github/README.md
@@ -35,7 +35,7 @@ tags:
- [π― Overview](#-overview)
- [π Scripts Inventory](#-scripts-inventory)
- [π Workflow Diagram](#-workflow-diagram)
-- [βοΈ Prerequisites](#-prerequisites)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
- [π Quick Start](#-quick-start)
- [π Related Documentation](#-related-documentation)
diff --git a/docs/scripts/github/create-github-secret-azure-credentials.md b/docs/scripts/github/create-github-secret-azure-credentials.md
index ff5469ef..ca45891f 100644
--- a/docs/scripts/github/create-github-secret-azure-credentials.md
+++ b/docs/scripts/github/create-github-secret-azure-credentials.md
@@ -36,13 +36,13 @@ tags:
- [π― Overview](#-overview)
- [π Flow Visualization](#-flow-visualization)
- [π Parameters](#-parameters)
-- [βοΈ Prerequisites](#-prerequisites)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
- [π₯ Expected Input Format](#-expected-input-format)
- [π§ Functions Reference](#-functions-reference)
- [π Usage Examples](#-usage-examples)
-- [βοΈ Using the Secret in GitHub Actions](#-using-the-secret-in-github-actions)
-- [β οΈ Error Handling](#-error-handling)
-- [π οΈ Troubleshooting](#-troubleshooting)
+- [βοΈ Using the Secret in GitHub Actions](#%EF%B8%8F-using-the-secret-in-github-actions)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
+- [π οΈ Troubleshooting](#%EF%B8%8F-troubleshooting)
- [π Security Considerations](#-security-considerations)
- [π Related Scripts](#-related-scripts)
@@ -54,7 +54,7 @@ This script authenticates to GitHub using the GitHub CLI and creates a repositor
---
-[β¬οΈ Back to Top](#-creategithubsecretazurecredentialsps1)
+[β¬οΈ Back to Top](#-table-of-contents)
---
diff --git a/docs/scripts/github/delete-github-secret-azure-credentials.md b/docs/scripts/github/delete-github-secret-azure-credentials.md
index 28742a3f..0bc3da53 100644
--- a/docs/scripts/github/delete-github-secret-azure-credentials.md
+++ b/docs/scripts/github/delete-github-secret-azure-credentials.md
@@ -38,11 +38,11 @@ tags:
- [π― Overview](#-overview)
- [π Flow Visualization](#-flow-visualization)
- [π Parameters](#-parameters)
-- [βοΈ Prerequisites](#-prerequisites)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
- [π§ Functions Reference](#-functions-reference)
- [π Usage Examples](#-usage-examples)
-- [β οΈ Error Handling](#-error-handling)
-- [π οΈ Troubleshooting](#-troubleshooting)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
+- [π οΈ Troubleshooting](#%EF%B8%8F-troubleshooting)
- [π Security Considerations](#-security-considerations)
- [π Related Scripts](#-related-scripts)
diff --git a/docs/scripts/setup.md b/docs/scripts/setup.md
index 56911e0a..0bc55706 100644
--- a/docs/scripts/setup.md
+++ b/docs/scripts/setup.md
@@ -33,17 +33,17 @@ tags:
## π Table of Contents
-- [π― Overview](#overview)
-- [π Flow Visualization](#flow-visualization)
-- [π Authentication Flow](#authentication-flow)
-- [π Parameters](#parameters)
-- [βοΈ Prerequisites](#prerequisites)
-- [π§ Functions Reference](#functions-reference)
-- [π Usage Examples](#usage-examples)
-- [β οΈ Error Handling](#error-handling)
-- [π Security Considerations](#security-considerations)
-- [π§ Troubleshooting](#troubleshooting)
-- [π Related Scripts](#related-scripts)
+- [π― Overview](#-overview)
+- [π Flow Visualization](#-flow-visualization)
+- [π Authentication Flow](#-authentication-flow)
+- [π Parameters](#-parameters)
+- [βοΈ Prerequisites](#%EF%B8%8F-prerequisites)
+- [π§ Functions Reference](#-functions-reference)
+- [π Usage Examples](#-usage-examples)
+- [β οΈ Error Handling](#%EF%B8%8F-error-handling)
+- [π Security Considerations](#-security-considerations)
+- [π§ Troubleshooting](#-troubleshooting)
+- [π Related Scripts](#-related-scripts)
---