Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
f3fe37a
feat: streamlined azd deployment using AI Landing Zone submodule
mswantek68 Oct 23, 2025
77b41a4
docs: add comprehensive deployment summary
mswantek68 Oct 23, 2025
5bb118d
docs: add comprehensive parameter customization guide
mswantek68 Oct 23, 2025
f74fa8c
feat: add modern .bicepparam file with type safety and IntelliSense
mswantek68 Oct 23, 2025
242daef
docs: update QUICKSTART to recommend bicepparam file
mswantek68 Oct 23, 2025
190dbd3
fix: align deployToggles with AI Landing Zone defaults and add clarif…
mswantek68 Oct 23, 2025
7973735
fix: enable Bastion and Jump VM by default for accessing private endp…
mswantek68 Oct 23, 2025
4527506
docs: add comprehensive guide for accessing private resources
mswantek68 Oct 23, 2025
c3bc024
docs: add prominent warnings about ARM 4MB template size limit
mswantek68 Oct 23, 2025
47a16e5
feat: integrate AI Landing Zone submodule with Template Spec support
mswantek68 Oct 23, 2025
565d8fa
chore: update AI Landing Zone submodule pointer
mswantek68 Oct 23, 2025
35137af
feat: Complete 5-stage modular deployment with conditional toggles
mswantek68 Oct 24, 2025
004e432
chore: Remove unused deployment files
mswantek68 Oct 24, 2025
c68a0c7
chore: Remove unused scripts and Python requirements
mswantek68 Oct 24, 2025
5bbdf71
chore: Remove outdated documentation files
mswantek68 Oct 24, 2025
6570a85
Fix subnet layout and Application Gateway private IP to match AI Land…
mswantek68 Oct 25, 2025
fcc74de
Apply AI Landing Zone variable pattern to all 5 stages. Resolves Bice…
mswantek68 Oct 25, 2025
a766255
Mark as internal development branch
mswantek68 Oct 27, 2025
cb825ea
Add Stage 6 (Fabric Capacity) and import automation scripts from fabr…
mswantek68 Oct 27, 2025
5a67460
feat: Add Fabric private networking with automated public access control
mswantek68 Oct 27, 2025
03f2eca
feat: Add cross-subscription Purview support and fix deployment issues
mswantek68 Oct 28, 2025
4596d5e
feat: Add environment-based naming for Fabric workspace, domain, and …
mswantek68 Oct 28, 2025
ed4a6c2
feat: Add firewall rules for Power BI, Fabric, and Azure Portal access
mswantek68 Oct 28, 2025
a839103
feat: Complete firewall routing configuration for jumpbox subnet
mswantek68 Oct 28, 2025
2bf62ba
fix: Enable DNS proxy on firewall policy for FQDN resolution
mswantek68 Oct 28, 2025
96ad874
WIP: Modular orchestrator approach - hitting 4MB ARM template limit
mswantek68 Oct 31, 2025
08d1236
Use AI Landing Zone directly + Fabric capacity extension
mswantek68 Oct 31, 2025
084f357
Remove modular orchestrator files - using AI Landing Zone directly
mswantek68 Oct 31, 2025
2d816e1
Remove unnecessary preprovision scripts - using AI Landing Zone's scr…
mswantek68 Oct 31, 2025
4a342e7
Fix azure.yaml preprovision hooks format for azd 1.20+
mswantek68 Oct 31, 2025
315eae2
Fix infra path to point to deploy directory with Template Spec refere…
mswantek68 Oct 31, 2025
a77a4c3
Make deploy_fabric_capacity.sh executable
mswantek68 Oct 31, 2025
0eb48c5
Fix Fabric capacity name format - remove hyphens
mswantek68 Oct 31, 2025
a3fc8a1
Fix Fabric capacity SKU format - add tier field
mswantek68 Oct 31, 2025
0ad0c03
Replace shell script with Bicep module for Fabric capacity deployment
mswantek68 Oct 31, 2025
6358b79
Implement Fabric capacity deployment in main.bicep wrapper
mswantek68 Oct 31, 2025
f7108a4
Fix OneLake SAMI auth and AI Foundry RBAC
mswantek68 Nov 5, 2025
87143b9
Sync fabric deployment automation and docs
mswantek68 Nov 5, 2025
2e97742
Document template spec deployment flow
mswantek68 Nov 6, 2025
e6e0bcd
refresh submodule
mswantek68 Nov 6, 2025
3c492e3
refactor: reorganize fabric automation scripts by workspace scope
mswantek68 Nov 10, 2025
0111ce0
Updates to several sections of automation code. Add FAQ to address co…
mswantek68 Nov 25, 2025
0866488
removal of old docs and direction
mswantek68 Nov 25, 2025
9063662
Updates and improvements to readme and fabric networking to ai search
mswantek68 Dec 2, 2025
2aadb33
updates to main and parameter naming
mswantek68 Dec 2, 2025
57a91a5
updates to scripts to resume paused fabric capacity when running post…
mswantek68 Dec 3, 2025
bd1930d
docs: overhaul README and consolidate documentation for v1.3
mswantek68 Dec 9, 2025
eb6d710
remove document about Fabric External environment
mswantek68 Dec 15, 2025
867bfa2
update Foundry name in readme
mswantek68 Dec 15, 2025
41221f4
Clarify Purview is configured not provisioned
mswantek68 Dec 15, 2025
216738d
Merge branch 'main' into internal/ailz-with-fabric
mswantek68 Dec 16, 2025
bf19ef3
Correct documentation links
mswantek68 Dec 16, 2025
d5a2257
corrected bad link
mswantek68 Dec 16, 2025
a62cf9e
Merge branch 'main' into internal/ailz-with-fabric
mswantek68 Dec 17, 2025
9daded3
Update to architecture drawing
mswantek68 Dec 17, 2025
2edc9d3
sanitized parameter file
mswantek68 Dec 17, 2025
918f78b
sanitize parameters and add virtualization script
mswantek68 Dec 17, 2025
b93b74d
sanitize the parameters
mswantek68 Dec 17, 2025
19b76d9
Updated all PowerShell automation scripts to use the OS temp director…
Dec 18, 2025
065e5ff
README: Added a Windows shell note under the submodule section to cal…
Dec 18, 2025
ecc4d14
Merge branch 'main' into internal/ailz-with-fabric
Dec 18, 2025
b927599
Removed the “Important: Keep environment-specific values local” block…
Dec 18, 2025
7612686
Adds a single sentence under “Prerequisites” clarifying that if Fabri…
mswantek68 Dec 19, 2025
610120d
Emphasise needing Fabric Admin if provisioning Fabric Workspace = true
mswantek68 Dec 19, 2025
07b859e
New note clarifying that if Fabric provisioning is enabled, the user …
mswantek68 Dec 19, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .github/workflows/azd-template-validation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: AZD Template Validation
on:
workflow_dispatch:
push:
branches:
- main

