microsoft / microsoft/aspire

[Feature]: Add Azure Traffic Manager hosting integration

Open
#18,883 2 comments 1 reaction 0 assignees View on GitHub
area-integrations azure triage:bot-seen
Dominant language
C#
Stars
6.3k
Forks
991
Avg merge
2d 15h
Merged PRs (30d)
196

Description

### Is there an existing issue for this?

- [x] I have searched the existing issues

### Is your feature request related to a problem? Please describe the problem.

Aspire can provision and connect many Azure resources, but there is no first-class way to model Azure Traffic Manager in the app model. Teams running multi-region deployments today drop out of the app model and hand-author Bicep/ azd  for DNS-based routing, endpoint definitions, and health-probe config. This breaks the code-first story and makes multi-region topologies hard to express and review.

### Describe the solution you'd like

A  `Aspire.Hosting.Azure.TrafficManager`  integration exposing a builder API, e.g.:
```
var tm = builder.AddAzureTrafficManager("tm")
.WithRoutingMethod(TrafficRoutingMethod.Performance);
tm.AddEndpoint(apiEastUs);
tm.AddEndpoint(apiWestEurope);
```
• Support routing methods: Priority, Weighted, Performance, Geographic, Subnet, MultiValue.
• Endpoint types: Azure endpoints (App Service / Container Apps / public IP), external, and nested profiles.
• Configurable DNS TTL and monitor/health-probe settings (protocol, port, path, interval, tolerated failures).
• Emit Bicep via the Azure provisioning model so it composes with existing resources and works in both run and publish modes.
• Expose the profile FQDN as a connection/endpoint reference other resources can consume.

### Additional context

• Docs: https://learn.microsoft.com/azure/traffic-manager/
• Related to multi-region / high-availability scenarios frequently requested by 3P teams.
• Would follow the same pattern as existing  Aspire.Hosting.Azure.*  integrations.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the existing Aspire.Hosting.Azure.* integrations and the Azure provisioning model, then consult the linked Azure Traffic Manager documentation. Define the builder, endpoint, routing, monitoring, DNS, Bicep, and FQDN-reference requirements before implementation. Done means the integration composes with existing resources and works in both run and publish modes.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, csharp
Domain
cloud, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.