Skip to content

feat: Infra restructure mirror toolkit layout under infra/bicep, infra/avm#269

Draft
Prachig-Microsoft wants to merge 23 commits into
devfrom
psl/infra-restructure
Draft

feat: Infra restructure mirror toolkit layout under infra/bicep, infra/avm#269
Prachig-Microsoft wants to merge 23 commits into
devfrom
psl/infra-restructure

Conversation

@Prachig-Microsoft

Copy link
Copy Markdown
Contributor

This pull request introduces several infrastructure improvements and refactoring, primarily focused on Azure Bicep modules and deployment workflows. The main highlights are the addition of new Bicep modules for AI resources and role assignments, updates to deployment parameter files, and workflow changes to reflect new script locations. These changes help modularize the infrastructure codebase, improve maintainability, and align scripts and documentation with the new directory structure.

Purpose

  • ...

Does this introduce a breaking change?

  • Yes
  • No

Golden Path Validation

  • I have tested the primary workflows (the "golden path") to ensure they function correctly without errors.

Deployment Validation

  • I have validated the deployment process successfully and all services are running as expected with this change.

What to Check

Verify that the following are valid

  • ...

Other Information

Prachig-Microsoft and others added 5 commits June 11, 2026 14:38
…, infra/scripts

User Story 45200. Adds infra/bicep/ (mirror of active main.bicep with domain-organized modules under modules/{ai,identity,networking}), infra/avm/ scaffold for future AVM rewrite, and moves provisioning scripts from /scripts to infra/scripts/{pre-provision,post-provision,build,utilities}. Updates GitHub Actions workflows and QuotaCheck.md to reference new script paths. Top-level main.bicep / main.json remain the canonical deployment artifacts referenced by azure.yaml.
…avm (mimics agentic-applications PR)

User Story 45200. Replaces custom modules in infra/bicep/modules/ with toolkit
vanilla-bicep modules from mcaps-microsoft/accelerator-toolkit-core@psl/infra
(ai/, data/, identity/, monitoring/, compute/) plus Container Apps modules
(container-app.bicep, container-app-environment.bicep). Rewrites
infra/bicep/main.bicep and main_custom.bicep to call toolkit modules in the same
style as microsoft/agentic-applications-for-unified-data-foundation-solution-
accelerator@psl/infra-restructure-new.

Populates infra/avm/ with toolkit AVM modules and matching main.bicep/main.json.

Top-level infra/main.bicep / main.json remain the canonical deployment artifacts
referenced by azure.yaml - unchanged.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…F, role-assignment GUID fix)

- Add virtual-machine.bicep AVM module with Entra ID authentication
- Update container-app-environment.bicep (both flavors): add workloadProfiles,
  WAF params (enablePrivateNetworking, enableMonitoring, enableRedundancy)
- Fix role-assignments.bicep GUID generation: scope to target resource ID
  instead of resourceGroup().id to prevent collisions
- Add VM module call to infra/avm/main.bicep with default credentials
- Regenerate main.json for both bicep and avm flavors

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Convert top-level infra/main.bicep and main_custom.bicep into thin deployment
routers (matching agentic-applications PR pattern) that dispatch to:
  - ./bicep/main.bicep (vanilla, deploymentFlavor='bicep')
  - ./avm/main.bicep   (AVM, deploymentFlavor='avm' or 'avm-waf')

Remove old flat infra/modules/ (6 camelCase files) — replaced by structured
subdirectories under infra/bicep/modules/ and infra/avm/modules/ with proper
ai/, compute/, data/, identity/, monitoring/, networking/ subfolders.

Update main.parameters.json to include deploymentFlavor param.
Update main.waf.parameters.json to set deploymentFlavor='avm-waf'.
Add SERVICE_* and CONTAINER_FRONTEND_* outputs to bicep/main_custom.bicep.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The Responses API requires the new v1 API endpoint. The old preview
version (2025-03-01-preview) does not support the /responses endpoint,
causing BadRequest 'API version not supported' errors at runtime.

Updated across all infra templates: bicep, avm, and compiled JSON.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Prachig-Microsoft and others added 2 commits June 12, 2026 14:31
The Responses API requires the new v1 API endpoint. The old preview
version (2025-03-01-preview) does not support the /responses endpoint,
causing BadRequest 'API version not supported' errors at runtime.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Both backend and processor use Azure Queue Storage for processing pipeline.
Added storageQueueDataContributor role definition and assignments for both
app identities in avm and bicep flavors.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The processor code reads STORAGE_QUEUE_ACCOUNT (not STORAGE_ACCOUNT_NAME) to
build the queue service URL. Without it, the default value 'http://<storage
queue url>' was used, causing a double-prefixed URL (https://http://...) and
DNS resolution failure for host 'http'.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Prachig-Microsoft and others added 2 commits June 15, 2026 20:29
Processor needs OpenAI access to run migration analysis. Added role
assignment for both new and existing AI Foundry project paths in both
avm and bicep flavors.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Adds Foundry User and Cognitive Services User role assignments for the
processor container app on AI Foundry, for both new and existing project
deployment paths. Required for processor to access OpenAI Responses API.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…lignment

- Sync 13 toolkit modules from psl/infra (cognitiveServicesEndpoint now upstream)
- Add standalone main_custom.bicep vanilla bicep orchestrator (CKM pattern)
- Wire VNet, Bastion Host, and VM subnet in avm/main.bicep
- Add Processor RBAC: Foundry User + Cognitive Services User (bicep role-assignments)
- Use cognitiveServicesEndpoint in avm/main.bicep and bicep/main.bicep
- Align README with agentic PR structure (nav links, Supporting Documentation table,
  Choose the Path, Responsible AI note, System Assigned identity fix)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…PrivateNetworking

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…nt guide

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Sync container-registry.bicep (avm + bicep): SKU default Standard, retention policy
- Sync cosmos-db-mongo.bicep (avm): networkAclBypass AzureServices
- Rename AZURE_ENV_DEPLOYMENT_FLAVOR to DEPLOYMENT_FLAVOR in main.parameters.json

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…uide

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant