5858 required : false
5959 default : false
6060 type : boolean
61+ azure_location :
62+ description : ' Azure Location for deployment'
63+ required : false
64+ default : ' australiaeast'
65+ type : choice
66+ options :
67+ - ' australiaeast'
68+ - ' centralus'
69+ - ' eastasia'
70+ - ' eastus2'
71+ - ' japaneast'
72+ - ' northeurope'
73+ - ' southeastasia'
74+ - ' uksouth'
75+ - ' eastus'
6176
6277 schedule :
6378 - cron : ' 0 9,21 * * *' # Runs at 9:00 AM and 9:00 PM GMT
@@ -192,6 +207,7 @@ jobs:
192207 WEBAPP_URL : ${{ steps.get_output.outputs.WEBAPP_URL }}
193208 ENV_NAME : ${{ steps.generate_env_name.outputs.ENV_NAME }}
194209 AZURE_LOCATION : ${{ steps.set_region.outputs.AZURE_LOCATION }}
210+ AZURE_ENV_OPENAI_LOCATION : ${{ steps.set_region.outputs.AZURE_ENV_OPENAI_LOCATION }}
195211 IMAGE_TAG : ${{ steps.determine_image_tag.outputs.IMAGE_TAG }}
196212 env :
197213 # For automatic triggers: force Non-WAF + Non-EXP, for manual dispatch: use inputs
@@ -214,6 +230,11 @@ jobs:
214230 echo " • Run E2E Tests: ${{ env.RUN_E2E_TESTS }}"
215231 echo " • Cleanup Resources: ${{ env.CLEANUP_RESOURCES }}"
216232 echo " • Build Docker Image: ${{ env.BUILD_DOCKER_IMAGE }}"
233+ if [[ "${{ github.event_name }}" == "workflow_dispatch" && -n "${{ github.event.inputs.azure_location }}" ]]; then
234+ echo " • Selected Azure Location: ${{ github.event.inputs.azure_location }}"
235+ else
236+ echo " • Azure Location: Will be determined by quota check"
237+ fi
217238 if [[ "${{ github.event.inputs.existing_webapp_url }}" != "" ]]; then
218239 echo " • Using Existing Webapp URL: ${{ github.event.inputs.existing_webapp_url }}"
219240 echo " • Skip Deployment: Yes"
@@ -302,13 +323,21 @@ jobs:
302323 - name : Set Deployment Region
303324 id : set_region
304325 run : |
305- echo "Selected Region: $VALID_REGION"
306- echo "AZURE_AI_LOCATION=$VALID_REGION" >> $GITHUB_ENV
307- echo "AZURE_LOCATION=$VALID_REGION" >> $GITHUB_ENV
308- echo "AZURE_LOCATION=$VALID_REGION" >> $GITHUB_OUTPUT
309- if [ "$VALID_REGION" == "eastus" ] || [ "$VALID_REGION" == "westus3" ]; then
310- echo "AZURE_LOCATION=uksouth" >> $GITHUB_ENV
311- echo "AZURE_LOCATION=uksouth" >> $GITHUB_OUTPUT
326+ # Set AZURE_ENV_OPENAI_LOCATION from quota check result
327+ echo "Selected Region from Quota Check: $VALID_REGION"
328+ echo "AZURE_ENV_OPENAI_LOCATION=$VALID_REGION" >> $GITHUB_ENV
329+ echo "AZURE_ENV_OPENAI_LOCATION=$VALID_REGION" >> $GITHUB_OUTPUT
330+
331+ # Set AZURE_LOCATION from user input (for manual dispatch) or default to quota check result (for automatic triggers)
332+ if [[ "${{ github.event_name }}" == "workflow_dispatch" && -n "${{ github.event.inputs.azure_location }}" ]]; then
333+ USER_SELECTED_LOCATION="${{ github.event.inputs.azure_location }}"
334+ echo "Using user-selected Azure location: $USER_SELECTED_LOCATION"
335+ echo "AZURE_LOCATION=$USER_SELECTED_LOCATION" >> $GITHUB_ENV
336+ echo "AZURE_LOCATION=$USER_SELECTED_LOCATION" >> $GITHUB_OUTPUT
337+ else
338+ echo "Using location from quota check for automatic triggers: $VALID_REGION"
339+ echo "AZURE_LOCATION=$VALID_REGION" >> $GITHUB_ENV
340+ echo "AZURE_LOCATION=$VALID_REGION" >> $GITHUB_OUTPUT
312341 fi
313342
314343 - name : Generate Resource Group Name
@@ -463,7 +492,8 @@ jobs:
463492
464493 # Set additional parameters
465494 azd env set AZURE_SUBSCRIPTION_ID="${{ secrets.AZURE_SUBSCRIPTION_ID }}"
466- azd env set AZURE_ENV_OPENAI_LOCATION="$AZURE_LOCATION"
495+ azd env set AZURE_ENV_OPENAI_LOCATION="$AZURE_ENV_OPENAI_LOCATION"
496+ azd env set AZURE_LOCATION="$AZURE_LOCATION"
467497 azd env set AZURE_RESOURCE_GROUP="$RESOURCE_GROUP_NAME"
468498 azd env set AZURE_ENV_IMAGETAG="${{ steps.determine_image_tag.outputs.IMAGE_TAG }}"
469499 azd env set AZURE_DEV_COLLECT_TELEMETRY="no"
@@ -606,7 +636,8 @@ jobs:
606636 echo "| **Job Status** | ${{ job.status == 'success' && '✅ Success' || '❌ Failed' }} |" >> $GITHUB_STEP_SUMMARY
607637 echo "| **Environment Name** | \`${{ steps.generate_env_name.outputs.ENV_NAME }}\` |" >> $GITHUB_STEP_SUMMARY
608638 echo "| **Resource Group** | \`${{ steps.check_create_rg.outputs.RESOURCE_GROUP_NAME }}\` |" >> $GITHUB_STEP_SUMMARY
609- echo "| **Azure Region** | \`${{ steps.set_region.outputs.AZURE_LOCATION }}\` |" >> $GITHUB_STEP_SUMMARY
639+ echo "| **Azure Region (Infrastructure)** | \`${{ steps.set_region.outputs.AZURE_LOCATION }}\` |" >> $GITHUB_STEP_SUMMARY
640+ echo "| **Azure OpenAI Region** | \`${{ steps.set_region.outputs.AZURE_ENV_OPENAI_LOCATION }}\` |" >> $GITHUB_STEP_SUMMARY
610641 echo "| **Docker Image Tag** | \`${{ steps.determine_image_tag.outputs.IMAGE_TAG }}\` |" >> $GITHUB_STEP_SUMMARY
611642 echo "| **WAF Enabled** | ${{ env.WAF_ENABLED == 'true' && '✅ Yes' || '❌ No' }} |" >> $GITHUB_STEP_SUMMARY
612643 echo "| **EXP Enabled** | ${{ env.EXP == 'true' && '✅ Yes' || '❌ No' }} |" >> $GITHUB_STEP_SUMMARY
@@ -673,6 +704,7 @@ jobs:
673704 env :
674705 RESOURCE_GROUP_NAME : ${{ needs.deploy.outputs.RESOURCE_GROUP_NAME }}
675706 AZURE_LOCATION : ${{ needs.deploy.outputs.AZURE_LOCATION }}
707+ AZURE_ENV_OPENAI_LOCATION : ${{ needs.deploy.outputs.AZURE_ENV_OPENAI_LOCATION }}
676708 ENV_NAME : ${{ needs.deploy.outputs.ENV_NAME }}
677709 IMAGE_TAG : ${{ needs.deploy.outputs.IMAGE_TAG }}
678710 steps :
@@ -739,7 +771,7 @@ jobs:
739771 azd env new ${{ env.ENV_NAME }} --no-prompt
740772 azd env set AZURE_RESOURCE_GROUP "${{ env.RESOURCE_GROUP_NAME }}"
741773 azd env set AZURE_SUBSCRIPTION_ID "${{ secrets.AZURE_SUBSCRIPTION_ID }}"
742- azd env set AZURE_ENV_OPENAI_LOCATION="${{ env.AZURE_LOCATION }}"
774+ azd env set AZURE_ENV_OPENAI_LOCATION="${{ env.AZURE_ENV_OPENAI_LOCATION }}"
743775 azd env set AZURE_LOCATION="${{ env.AZURE_LOCATION }}"
744776 fi
745777
@@ -786,7 +818,8 @@ jobs:
786818 echo "| **Job Status** | ${{ job.status == 'success' && '✅ Success' || '❌ Failed' }} |" >> $GITHUB_STEP_SUMMARY
787819 echo "| **Resource Group** | \`${{ env.RESOURCE_GROUP_NAME }}\` |" >> $GITHUB_STEP_SUMMARY
788820 echo "| **Environment Name** | \`${{ env.ENV_NAME }}\` |" >> $GITHUB_STEP_SUMMARY
789- echo "| **Azure Region** | \`${{ env.AZURE_LOCATION }}\` |" >> $GITHUB_STEP_SUMMARY
821+ echo "| **Azure Region (Infrastructure)** | \`${{ env.AZURE_LOCATION }}\` |" >> $GITHUB_STEP_SUMMARY
822+ echo "| **Azure OpenAI Region** | \`${{ env.AZURE_ENV_OPENAI_LOCATION }}\` |" >> $GITHUB_STEP_SUMMARY
790823 echo "| **Docker Image Tag** | \`${{ env.IMAGE_TAG }}\` |" >> $GITHUB_STEP_SUMMARY
791824 echo "| **Trigger** | ${{ github.event_name }} |" >> $GITHUB_STEP_SUMMARY
792825 echo "| **Branch** | ${{ env.BRANCH_NAME }} |" >> $GITHUB_STEP_SUMMARY
0 commit comments