Azure Resource Manager Template and "Parameter name cannot be empty"
Another error that makes slightly more sense after you understand it but it could certainly be more helpful.
If you have ever deployed an Azure Resource Manager (ARM) Template from Visual Studio, you will know that the intellisense isn't 100% correct and the documentation for the various functions lack some clarity. The first thing you usually know is after deploying you get an error reported in the console, in this case, a web application resource and the error 01014 "Parameter name cannot be empty".
Shame it couldn't tell me what parameter it was talking about but it was simply some formatting problem where I was using valid JSON, just not the format it expected!
The problem was appSettings which is a name/value dictionary that I thought was like this:
[{"name1":"value1"},{"name2":"value2"}]
When in fact, it should be:
[{"name":"name1", "value": "value1"},{"name":"name2", "value":"value2"}]
So in fact the parameter "name" cannot be empty because mine only contained a single entry called name1!
Simple when you know how.
If you have ever deployed an Azure Resource Manager (ARM) Template from Visual Studio, you will know that the intellisense isn't 100% correct and the documentation for the various functions lack some clarity. The first thing you usually know is after deploying you get an error reported in the console, in this case, a web application resource and the error 01014 "Parameter name cannot be empty".
Shame it couldn't tell me what parameter it was talking about but it was simply some formatting problem where I was using valid JSON, just not the format it expected!
The problem was appSettings which is a name/value dictionary that I thought was like this:
[{"name1":"value1"},{"name2":"value2"}]
When in fact, it should be:
[{"name":"name1", "value": "value1"},{"name":"name2", "value":"value2"}]
So in fact the parameter "name" cannot be empty because mine only contained a single entry called name1!
Simple when you know how.