After running azd up or azd provision followed by azd hooks run postprovision, use these steps to verify that all components were deployed correctly and are functioning as expected.
| Component | How to Verify | Expected State |
|---|---|---|
| Fabric Capacity | Azure Portal → Microsoft Fabric capacities | Active (not Paused) |
| Fabric Workspace | app.fabric.microsoft.com | Workspace visible with 3 lakehouses |
| AI Foundry Project | ai.azure.com | Project accessible, models deployed |
| AI Search Index | Azure Portal → AI Search → Indexes | onelake-index exists with documents |
| Purview Scan | Purview Portal → Data Map → Sources | Fabric data source registered |
The Fabric capacity must be in Active state for the workspace and lakehouses to function.
- Navigate to Azure Portal → Microsoft Fabric capacities
- Select your capacity (e.g.,
fabricdev<envname>) - Verify the State shows Active
If the capacity is Paused:
# Resume via Azure CLI
az fabric capacity resume --capacity-name <capacity-name> --resource-group <rg-name>Cost Note: Fabric capacities incur charges while Active. The capacity can be paused when not in use to reduce costs.
-
Navigate to app.fabric.microsoft.com
-
Sign in with your Azure credentials
-
Select the workspace created by the deployment (e.g.,
workspace-<envname>) -
Verify the following lakehouses exist:
- bronze — Raw ingested documents
- silver — Processed/transformed data
- gold — Curated analytics-ready data
-
Open the bronze lakehouse and verify the
Files/documentsfolder structure exists
- Navigate to ai.azure.com
- Sign in and select your AI Foundry project
- Verify:
- Models — Check that GPT-4o and text-embedding-ada-002 (or configured models) are deployed
- Connections — AI Search connection should be listed
- Playground — Test the chat playground with a sample query
- In AI Foundry, go to Playgrounds → Chat
- Click Add your data
- Select your AI Search index (
onelake-index) - Ask a question about your indexed documents
If the connection fails, verify RBAC roles are assigned (see Troubleshooting section).
- Navigate to Azure Portal → AI Search → your search service
- Go to Indexes and verify
onelake-indexexists - Check the Document count — should be > 0 if documents were uploaded to the bronze lakehouse
- Go to Indexers and verify
onelake-indexershows:- Status: Success
- Last run: Recent timestamp
- In the Search service, go to Search explorer
- Run a simple query:
* - Verify documents are returned
If no documents appear, check:
- Documents exist in
bronze/Files/documents/ - Indexer has run successfully (check indexer execution history)
- Navigate to the Microsoft Purview governance portal
- Go to Data Map → Sources
- Verify the Fabric data source is registered (e.g.,
Fabric-Workspace-<id>) - Check Scans to see if the initial scan completed
- In Purview, go to Data Catalog → Browse
- Search for your lakehouse assets
- Verify lineage shows data flow from bronze → silver → gold
When networkIsolationMode is set to isolate resources:
-
Go to Azure Portal → Azure AI Foundry → your account
-
Click Settings → Networking
-
Verify:
- Public network access: Disabled (if fully isolated)
- Private endpoints: Active connections listed
-
Open the Workspace managed outbound access tab to see private endpoints
When accessing AI Foundry from outside the virtual network, you should see an access denied message:
This is expected behavior — the resources are only accessible from within the virtual network.
For network-isolated deployments, use Azure Bastion to access resources:
-
Navigate to Azure Portal → your resource group → Virtual Machine
-
Ensure the VM is Running (start it if stopped)
-
Select Bastion under the Connect menu
-
Enter the VM admin credentials (set during deployment) and click Connect
-
Once connected, open Edge browser and navigate to:
- ai.azure.com — AI Foundry
- app.fabric.microsoft.com — Fabric
-
Complete MFA if prompted
-
You should now have full access to the isolated resources
# Check capacity state
az resource show --ids /subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.Fabric/capacities/<name> --query properties.state
# Resume capacity
az fabric capacity resume --capacity-name <name> --resource-group <rg>Verify RBAC roles are assigned to the AI Foundry identities:
# Get the AI Search resource ID
SEARCH_ID=$(az search service show --name <search-name> --resource-group <rg> --query id -o tsv)
# Check role assignments
az role assignment list --scope $SEARCH_ID --output tableRequired roles on the AI Search service:
- Search Service Contributor — For the AI Foundry account and project managed identities
- Search Index Data Contributor — For read/write access to index data
- Search Index Data Reader — For read access to index data
If roles are missing, re-run the RBAC setup:
eval $(azd env get-values)
pwsh ./scripts/automationScripts/OneLakeIndex/06_setup_ai_foundry_search_rbac.ps1-
Verify documents exist in the bronze lakehouse:
- Go to Fabric → bronze lakehouse → Files → documents
-
Check indexer status:
- Azure Portal → AI Search → Indexers →
onelake-indexer - Review execution history for errors
- Azure Portal → AI Search → Indexers →
-
Manually trigger indexer:
az search indexer run --name onelake-indexer --service-name <search-name> --resource-group <rg>
-
Verify Purview has Fabric workspace access:
- The Purview managed identity needs Contributor role on the Fabric workspace
-
Check scan configuration:
- Purview Portal → Data Map → Sources → Fabric source → Scans
-
Re-run the registration script:
eval $(azd env get-values) pwsh ./scripts/automationScripts/FabricWorkspace/CreateWorkspace/register_fabric_datasource.ps1
To re-run all post-provision hooks:
azd hooks run postprovisionTo run a specific script:
eval $(azd env get-values)
pwsh ./scripts/automationScripts/<path-to-script>.ps1Once verification is complete:
- Upload documents to the bronze lakehouse for indexing
- Test the AI Foundry playground with your indexed content
- Configure additional models if needed
- Deploy your app from the AI Foundry playground
- Review governance in Microsoft Purview








