arm-custom-resource-usage-discourage
@azure-tools/typespec-azure-resource-manager/arm-custom-resource-usage-discourageVerify the usage of @customAzureResource decorator.
Avoid using the @customAzureResource decorator. It doesn’t provide validation for ARM resources, and its usage should be limited to brownfield services migration.
Impact
Section titled “Impact”- Area: API
The resource does not use the ARM common-types resource base types.
❌ Incorrect
Section titled “❌ Incorrect”@Azure.ResourceManager.Legacy.customAzureResourcemodel Person { name: string;}✅ Correct
Section titled “✅ Correct”Use standard ARM resource types:
model Employee is TrackedResource<EmployeeProperties> { ...ResourceNameParameter<Employee>;}Suppression
Section titled “Suppression”Treat like any resource that does not use common-types. Use TrackedResource, ProxyResource, or ExtensionResource.