ARM Templates: Deprecating the "kind" field
Since we started supporting ARM functionality in April, we have had some great feedback. If you haven't had a chance to check it out, take it for a spin!
As a result of moving to the New Portal, we have had a little bit of technical debt to clean up (click here to read more about that), and as such we are going to start enforcing some new rules regarding Resource Provider Types.
In the past, you may have been able to create either Event Hubs or Messaging resources in the following ways:
Figure 1 - Notice the “type” is “Microsoft.EventHub” and the “kind” is “Messaging”
Figure 2 - Notice the “type” is “Microsoft.ServiceBus” and the “kind” is “EventHub”
To make resource management more consistent moving forward, the "kind" field will be deprecated. So you will not be able to create a Messaging namespace with a Microsoft.EventHub/Namespaces type, or an Event Hub namespace with a Microsoft.ServiceBus/Namespaces type. Instead it will be inferred that when you create a Microsoft.EventHub type that you want an Event Hub namespace, and when you create a Microsoft.ServiceBus type that you want a Messaging namespace.
Here is what the changes will look like:
Figure 3 – Notice the “type” is “Microsoft.EventHub”, and there is no "kind" field.
Existing templates with the properly corresponding "type"/"kind" values will continue to work, however templates with differing "type"/"kind" values will fail.
Our intention with this change is to make our ARM surface area more consistent and therefore easier to use for new customers. We understand that this will require a few changes for existing customers, so we are here to help! Please reach out to our customer support team here with any questions.
What do you think? Let us know in the comments.