Skip to content

Commit ee5f1cc

Browse files
authored
Merge branch 'main' into diberry/0717-mcp-tools
2 parents d34eb3c + 2584570 commit ee5f1cc

File tree

75 files changed

+2303
-722
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+2303
-722
lines changed

.openpublishing.redirection.json

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -330,6 +330,11 @@
330330
"redirect_url": "/azure/developer/javascript/how-to/create-static-web-app",
331331
"redirect_document_id": false
332332
},
333+
{
334+
"source_path": "articles/javascript/how-to/create-static-web-app.md",
335+
"redirect_url": "/azure/static-web-apps/",
336+
"redirect_document_id": false
337+
},
333338
{
334339
"source_path": "articles/javascript/how-to/with-web-app/static-web-app-with-swa-cli.md",
335340
"redirect_url": "/azure/static-web-apps/add-api",
@@ -1822,14 +1827,6 @@
18221827
"source_path": "articles/ansible/aks-configure-kubenet-networking.md",
18231828
"redirect_url": "/azure/developer/ansible/aks-configure-cni-networking"
18241829
},
1825-
{
1826-
"source_path": "articles/java/spring-framework/spring-messaging-support.md",
1827-
"redirect_url": "/azure/developer/java/spring-framework/spring-messaging-event-hubs-support"
1828-
},
1829-
{
1830-
"source_path": "articles/java/eclipse-microprofile/deploy-microprofile-quarkus-java-app-with-maven-plugin.md",
1831-
"redirect_url": "/azure/app-service/quickstart-java?tabs=quarkus&pivots=java-javase"
1832-
},
18331830
{
18341831
"source_path": "articles/ai/get-started-multi-agents.md",
18351832
"redirect_url": "/azure/developer/ai/azure-ai-for-developers"
@@ -1842,10 +1839,6 @@
18421839
"source_path": "articles/terraform/azure-terraform-resource-provider/get-started-export-resources-portal.md",
18431840
"redirect_url": "/azure/developer/terraform/azure-export-for-terraform/get-started-export-resources-portal"
18441841
},
1845-
{
1846-
"source_path": "articles/java/ee/how-to-configure-passwordless-datasource.md",
1847-
"redirect_url": "/azure/developer/java/ee/how-to-configure-passwordless-datasource-wls"
1848-
},
18491842
{
18501843
"source_path": "articles/azure-mcp-server/tools/kusto.md",
18511844
"redirect_url": "/azure/developer/azure-mcp-server/tools/azure-data-explorer"

CODEOWNERS

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,20 @@
2020
/articles/python/ @bobtabor-msft
2121
/articles/go/ @bobtabor-msft
2222
/articles/cpp/ @ronniegeraghty @antkmsft
23+
/articles/rust/ @ronniegeraghty @heaths @diberry
24+
/articles/javascript/ @diberry
2325

2426
# Tools
25-
/articles/azure-cli/ @alexwolfmsft
26-
/articles/typespect/ @diberry
27+
/articles/azure-developer-cli/ @alexwolfmsft @kristenwomack
28+
/articles/typespec/ @diberry
29+
/articles/azure-mcp-server/ @ms-johnalex @sandeep-sen
30+
/articles/azure-mcp-server/tools @diberry @sandeep-sen
2731

2832
# Azure SDK authentication topics
2933
/articles/go/sdk/authentication/ @scottaddie @chlowell
30-
/articles/java/sdk/authentication/ @scottaddie @g2vinay
34+
/articles/java/sdk/authentication/ @scottaddie @g2vinay @anannya03
3135
/articles/javascript/sdk/authentication/ @scottaddie @KarishmaGhiya @minhanh-phan @maorleger
3236
/articles/python/sdk/authentication/ @scottaddie @pvaneck @xiangyan99
3337
/articles/python/sdk/authorization/ @scottaddie @pvaneck @xiangyan99
3438
/articles/cpp/sdk/authentication/ @scottaddie @antkmsft @ronniegeraghty
39+
/articles/rust/sdk/authentication/ @scottaddie @ronniegeraghty @chlowell @heaths

articles/ai/TOC.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,13 @@ items:
3232
href: keyless-connections.md
3333
- name: Use Azure AI Search without keys
3434
href: /azure/search/keyless-connections?toc=/azure/developer/ai/toc.json&bc=/azure/developer/ai/breadcrumb/toc.json
35-
- name: Agents and Model Context Protocol (MCP)
35+
- name: AI app design
36+
items:
37+
- name: AI agent orchestration patterns
38+
href: /azure/architecture/ai-ml/guide/ai-agent-design-patterns?toc=/azure/developer/ai/toc.json&bc=/azure/developer/ai/breadcrumb/toc.json
39+
- name: Design your AI app to support foundation model life cycles
40+
href: /azure/architecture/ai-ml/guide/manage-foundation-models-lifecycle?toc=/azure/developer/ai/toc.json&bc=/azure/developer/ai/breadcrumb/toc.json
41+
- name: Agents with Model Context Protocol (MCP)
3642
items:
3743
- name: Build Agents using Model Context Protocol on Azure
3844
href: intro-agents-mcp.md

articles/ai/index.yml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,17 @@ landingContent:
4141
url: ../java/ai/get-started-app-chat-template.md?toc=/azure/developer/ai/toc.json&bc=/azure/developer/ai/breadcrumb/toc.json
4242
- text: Chat with your data using .NET
4343
url: /dotnet/ai/get-started-app-chat-template?toc=/azure/developer/ai/toc.json&bc=/azure/developer/ai/breadcrumb/toc.json
44-
45-
- title: Agents and Model Context Protocol (MCP)
44+
45+
- title: AI app design
46+
linkLists:
47+
- linkListType: overview
48+
links:
49+
- text: AI agent orchestration patterns
50+
url: /azure/architecture/ai-ml/guide/ai-agent-design-patterns?toc=/azure/developer/ai/toc.json&bc=/azure/developer/ai/breadcrumb/toc.json
51+
- text: Design your AI app to support foundation model life cycles
52+
url: /azure/architecture/ai-ml/guide/manage-foundation-models-lifecycle?toc=/azure/developer/ai/toc.json&bc=/azure/developer/ai/breadcrumb/toc.json
53+
54+
- title: Agents with Model Context Protocol (MCP)
4655
linkLists:
4756
- linkListType: overview
4857
links:

articles/azure-developer-cli/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,8 @@
105105
href: manage-environment-variables.md
106106
- name: Environment variables FAQ
107107
href: environment-variables-faq.md
108+
- name: Azure Container Apps workflows and strategies
109+
href: container-apps-workflows.md
108110
- name: Use Terraform for infrastructure as code
109111
href: use-terraform-for-azd.md
110112
- name: .NET Aspire support

articles/azure-developer-cli/azure-ai-ml-endpoints.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Deploy to an Azure AI Foundry/ML studio online endpoint using the Azure D
33
description: Learn how to deploy to an Azure AI Foundry/ML studio online endpoint using the Azure Developer CLI
44
author: alexwolfmsft
55
ms.author: alexwolf
6-
ms.date: 05/06/2024
6+
ms.date: 07/22/2025
77
ms.service: azure-dev-cli
88
ms.topic: how-to
99
ms.custom: devx-track-azdevcli, build-2023
Lines changed: 134 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,134 @@
1+
---
2+
title: Azure Container Apps Deployment Strategies using the Azure Developer CLI
3+
description: Learn about Azure Container Apps deployment strategies using the Azure Developer CLI.
4+
author: alexwolfmsft
5+
ms.author: alexwolf
6+
ms.date: 07/15/2025
7+
ms.service: azure-dev-cli
8+
ms.topic: how-to
9+
ms.custom: devx-track-`azd`evcli
10+
---
11+
12+
# Azure Container Apps deployment strategies using the Azure Developer CLI
13+
14+
The Azure Developer CLI (`azd`) provides multiple strategies to provision and deploy applications to [Azure Container Apps](/azure/container-apps/overview). This document outlines these strategies, including when to use them and how they work.
15+
16+
## Container app upsert strategy
17+
18+
The `container-app-upsert` strategy is a Bicep-based approach for creating or updating Azure Container Apps. It's a flexible option that works well for many types of container applications.
19+
20+
### How it works
21+
22+
The `container-app-upsert` strategy:
23+
24+
1. Uses a Bicep module (`container-app-upsert.bicep`) that detects whether a Container App already exists.
25+
2. If the Container App exists, it updates the existing app while preserving its current container image if no new image is specified.
26+
3. If the Container App doesn't exist, it creates a new one with the specified parameters.
27+
28+
This approach is commonly used in `azd` templates, such as the Todo application templates (nodejs-mongo-aca, python-mongo-aca, etc.).
29+
30+
### When to use it
31+
32+
Use the `container-app-upsert` strategy when:
33+
34+
- You want the ability to incrementally update your Container App without replacing it entirely.
35+
- You need to preserve certain settings during updates.
36+
- You're working with standard container applications that aren't based on the .NET Aspire framework.
37+
- You want a pattern that supports composability across multiple services.
38+
39+
### Example
40+
41+
Here's how to use the `container-app-upsert` strategy in your Bicep files:
42+
43+
```bicep
44+
module api 'br/public:avm/ptn/azd/container-app-upsert:0.1.2' = {
45+
name: 'api'
46+
params: {
47+
name: 'my-api'
48+
location: location
49+
containerAppsEnvironmentName: containerAppsEnvironment.name
50+
containerRegistryName: containerRegistry.name
51+
imageName: !empty(apiImageName) ? apiImageName : ''
52+
exists: apiExists
53+
env: [
54+
{
55+
name: 'MONGODB_CONNECTION_STRING'
56+
value: mongodb.outputs.connectionString
57+
}
58+
]
59+
targetPort: 3100
60+
}
61+
}
62+
```
63+
64+
In this example:
65+
66+
- The `exists` parameter determines whether to update an existing app or create a new one.
67+
- The `imageName` uses the `!empty()` function to conditionally specify a new image or keep the existing one.
68+
- Application settings are provided via the `env` parameter.
69+
70+
## Delay deployment strategy with .NET Aspire
71+
72+
The `delay-deployment` strategy is specifically designed for .NET Aspire applications. It postpones full container app creation until deployment time, allowing for more flexibility with .NET Aspire's orchestration model.
73+
74+
### How it works
75+
76+
The `delay-deployment` strategy:
77+
78+
1. Delays full provisioning of container resources until deployment time.
79+
2. Uses the .NET Aspire manifest to define container apps and their configurations.
80+
3. Supports two deployment approaches based on the manifest:
81+
- Bicep-based deployment (when the manifest includes a deployment configuration).
82+
- YAML-based deployment (direct Container Apps YAML deployment).
83+
4. Handles special features like service binding and configuration sharing across Aspire components.
84+
85+
When using .NET Aspire with `azd`, the Aspire project generates a manifest that `azd` uses during deployment. This approach allows for better integration with .NET Aspire's application model.
86+
87+
### When to use it
88+
89+
Use the `delay-deployment` strategy when:
90+
91+
- Working with .NET Aspire applications.
92+
- Your application has complex service relationships defined in the Aspire manifest.
93+
- You need integration with .NET Aspire's resource binding model.
94+
- You want to leverage .NET Aspire's application hosting capabilities.
95+
96+
### Example
97+
98+
For .NET Aspire applications, `azd` automatically uses the delay-deployment strategy when you specify `"containerapp-dotnet"` as the host type. Typically, this is handled automatically when importing a .NET Aspire project.
99+
100+
When working with a .NET Aspire application:
101+
102+
1. Initialize your `azd` project with a .NET Aspire application:
103+
104+
```bash
105+
# This is typically done automatically by `azd` init for .NET Aspire projects
106+
azd init
107+
```
108+
109+
1. During provisioning, `azd` sets up the necessary Azure resources but delays full Container App configuration.
110+
111+
1. During deployment, `azd` will:
112+
113+
- Build and publish the container images.
114+
- Apply the .NET Aspire manifest with proper configuration.
115+
- Configure service bindings between components.
116+
117+
The delay-deployment strategy is primarily managed internally by `azd` based on the .NET Aspire application structure.
118+
119+
## Choosing the right strategy
120+
121+
| Feature | container-app-upsert | delay-deployment (.NET Aspire) |
122+
|------------------------|------------------------------|-------------------------------|
123+
| Application type | Any containerized application| .NET Aspire applications |
124+
| Configuration source | Bicep parameters | .NET Aspire manifest |
125+
| Deployment timing | All configuration during provisioning | Container App specifics during deployment |
126+
| Service binding | Manual configuration | Integrated with Aspire binding model |
127+
| Best for | General container applications | .NET microservices orchestrated with Aspire |
128+
129+
## Additional resources
130+
131+
- [Azure Container Apps Overview](/azure/container-apps/overview)
132+
- [Azure Container Apps Bicep Reference](/azure/templates/microsoft.app/containerapps)
133+
- [.NET Aspire Overview](/dotnet/aspire/get-started/aspire-overview)
134+
- [Todo Application Templates](https://github.com/Azure-Samples/todo-nodejs-mongo) (using container-app-upsert)

articles/azure-developer-cli/content-delivery-network-changes.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: CDN changes impacting the Azure Developer CLI
33
description: Information regarding critical Content Delivery Network (CDN) changes for azd due to the CDN provider changing from Edgio to Azure Front Door.
44
author: alexwolfmsft
55
ms.author: alexwolf
6-
ms.date: 01/07/2024
6+
ms.date: 07/22/2025
77
ms.topic: reference
88
ms.custom: devx-track-azdevcli
99
ms.service: azure-dev-cli

articles/azure-developer-cli/feature-versioning.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn about the versioning and feature release strategy of the Azur
44
keywords: azure developer cli, azd
55
author: alexwolfmsft
66
ms.author: alexwolf
7-
ms.date: 9/14/2023
7+
ms.date: 07/22/2025
88
ms.topic: how-to
99
ms.service: azure-dev-cli
1010
ms.custom: devx-track-azdevcli

articles/azure-developer-cli/index.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ metadata:
99
description: Get started developing Azure apps using Azure Developer CLI (azd).
1010
author: alexwolfmsft
1111
ms.author: alexwolf
12-
ms.date: 12/11/2023
12+
ms.date: 07/22/2025
1313
ms.topic: landing-page
1414
ms.collection: collection
1515
ms.service: azure-dev-cli

0 commit comments

Comments
 (0)