permissions:
contents: read
id-token: write
pull-requests: write

jobs:
template_validation:
runs-on: ubuntu-latest
name: azd template validation
steps:
- uses: actions/checkout@v4

- uses: microsoft/template-validation-action@Latest
with:
validateAzd: ${{ vars.TEMPLATE_VALIDATE_AZD }}
useDevContainer: ${{ vars.TEMPLATE_USE_DEV_CONTAINER }}
id: validation
env:
AZURE_CLIENT_ID: ${{ vars.AZURE_CLIENT_ID }}
AZURE_TENANT_ID: ${{ vars.AZURE_TENANT_ID }}
AZURE_SUBSCRIPTION_ID: ${{ vars.AZURE_SUBSCRIPTION_ID }}
AZURE_ENV_NAME: ${{ vars.AZURE_ENV_NAME }}
AZURE_LOCATION: ${{ vars.AZURE_LOCATION }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: print result
run: cat ${{ steps.validation.outputs.resultFile }}
84 changes: 27 additions & 57 deletions .github/workflows/azure-dev.yml
Original file line number Diff line number Diff line change
@@ -1,74 +1,44 @@
name: AZD Template Validation
on:
name: AZD Deployment
on:
workflow_dispatch:
push:
branches:
- main

permissions:
contents: read
id-token: write
pull-requests: write
contents: read

jobs:
template_validation:
build:
runs-on: ubuntu-latest
name: azd template validation
env:
AZURE_CLIENT_ID: ${{ vars.AZURE_CLIENT_ID }}
AZURE_TENANT_ID: ${{ vars.AZURE_TENANT_ID }}
AZURE_SUBSCRIPTION_ID: ${{ vars.AZURE_SUBSCRIPTION_ID }}
AZURE_RESOURCE_GROUP: ${{ vars.AZURE_RESOURCE_GROUP }}
AZURE_ENV_NAME: ${{ vars.AZURE_ENV_NAME }}
AZURE_LOCATION: ${{ vars.AZURE_LOCATION }}
AZURE_USER_OBJECT_ID: ''
steps:
- uses: actions/checkout@v4

- name: Azure Login
- name: Checkout
uses: actions/checkout@v4
- name: Install azd
uses: Azure/setup-azd@v2
- name: Azure Developer CLI Login
run: |
azd auth login `
--client-id "$Env:AZURE_CLIENT_ID" `
--federated-credential-provider "github" `
--tenant-id "$Env:AZURE_TENANT_ID"
shell: pwsh
- name: Azure CLI Login
uses: azure/login@v2
with:
client-id: ${{ vars.AZURE_CLIENT_ID }}
tenant-id: ${{ vars.AZURE_TENANT_ID }}
subscription-id: ${{ vars.AZURE_SUBSCRIPTION_ID }}

- name: Create Resource Group for Validation
run: |
ENV_NAME="${{ vars.AZURE_ENV_NAME }}"
RG_NAME="rg-${ENV_NAME}"
echo "Creating resource group for template validation: ${RG_NAME}"
az group create \
--name "${RG_NAME}" \
--location "${{ vars.AZURE_LOCATION }}" \
--tags "CreatedBy=GitHubActions"
echo "Resource group ${RG_NAME} created successfully"

- uses: microsoft/template-validation-action@Latest
with:
validateAzd: ${{ vars.TEMPLATE_VALIDATE_AZD }}
useDevContainer: ${{ vars.TEMPLATE_USE_DEV_CONTAINER }}
validateTests: ${{ vars.AZD_VALIDATE_TESTS }}
id: validation
- name: Provision Infrastructure
run: azd provision --no-prompt
env:
AZURE_CLIENT_ID: ${{ vars.AZURE_CLIENT_ID }}
AZURE_TENANT_ID: ${{ vars.AZURE_TENANT_ID }}
AZURE_SUBSCRIPTION_ID: ${{ vars.AZURE_SUBSCRIPTION_ID }}
AZURE_ENV_NAME: ${{ vars.AZURE_ENV_NAME }}
AZURE_LOCATION: ${{ vars.AZURE_LOCATION }}
AZURE_RESOURCE_GROUP: rg-${{ vars.AZURE_ENV_NAME }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# Set correct principal type for GitHub Actions ServicePrincipal
AZURE_DEPLOYER_PRINCIPAL_TYPE: ServicePrincipal
# Infrastructure parameter defaults for pipeline
AZURE_ACR_ENABLED: 'false'
AZURE_API_MANAGEMENT_ENABLED: 'false'
AZURE_AI_CONTENT_SAFETY_ENABLED: 'false'
AZURE_AI_DOC_INTELLIGENCE_ENABLED: 'false'
AZURE_AI_LANGUAGE_ENABLED: 'false'
AZURE_AI_SEARCH_ENABLED: 'true'
AZURE_AI_SPEECH_ENABLED: 'false'
AZURE_AI_TRANSLATOR_ENABLED: 'false'

AZURE_AI_VISION_ENABLED: 'false'
AZURE_APP_SAMPLE_ENABLED: 'false'
AZURE_COSMOS_DB_ENABLED: 'true'
AZURE_NETWORK_ISOLATION: 'false'
AZURE_SQL_SERVER_ENABLED: 'false'
AZURE_AI_DEPLOYMENTS_LOCATION: ${{ vars.AZURE_LOCATION }}
AZURE_DEV_COLLECT_TELEMETRY: ${{ vars.AZURE_DEV_COLLECT_TELEMETRY }}


- name: print result
run: cat ${{ steps.validation.outputs.resultFile }}
AZD_INITIAL_ENVIRONMENT_CONFIG: ${{ secrets.AZD_INITIAL_ENVIRONMENT_CONFIG }}
12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,15 @@
.vs
.venv
__pycache__

# Azure Developer CLI (azd)
.azure/

# Local environment files
.env
.env.*
!.env.example

# Local-only Bicep parameter overrides
infra/*.local.bicepparam
infra/*.local.bicepparam.json
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "submodules/ai-landing-zone"]
path = submodules/ai-landing-zone
url = https://github.com/Azure/AI-Landing-Zones.git
30 changes: 30 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,36 @@

All notable changes to this project will be documented in this file.

## [1.3] - 2025-12-09
### Added
- Microsoft Fabric integration with automatic capacity creation and management
- Microsoft Purview integration for governance and data cataloging
- OneLake indexing pipeline connecting Fabric lakehouses to AI Search
- Comprehensive post-provision automation (22 hooks for Fabric/Purview/Search setup)
- New documentation: `deploy_app_from_foundry.md` for publishing apps from AI Foundry
- New documentation: `TRANSPARENCY_FAQ.md` for responsible AI transparency
- New documentation: `NewUserGuide.md` for first-time users
- Header icons matching GSA standard format
- Fabric private networking documentation

### Changed
- README.md restructured to match Microsoft GSA (Global Solution Accelerator) format
- DeploymentGuide.md consolidated with all deployment options in one place
- Updated Azure Fabric CLI commands (`az fabric capacity` replaces deprecated `az powerbi embedded-capacity`)
- Post-provision scripts now validate Fabric capacity state before execution
- Navigation links use pipe separators matching other GSA repos

### Removed
- `github_actions_steps.md` (stub placeholder)
- `github_code_spaces_steps.md` (consolidated into DeploymentGuide.md)
- `local_environment_steps.md` (consolidated into DeploymentGuide.md)
- `Dev_ContainerSteps.md` (consolidated into DeploymentGuide.md)
- `transfer_project_connections.md` (feature deprecated)
- `sample_app_setup.md` (replaced with `deploy_app_from_foundry.md`)
- `Verify_Services_On_Network.md` (referenced non-existent script)
- `add_additional_services.md` (outdated, redundant with PARAMETER_GUIDE.md)
- `modify_deployed_models.md` (outdated, redundant with PARAMETER_GUIDE.md)

## [1.2] - 2025-05-13
### Added
- Add new project module leveraging the new cognitive services/projects type
Expand Down
Loading
Loading