Welcome to the November 2025 edition of the Azure Developer CLI (azd) release blog! This post covers releases 1.20.1 through 1.21.2. To share your feedback and questions, join the November release discussion on GitHub.
Highlights:
- Azure Container Apps support reaches GA
- Layered provisioning enters Beta
- Extension framework capabilities enhanced
- Aspire 13 compatibility added
- New community templates available for Azure Functions, Copilot Studio, and more
New features
🚀 Extension Framework
- Custom ServiceConfig settings: Extensions can now define custom service configuration settings to enable richer service behaviors, allowing authors to extend the service configuration model beyond the built-in properties and enabling custom workflows and integration patterns. [#6013]
For example, an extension could define custom settings for specialized deployment scenarios or service-specific configurations that go beyond standard
azdcapabilities. - Enhanced no-prompt support: The prompt service now provides better support for non-interactive scenarios in extensions. When running with
--no-promptor in CI/CD environments, extensions can now gracefully handle user input requirements without failing, ensuring thatazdworkflows run smoothly in automated pipelines and headless environments and making extensions more reliable for production use cases. [#6073] - ServiceContext in lifecycle events: Extensions can now access ServiceContext in service lifecycle events, providing richer context information for event handlers and enabling extensions to make more informed decisions during service provisioning and deployment. [#6002]
- Language framework support: Extensions can now register and provide language framework support, expanding
azd‘s capabilities beyond built-in languages and opening up possibilities for supporting more programming languages and framework ecosystems through the extension model. [#5847] - Custom service target endpoints in azd show: The
azd showcommand now displays endpoints from custom service targets provided by extensions, improving visibility into services deployed through extension-provided targets and giving developers a complete picture of their deployed resources regardless of the deployment method. [#6074] - AccountService gRPC API:
azdadded a new AccountService gRPC API and server implementation, providing programmatic access to account-related operations. Extensions can now integrate with account management workflows more easily. [#5995]
🚀 Aspire
- Aspire 13 support:
azdnow supportsAspire 13, ensuring compatibility with the latest Aspire features and improvements. Developers can now use new Aspire capabilities while maintaining seamless integration withazdworkflows. [#6093] - .NET 10 support in auto-generated pipeline configs: Pipeline configuration now includes
.NET 10in auto-generated templates, ensuring your CI/CD pipelines are ready for the latest .NET runtime. [#6133] - Aspire Dashboard URL for App Service deployments: When deploying Aspire applications to Azure App Service,
azdnow displays the Aspire dashboard URL, making it easier to monitor and manage your deployed applications. [#5881]
🚀 Prepublish and postpublish hooks
- Prepublish and postpublish hooks: The v1.0
azure.yamlschema now supportsprepublishandpostpublishhooks, giving developers more control over the publishing workflow. These hooks enable custom pre-processing and post-processing steps during container image publishing. [#5841]
🚀 Azure Container Apps
- Runtime environment variable management: Container Apps deployments now support the
envproperty inazure.yamlfor managing runtime environment variables. This feature allows you to merge environment variables during deployment, providing better control over your container configuration without modifying infrastructure code. [#6154]
Bugs fixed
- Fixed Container App resource existence checks that were returning incorrect results [#5939]
- Improved error messaging when the
--environmentflag is missing [#5930] - Fixed hyperlink ANSI escape codes appearing in non-terminal output [#6015]
- Resolved flickering progress bar during agent deployment operations [#6032]
- Fixed lifetime management issues with extension container helpers [#6028]
- Environment values are now properly reloaded before loading parameters in the bicep provider [#6063]
- Fixed remote build functionality on the agent extension [#6098]
- Fixed project-level events not being invoked from extensions [#5964]
- Fixed concurrent map write panics in FrameworkService [#5985]
- Prevented index out of range panics in
progressLog.Write()[#6001] - Fixed duplicate event registration in workflow commands [#6012]
Other changes
- Hook warnings are now logged to the log file instead of being displayed in the console, reducing console noise while maintaining visibility for troubleshooting [#6083]
azdcompletion support added to Visual Studio Code
New docs & blog
The Azure Developer CLI documentation received several important updates this month:
- Container App deployment documentation (November 12, 2025): Updated documentation on deploying to Azure Container Apps with new revision-based deployment information.
- GitHub Copilot coding agent extension (October 21, 2025): New guide for connecting GitHub Copilot coding agent with Azure MCP Server using the
azdcoding agent extension. - Customize workflows using hooks (October 20, 2025): Updated documentation with
prepublishandpostpublishhooks.
In addition to these documentation updates, we published a new blog post in our “Dev to production” series. After reading our first and second blog and you wondered: “So what? I use Azure Container Apps (ACA) and azd publishes a new image every time to Azure Container Registry!” Well, we solved the problem! Check out Azure Developer CLI: Azure Container Apps Dev-to-Prod Deployment with Layered Infrastructure, and yes, as the title calls out, you also see layered provisioning (new in 1.20.0) in action!
New templates
Community-driven templates help you get started faster, solve real-world scenarios, and showcase best practices for deploying solutions with Azure Developer CLI.
The Azure Developer CLI template gallery continues to grow with exciting new contributions from the community. Thank you!
- Copilot Studio template with Azure AI Search by ISE Scale: This scenario demonstrates building a Copilot Studio agent with Azure AI Search integration for intelligent search capabilities.
- Release Manager Assistant by Microsoft: An AI-driven solution accelerator designed to augment release managers with intelligence, multi-system integration, and real-time decision support, simplifying the release lifecycle from planning to post-deployment analysis.
- Call Center Voice Agent Accelerator by Microsoft: A template for building voice agents that provide personalized self-service experiences using Azure Voice Live API and Azure Communication Services.
- AI application with SharePoint knowledge and actions by Microsoft: A web application and agent that helps users process information from SharePoint content and generate summary reports, using the Azure AI Foundry SDK and Copilot Retrieval API for semantic queries with built-in access control.
- Azure Functions Event Grid Blob Trigger quickstarts [#661]:
- functions-quickstart-python-azd-eventgrid-blob: Python quickstart by Azure Functions Team.
- functions-quickstart-javascript-azd-eventgrid-blob: JavaScript quickstart by Azure Functions Team.
- functions-quickstart-dotnet-azd-eventgrid-blob: .NET quickstart by Azure Functions Team.
- functions-quickstart-java-azd-eventgrid-blob: Java quickstart by Azure Functions Team.
- functions-quickstart-typescript-azd-eventgrid-blob: TypeScript quickstart by Azure Functions Team.
- Semantic Kernel Function App by JayChase: This scenario demonstrates deploying a Semantic Kernel-powered function app to Azure.
- Logic App AI Agents and AI Foundry by marnixcox: Template for deploying Logic App Standard Autonomous and Conversational AI Agents and AI Foundry.
- Azure Container Apps dynamic sessions with a Python code interpreter by Jeff Martinez: This project demonstrates using Azure Container Apps dynamic sessions with a Python code interpreter to create an AI-powered application that can execute Python code securely and return results in real-time.
- Deploy Label Studio directly from Docker Hub on Azure Container Apps by Bill DeRusha: An end-to-end sample deploying a public image (Label Studio) directly to Azure Container Apps with a persistent storage volume.
Contributor acknowledgments
Shout out to all the community contributors who helped make this release possible!
- HadwaAbdelhalem for the Copilot Studio with Azure AI Search template!
- JayChase for the Semantic Kernel Function App template!
- marnixcox for the Logic Apps AI Agents and Azure AI Foundry templates!
- Jeff Martinez for the Python dynamic sessions template!
- Bill DeRusha for the Label Studio template!
Thank you for your contributions to the azd community!
New to azd?
If you’re new to the Azure Developer CLI, azd is an open-source command-line tool that accelerates the time it takes to get your application from local development environment to Azure. azd provides best practice, developer-friendly commands that map to key stages in your workflow, whether you’re working in the terminal, your editor or CI/CD.
Get started with azd:
- Install azd
- Explore templates: To find templates for your preferred language and Azure services, browse the Awesome azd template gallery and AI App Templates (https://aka.ms/ai-gallery).
- Learn more: Check out the official documentation and troubleshooting guide.
- Get help: If you encounter issues or have questions, visit our GitHub repository to file an issue or start a discussion.
0 comments
Be the first to start the discussion.