Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
5a98fac
Virtual Network Changes, Added new file and updated main bicep file
Vemarthula-Microsoft Oct 13, 2025
9122d31
added baston and jump box modules in main bicep file
Vemarthula-Microsoft Oct 13, 2025
818fbf6
Refactor Bicep templates: update parameter names, enhance naming conv…
Abdul-Microsoft Oct 13, 2025
770385a
Update log analytics workspace ID handling and standardize naming con…
Abdul-Microsoft Oct 14, 2025
40f4c51
Merge pull request #287 from microsoft/psl-wafstandard
Abdul-Microsoft Oct 14, 2025
2c6fcde
Updated Variables to match with other template
Roopan-Microsoft Oct 14, 2025
3858e26
kept default value for enablePrivateNetworking
Roopan-Microsoft Oct 14, 2025
87fd32e
Refactor diagnostic settings and app logs configuration to conditiona…
Abdul-Microsoft Oct 14, 2025
f9a369e
update with chmod for post deployment sccript
Roopan-Microsoft Oct 14, 2025
80f06b6
changing the document and changed the variable names
Vemarthula-Microsoft Oct 14, 2025
06dc656
Enabled purge protection for app configuration
Roopan-Microsoft Oct 14, 2025
e6f7569
Merge branch 'dev' into ve-networkchanges
Abdul-Microsoft Oct 15, 2025
0bf481f
updated main.json
Abdul-Microsoft Oct 15, 2025
484438a
added some logs to check
Roopan-Microsoft Oct 15, 2025
5380b9e
changed to post deploy
Roopan-Microsoft Oct 15, 2025
97220d6
updated azure.yaml to check
Roopan-Microsoft Oct 15, 2025
e1d41bd
updated for sh
Roopan-Microsoft Oct 15, 2025
83a8bdb
Refactor network configurations: update address prefixes and subnet n…
Abdul-Microsoft Oct 15, 2025
b274954
updated main.json file
Abdul-Microsoft Oct 15, 2025
960978a
Merge pull request #288 from microsoft/ve-networkchanges
Prajwal-Microsoft Oct 15, 2025
b19074c
Update diagnostic settings to handle empty log analytics workspace re…
Abdul-Microsoft Oct 15, 2025
4b48a18
Merge pull request #289 from microsoft/ve-networkchanges
Prajwal-Microsoft Oct 15, 2025
93187ef
Add AZURE_DEV_COLLECT_TELEMETRY variable in in azure-dev.yaml file
NirajC-Microsoft Oct 17, 2025
543dbd2
Merge pull request #290 from microsoft/psl-azd-dev-nj
Roopan-Microsoft Oct 17, 2025
831527a
Merge branch 'main' into dev
Prajwal-Microsoft Oct 20, 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
1 change: 1 addition & 0 deletions .github/workflows/azure-dev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ jobs:
AZURE_ENV_NAME: ${{ secrets.AZURE_ENV_NAME }}
AZURE_LOCATION: ${{ secrets.AZURE_LOCATION }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
AZURE_DEV_COLLECT_TELEMETRY: ${{ vars.AZURE_DEV_COLLECT_TELEMETRY }}

# Step 3: Print the result of the validation
- name: Print result
Expand Down
20 changes: 10 additions & 10 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,16 +33,16 @@ jobs:

- name: Login to Azure
run: |
az login --service-principal -u ${{ secrets.AZURE_MAINTENANCE_CLIENT_ID }} -p ${{ secrets.AZURE_MAINTENANCE_CLIENT_SECRET }} --tenant ${{ secrets.AZURE_TENANT_ID }}
az account set --subscription ${{ secrets.AZURE_MAINTENANCE_SUBSCRIPTION_ID }}
az login --service-principal -u ${{ secrets.AZURE_CLIENT_ID }} -p ${{ secrets.AZURE_CLIENT_SECRET }} --tenant ${{ secrets.AZURE_TENANT_ID }}
az account set --subscription ${{ secrets.AZURE_SUBSCRIPTION_ID }}

- name: Run Quota Check
id: quota-check
run: |
export AZURE_MAINTENANCE_CLIENT_ID=${{ secrets.AZURE_MAINTENANCE_CLIENT_ID }}
export AZURE_CLIENT_ID=${{ secrets.AZURE_CLIENT_ID }}
export AZURE_TENANT_ID=${{ secrets.AZURE_TENANT_ID }}
export AZURE_MAINTENANCE_CLIENT_SECRET=${{ secrets.AZURE_MAINTENANCE_CLIENT_SECRET }}
export AZURE_MAINTENANCE_SUBSCRIPTION_ID="${{ secrets.AZURE_MAINTENANCE_SUBSCRIPTION_ID }}"
export AZURE_CLIENT_SECRET=${{ secrets.AZURE_CLIENT_SECRET }}
export AZURE_SUBSCRIPTION_ID="${{ secrets.AZURE_SUBSCRIPTION_ID }}"
export GPT_MIN_CAPACITY="100"
export AZURE_REGIONS="${{ vars.AZURE_REGIONS }}"

Expand Down Expand Up @@ -144,15 +144,15 @@ jobs:
--resource-group ${{ env.RESOURCE_GROUP_NAME }} \
--template-file infra/main.json \
--parameters \
environmentName="${{ env.ENVIRONMENT_NAME }}" \
solutionName="${{ env.ENVIRONMENT_NAME }}" \
enablePrivateNetworking="false" \
secondaryLocation="eastus2" \
contentUnderstandingLocation="WestUS" \
deploymentType="GlobalStandard" \
gptModelName="gpt-4o" \
gptModelVersion="2024-08-06" \
gptDeploymentCapacity="30" \
aiDeploymentsLocation="${{ env.AZURE_LOCATION }}" \
aiServiceLocation="${{ env.AZURE_LOCATION }}" \
tags="{'CreatedBy':'Pipeline', 'SecurityControl':'Ignore','Purpose':'Deploying and Cleaning Up Resources for Validation','CreatedDate':'$current_date'}" \
--query "properties.outputs" -o json); then
echo "❌ Deployment failed. See logs above."
Expand Down Expand Up @@ -301,8 +301,8 @@ jobs:

