MPG migration SDK - TrafficManager#55412
Merged
ArthurMa1978 merged 15 commits intoAzure:mainfrom Mar 4, 2026
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR migrates Azure.ResourceManager.TrafficManager to the new TypeSpec-based management-plane code generator (“MPG migration”), updating generated SDK surface area and adapting scenario tests to the regenerated resources/collections.
Changes:
- Added TypeSpec configuration (
tsp-location.yaml,metadata.json) and updated generated TrafficManager management SDK code. - Updated scenario tests to use the new generated resource/collection APIs (notably endpoints and user metrics).
- Removed legacy Autorest-era generated samples and older customization artifacts.
Reviewed changes
Copilot reviewed 10 out of 150 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tsp-location.yaml | Adds TypeSpec spec repo/commit configuration for regeneration. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/metadata.json | Adds package metadata (API version) used by generator/tooling. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/assets.json | Updates assets tag to match regenerated output. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Azure.ResourceManager.TrafficManager.csproj | Removes Autorest dependency flag; adjusts API compat metadata. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/autorest.md.bak | Legacy Autorest configuration snapshot added as a .bak. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Azure.ResourceManager.TrafficManager.Tests.csproj | Keeps Generated/Samples folder entry after removing sample sources. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Scenario/UserMetricsModelTests.cs | Updates user metrics tests to new resource/collection patterns. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Scenario/ProfileTests.cs | Updates endpoint retrieval call to use enum endpoint type. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Scenario/ProfileTestBase.cs | Updates endpoint type constants and introduces endpoint type enum constant. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Scenario/EndpointTests.cs | Updates endpoint tests to use collections and endpoint type enum. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Generated/Samples/Sample_TrafficManagerUserMetricsResource.cs | Removes legacy generated sample (no longer produced/kept). |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Generated/Samples/Sample_TrafficManagerHeatMapResource.cs | Removes legacy generated sample (no longer produced/kept). |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Generated/Samples/Sample_TrafficManagerGeographicHierarchyResource.cs | Removes legacy generated sample (no longer produced/kept). |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Generated/Samples/Sample_TenantResourceExtensions.cs | Removes legacy generated sample extensions. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Generated/Samples/Sample_SubscriptionResourceExtensions.cs | Removes legacy generated sample extensions. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/TrafficManagerUserMetricsResource.Serialization.cs | Removes old resource serialization partial for renamed user metrics resource. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/TrafficManagerUserMetricResource.Serialization.cs | Adds serialization partial for the new user metric resource type. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/TrafficManagerUserMetricData.cs | Refactors user metric data to store values under generated Properties. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/TrafficManagerProfileResource.Serialization.cs | Updates profile resource serialization implementation style. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/TrafficManagerHeatMapResource.Serialization.cs | Updates heat map resource serialization implementation style. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/TrafficManagerHeatMapData.cs | Refactors heat map data to store values under generated Properties. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/TrafficManagerGeographicHierarchyResource.Serialization.cs | Updates geographic hierarchy resource serialization implementation style. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/TrafficManagerGeographicHierarchyData.cs | Refactors geographic hierarchy data to store values under generated Properties. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/TrafficManagerEndpointResource.Serialization.cs | Updates endpoint resource serialization implementation style. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/RestOperations/GeographicHierarchiesRestOperations.cs | Renames/reworks rest-ops implementation to new client pattern. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/ProviderConstants.cs | Makes ProviderConstants partial and updates doc comment. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/UserMetricsProperties.cs | Adds generated UserMetricsProperties model. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/UserMetricsProperties.Serialization.cs | Adds serialization for UserMetricsProperties. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficViewEnrollmentStatus.cs | Updates extensible-enum implementation to new patterns (Argument.AssertNotNull etc.). |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficRoutingMethod.cs | Updates extensible-enum implementation to new patterns. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerTrackedResourceData.cs | Renames additional data field and updates constructor signature. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerResourceData.cs | Renames additional data field and simplifies docs. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerRelativeDnsNameAvailabilityContent.cs | Renames additional data field and simplifies docs. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerRegion.cs | Renames additional data field and simplifies docs. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerProxyResourceData.cs | Renames additional data field in base constructor call. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerProfileStatus.cs | Updates extensible-enum implementation to new patterns. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerProfileRecordType.cs | Removes old extensible-enum type (replaced by generator changes). |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerProfileMonitorStatus.cs | Updates extensible-enum implementation to new patterns. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerProfileListResult.cs | Removes old list result model. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerProfileListResult.Serialization.cs | Removes old list result serialization. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerNameAvailabilityResult.cs | Renames additional data field and updates constructor signature. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerMonitorProtocol.cs | Updates extensible-enum implementation to new patterns. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerMonitorConfigCustomHeaderInfo.cs | Renames additional data field and updates constructor signature. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerMonitorConfig.cs | Renames additional data field and updates constructor signature. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerHeatMapType.cs | Updates extensible-enum implementation to new patterns. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerHeatMapTrafficFlow.cs | Renames additional data field and updates constructor signature. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerHeatMapQueryExperience.cs | Renames additional data field and updates constructor signature; removes deserialization ctor. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerHeatMapEndpoint.cs | Renames additional data field and updates constructor signature. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerEndpointType.cs | Adds generated endpoint type enum. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerEndpointType.Serialization.cs | Adds enum serialization helpers for endpoint type. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerEndpointSubnetInfo.cs | Renames additional data field and updates constructor signature. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerEndpointStatus.cs | Updates extensible-enum implementation to new patterns. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerEndpointMonitorStatus.cs | Updates extensible-enum implementation to new patterns. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerEndpointCustomHeaderInfo.cs | Renames additional data field and updates constructor signature. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerEndpointAlwaysServeStatus.cs | Updates extensible-enum implementation to new patterns. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerDnsConfig.cs | Renames additional data field and updates constructor signature. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/TrafficManagerDeleteOperationResult.cs | Adds delete operation result model. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/ProfileProperties.cs | Adds generated profile properties model. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/ProfileListResult.cs | Adds new list-result model used by pageable implementations. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/HeatMapProperties.cs | Adds generated heat map properties model. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/GeographicHierarchyProperties.cs | Adds generated geographic hierarchy properties model. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/GeographicHierarchyProperties.Serialization.cs | Adds serialization for geographic hierarchy properties. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/ExpectedStatusCodeRangeInfo.cs | Renames additional data field and updates constructor signature. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/AzureResourceManagerTrafficManagerContext.cs | Updates source-generation buildables list for new models/resources. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Models/AllowedEndpointRecordType.cs | Updates extensible-enum implementation to new patterns. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/LongRunningOperation/TrafficManagerArmOperationOfT.cs | Updates ARM operation wrapper implementation and rehydration token usage. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/LongRunningOperation/TrafficManagerArmOperation.cs | Removes non-generic ARM operation wrapper. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/Utf8JsonRequestContent.cs | Makes request content class partial and updates docs. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/SerializationFormat.cs | Adds internal serialization format enum for formatter helpers. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/RequestContextExtensions.cs | Adds helper to parse RequestContext to token/error options. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/RawRequestUriBuilderExtensions.cs | Adds helper methods for delimited query appends and updating existing query params. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/PageableWrapper.cs | Adds wrapper for converting Pageable to Pageable. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/Optional.cs | Makes Optional partial and adjusts IsDefined overload ordering/implementation. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/ErrorResult.cs | Adds Response-derived error wrapper for deferred exception throwing. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/CodeGenTypeAttribute.cs | Adds generator customization attributes. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/CodeGenSuppressAttribute.cs | Adds generator customization attributes. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/CodeGenSerializationAttribute.cs | Adds generator customization attributes. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/CodeGenMemberAttribute.cs | Adds generator customization attributes. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/ClientPipelineExtensions.cs | Adds pipeline processing helpers (sync/async/head-as-bool). |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/ChangeTrackingList.cs | Makes ChangeTrackingList partial and adds/updates docs. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/ChangeTrackingDictionary.cs | Makes ChangeTrackingDictionary partial and adds/updates docs. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/AsyncPageableWrapper.cs | Adds wrapper for converting AsyncPageable to AsyncPageable. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/Argument.cs | Makes Argument partial and removes unused assertion helpers. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Extensions/MockableTrafficManagerResourceGroupResource.cs | Updates mockable extensions to new patterns and adds argument validation. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/Extensions/MockableTrafficManagerArmClient.cs | Updates mockable client extensions and renames user metrics resource accessor. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/CollectionResults/ProfilesGetBySubscriptionCollectionResultOfT.cs | Adds pageable collection result implementation for subscription profile listing. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/CollectionResults/ProfilesGetBySubscriptionAsyncCollectionResultOfT.cs | Adds async pageable collection result implementation for subscription profile listing. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/CollectionResults/ProfilesGetByResourceGroupCollectionResultOfT.cs | Adds pageable collection result implementation for RG profile listing. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Generated/CollectionResults/ProfilesGetByResourceGroupAsyncCollectionResultOfT.cs | Adds async pageable collection result implementation for RG profile listing. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Customization/TrafficManagerUserMetricsResource.cs | Removes old customization for user metrics resource behavior. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Customization/TrafficManagerEndpointResource.cs | Removes old customization for endpoint resource id validation. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Customization/TrafficManagerEndpointCollection.cs | Updates customization comments/constructor wiring for endpoint collection behavior. |
| sdk/trafficmanager/Azure.ResourceManager.TrafficManager/src/Customization/RestOperations/TrafficManagerUserMetricsKeysRestOperations.cs | Removes old rest-ops customization for user metrics keys endpoints. |
sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Scenario/UserMetricsModelTests.cs
Show resolved
Hide resolved
sdk/trafficmanager/Azure.ResourceManager.TrafficManager/tests/Scenario/EndpointTests.cs
Show resolved
Hide resolved
...afficmanager/Azure.ResourceManager.TrafficManager/src/Generated/TrafficManagerHeatMapData.cs
Show resolved
Hide resolved
...ager/Azure.ResourceManager.TrafficManager/src/Generated/Internal/ClientPipelineExtensions.cs
Show resolved
Hide resolved
...manager/Azure.ResourceManager.TrafficManager/src/Azure.ResourceManager.TrafficManager.csproj
Outdated
Show resolved
Hide resolved
…ure.ResourceManager.TrafficManager.csproj Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
ArthurMa1978
reviewed
Mar 2, 2026
...icmanager/Azure.ResourceManager.TrafficManager/src/Customization/CodeGenSuppressAttribute.cs
Outdated
Show resolved
Hide resolved
ArthurMa1978
reviewed
Mar 2, 2026
...ger/Azure.ResourceManager.TrafficManager/src/Customization/TrafficManagerEndpointResource.cs
Show resolved
Hide resolved
ArthurMa1978
approved these changes
Mar 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixed: #54777
TSP PR: Azure/azure-rest-api-specs#40085
Use the new code generator to generate SDK code from TSP.
depend on:
Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.