Skip to content

arm-custom-resource-usage-discourage

Id
@azure-tools/typespec-azure-resource-manager/arm-custom-resource-usage-discourage

Verify 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.

  • Area: API

The resource does not use the ARM common-types resource base types.

@Azure.ResourceManager.Legacy.customAzureResource
model Person {
name: string;
}

Use standard ARM resource types:

model Employee is TrackedResource<EmployeeProperties> {
...ResourceNameParameter<Employee>;
}

Treat like any resource that does not use common-types. Use TrackedResource, ProxyResource, or ExtensionResource.