- name: Login to Azure
run: |
az login --service-principal -u ${{ secrets.AZURE_MAINTENANCE_CLIENT_ID }} -p ${{ secrets.AZURE_MAINTENANCE_CLIENT_SECRET }} --tenant ${{ secrets.AZURE_TENANT_ID }}
az account set --subscription ${{ secrets.AZURE_MAINTENANCE_SUBSCRIPTION_ID }}
az login --service-principal -u ${{ secrets.AZURE_CLIENT_ID }} -p ${{ secrets.AZURE_CLIENT_SECRET }} --tenant ${{ secrets.AZURE_TENANT_ID }}
az account set --subscription ${{ secrets.AZURE_SUBSCRIPTION_ID }}

- name: Delete Bicep Deployment
if: always()
Expand Down Expand Up @@ -459,7 +459,7 @@ jobs:

echo "Processing KeyVault: $keyvault_name"
# Check if the KeyVault is soft-deleted
deleted_vaults=$(az keyvault list-deleted --query "[?name=='$keyvault_name']" -o json --subscription ${{ secrets.AZURE_MAINTENANCE_SUBSCRIPTION_ID }})
deleted_vaults=$(az keyvault list-deleted --query "[?name=='$keyvault_name']" -o json --subscription ${{ secrets.AZURE_SUBSCRIPTION_ID }})

# If the KeyVault is found in the soft-deleted state, purge it
if [ "$(echo "$deleted_vaults" | jq length)" -gt 0 ]; then
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test-automation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ jobs:

- name: Login to Azure
run: |
az login --service-principal -u ${{ secrets.AZURE_MAINTENANCE_CLIENT_ID }} -p ${{ secrets.AZURE_MAINTENANCE_CLIENT_SECRET }} --tenant ${{ secrets.AZURE_TENANT_ID }}
az account set --subscription ${{ secrets.AZURE_MAINTENANCE_SUBSCRIPTION_ID }}
az login --service-principal -u ${{ secrets.AZURE_CLIENT_ID }} -p ${{ secrets.AZURE_CLIENT_SECRET }} --tenant ${{ secrets.AZURE_TENANT_ID }}
az account set --subscription ${{ secrets.AZURE_SUBSCRIPTION_ID }}

- name: Install dependencies
run: |
Expand Down
24 changes: 21 additions & 3 deletions azure.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,30 @@ metadata:
name: content-processinge@1.0

hooks:
postprovision:
postdeploy:
posix:
shell: sh
run: sed -i 's/\r$//' ./infra/scripts/post_deployment.sh; ./infra/scripts/post_deployment.sh
run: |
echo "🧭 Web App Details:"
echo "✅ Name: $CONTAINER_WEB_APP_NAME"
echo "🌐 Endpoint: https://$CONTAINER_WEB_APP_FQDN"
echo "🔗 Portal URL: https://portal.azure.com/#resource/subscriptions/$AZURE_SUBSCRIPTION_ID/resourceGroups/$AZURE_RESOURCE_GROUP/providers/Microsoft.App/containerApps/$CONTAINER_WEB_APP_NAME"

echo "🧭 API App Details:"
echo "✅ Name: $CONTAINER_API_APP_NAME"
echo "🌐 Endpoint: https://$CONTAINER_API_APP_FQDN"
echo "🔗 Portal URL: https://portal.azure.com/#resource/subscriptions/$AZURE_SUBSCRIPTION_ID/resourceGroups/$AZURE_RESOURCE_GROUP/providers/Microsoft.App/containerApps/$CONTAINER_API_APP_NAME"
interactive: true
windows:
shell: pwsh
run: ./infra/scripts/post_deployment.ps1
run: |
Write-Host "🧭 Web App Details:"
Write-Host "✅ Name: $env:CONTAINER_WEB_APP_NAME"
Write-Host "🌐 Endpoint: https://$env:CONTAINER_WEB_APP_FQDN"
Write-Host "🔗 Portal URL: https://portal.azure.com/#resource/subscriptions/$env:AZURE_SUBSCRIPTION_ID/resourceGroups/$env:AZURE_RESOURCE_GROUP/providers/Microsoft.App/containerApps/$env:CONTAINER_WEB_APP_NAME" -ForegroundColor Cyan

