Skip to content

Conversation

@JinLee794
Copy link
Collaborator

This pull request refactors the Azure deployment workflow in .github/workflows/deploy-azd.yml to streamline authentication handling, modernize scripting practices, and simplify output extraction. The most significant changes are the removal of a detailed authentication status check, conversion of authentication logic to PowerShell, and updates to service endpoint extraction.

Authentication handling:

  • Removed the verbose authentication status check step that provided guidance and error handling for OIDC and Service Principal authentication, simplifying the workflow and reducing output clutter.
  • Refactored the Azure Developer CLI authentication logic from bash to PowerShell, improving compatibility and maintainability for Windows runners and aligning with best practices for Azure workflows.

Service endpoint extraction:

  • Updated the extraction of frontend and backend URLs to use the environment variables FRONTEND_CONTAINER_APP_FQDN and BACKEND_CONTAINER_APP_FQDN instead of parsing azd show output, making the workflow more robust and less dependent on CLI output parsing.

Network whitelist management:

  • Removed commented-out steps for whitelisting and cleanup of the GitHub Runner IP in Azure Storage Account network rules, reducing complexity and potential for errors in IP-based access management. [1] [2]

@JinLee794 JinLee794 requested a review from Copilot September 26, 2025 19:47
@JinLee794 JinLee794 merged commit fd967d1 into main Sep 26, 2025
2 of 3 checks passed
@JinLee794 JinLee794 deleted the hotfix/action-sp-deploy branch September 26, 2025 19:48
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request refactors the Azure deployment workflow to improve authentication handling and output extraction reliability. The changes remove verbose authentication status checking, modernize scripting to use PowerShell, and replace fragile JSON parsing with environment variables.

  • Removes detailed authentication status check step that provided extensive error guidance
  • Converts Azure Developer CLI authentication logic from bash to PowerShell
  • Updates service endpoint extraction to use environment variables instead of parsing CLI output

Comment on lines +156 to +163
if ($env:USE_OIDC -eq "true" -and "${{ steps.azure-login-oidc.outcome }}" -eq "success") {
Write-Host "🔐 Attempting azd authentication with OIDC..."
azd auth login `
--client-id "$Env:AZURE_CLIENT_ID" `
--federated-credential-provider "github" `
--tenant-id "$Env:AZURE_TENANT_ID"
elif [ "${{ env.USE_OIDC }}" = "false" ] && [ "${{ steps.azure-login-sp.outcome }}" = "success" ]; then
echo "🔐 Attempting azd authentication with Service Principal..."
--client-id $env:AZURE_CLIENT_ID `
--federated-credential-provider github `
--tenant-id $env:AZURE_TENANT_ID
}
elseif ($env:USE_OIDC -eq "false" -and "${{ steps.azure-login-sp.outcome }}" -eq "success") {
Copy link

Copilot AI Sep 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PowerShell string comparison should use quotes around the GitHub expression. The current syntax \"${{ steps.azure-login-oidc.outcome }}\" may not evaluate correctly in PowerShell conditional statements. Consider using -eq 'success' instead.

Copilot uses AI. Check for mistakes.
--federated-credential-provider github `
--tenant-id $env:AZURE_TENANT_ID
}
elseif ($env:USE_OIDC -eq "false" -and "${{ steps.azure-login-sp.outcome }}" -eq "success") {
Copy link

Copilot AI Sep 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same PowerShell string comparison issue as above. The GitHub expression \"${{ steps.azure-login-sp.outcome }}\" should be properly quoted or use single quotes for the comparison value.

Suggested change
elseif ($env:USE_OIDC -eq "false" -and "${{ steps.azure-login-sp.outcome }}" -eq "success") {
elseif ($env:USE_OIDC -eq "false" -and "${{ steps.azure-login-sp.outcome }}" -eq 'success') {

Copilot uses AI. Check for mistakes.
pablosalvador10 pushed a commit that referenced this pull request Dec 19, 2025
…handoffs

Hotfix/agent context and handoffs
JinLee794 pushed a commit that referenced this pull request Dec 19, 2025
adding ACS capabilities, integrated with the frontend
JinLee794 added a commit that referenced this pull request Dec 19, 2025
JinLee794 added a commit that referenced this pull request Dec 19, 2025
JinLee794 added a commit to JinLee794/art-voice-agent-accelerator that referenced this pull request Jan 7, 2026
…-context-and-handoffs

Hotfix/agent context and handoffs
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.

2 participants