ARM模板部署在Azure Cloud Shell中失败

时间:2018-08-01 18:31:09

标签: azure azure-cloud-shell

当我在Azure Cloud shell中发出以下命令时:

az group deployment create --resource-group OurResourceGroup --template-file @WebSiteSQLDatabase.json --parameters @WebSiteSQLDatabase.parameters.json

我收到以下错误消息:

[Errno 36] File name too long: '{\r\n  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#...

消息继续,并输出整个模板,就好像文件名太长一样。显然这是一个Python错误...我已验证文件位于正确的位置,并尝试了几个不同的位置。

我也尝试过从URL执行:

Azure:~$ az group deployment create --resource-group OurResourceGroup --template-uri https://xxxx.file.core.windows.net/cs-xxxx-xxxx/templates/WebSiteSQLDatabase.json

但它返回此消息:

HTTP Error 400: The value for one of the HTTP headers is not in the correct format.

任何建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

我怀疑您是否需要在文件名前使用@。第二个错误是由于Azure文件未通过HTTP URL公开,您应该使用Blob存储而不是文件共享

模板中的错误:sql服务器名称不能包含-
另外,似乎Azure Cli中存在一些错误,阻止了此错误的发生(在PS中也是如此)。