Write-Host "🧭 API App Details:"
Write-Host "✅ Name: $env:CONTAINER_API_APP_NAME"
Write-Host "🌐 Endpoint: https://$env:CONTAINER_API_APP_FQDN"
Write-Host "🔗 Portal URL: https://portal.azure.com/#resource/subscriptions/$env:AZURE_SUBSCRIPTION_ID/resourceGroups/$env:AZURE_RESOURCE_GROUP/providers/Microsoft.App/containerApps/$env:CONTAINER_API_APP_NAME" -ForegroundColor Cyan
interactive: true
14 changes: 7 additions & 7 deletions docs/ConfigureAppAuthentication.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ We will add Microsoft Entra ID as an authentication provider to API and Web Appl

1. Add Authentication Provider in Web Application

- Go to deployed Container App and select `ca-cps-<randomname>-web` and click **Add Identity Provider** button in Authentication.
- Go to deployed Container App and select `ca-<randomname>-web` and click **Add Identity Provider** button in Authentication.
![add_auth_provider_web_1](./images/add_auth_provider_web_1.png)

- Select **Microsoft** and set **Client secret expiration**, then click **Add** button.
Expand All @@ -29,7 +29,7 @@ We will add Microsoft Entra ID as an authentication provider to API and Web Appl

1. Add Authentication Provider in API Service

- Go to deployed Container App and select `ca-cps-<randomname>-api` and click **Add Identity Provider** button in Authentication.
- Go to deployed Container App and select `ca-<randomname>-api` and click **Add Identity Provider** button in Authentication.
![add_auth_provider_api_1](./images/add_auth_provider_api_1.png)

- Select **Microsoft** and set **Client secret expiration**.
Expand All @@ -42,7 +42,7 @@ We will add Microsoft Entra ID as an authentication provider to API and Web Appl

1. Set Redirect URI in Single Page Application Platform

- Go to deployed Container App `ca-cps-<randomname>-web` and select **Authentication** menu, then select created Application Registration.
- Go to deployed Container App `ca-<randomname>-web` and select **Authentication** menu, then select created Application Registration.
![configure_app_registration_web_1](./images/configure_app_registration_web_1.png)

- Select **Authentication**, then select **+ Add a platform** menu.
Expand All @@ -51,15 +51,15 @@ We will add Microsoft Entra ID as an authentication provider to API and Web Appl
- Select **Single-page application**.
![configure_app_registration_web_3](./images/configure_app_registration_web_3.png)

- Add Container App `ca-cps-<randomname>-web`'s URL.
- Add Container App `ca-<randomname>-web`'s URL.
![configure_app_registration_web_4](./images/configure_app_registration_web_4.png)

- You may get this URL from here in your Container App.
![configure_app_registration_web_5](./images/configure_app_registration_web_5.png)

2. Add Permission and Grant Permission

- Add Permission for API application. Select **+ Add a permission** button, then search API application with name `ca-cps-<randomname>-api`.
- Add Permission for API application. Select **+ Add a permission** button, then search API application with name `ca-<randomname>-api`.
![configure_app_registration_web_6](./images/configure_app_registration_web_6.png)
![configure_app_registration_web_7](./images/configure_app_registration_web_7.png)

Expand All @@ -86,7 +86,7 @@ We will add Microsoft Entra ID as an authentication provider to API and Web Appl

1. Grab Scope Name for Impersonation

- Go to deployed Container App `ca-cps-<randomname>-api` and select **Authentication** menu, then select created Application Registration.
- Go to deployed Container App `ca-<randomname>-api` and select **Authentication** menu, then select created Application Registration.
![configure_app_registration_api_1](./images/configure_app_registration_api_1.png)

- Select **Expose an API** in the left menu. Copy the Scope name, then paste it in some temporary place.
Expand All @@ -95,7 +95,7 @@ We will add Microsoft Entra ID as an authentication provider to API and Web Appl

## Step 4: Add Web Application's Client Id to Allowed Client Applications List in API Application Registration

1. Go to the deployed Container App `ca-cps-<randomname>-api`, select **Authentication**, and then click **Edit**.
1. Go to the deployed Container App `ca-<randomname>-api`, select **Authentication**, and then click **Edit**.
![add_client_id_to_api_1](./images/add_client_id_to_api_1.png)

2. Select **Allow requests from specific client applications**, then click the **pencil** icon to add the Client Id.
Expand Down
Loading