我正在将资源组部署到Azure,其中包括VM,网络,带有一些Runbook的自动化帐户,以及使用JSON模板等。
我收到以下错误,
New-AzureRmResourceGroupDeployment:4:49:23 PM - 资源 Microsoft.Automation / automationAccounts /运行手册 ' DeployAutomationName / AzureClassicAutomationTutorial'失败了 消息' {"代码":" BadRequest","消息": " {\"消息\":\" 指定的参数无效。参数contentLink 不能为空。\"}"
以及:
New-AzureRmResourceGroupDeployment:4:49:23 PM - 资源 Microsoft.Automation / automationAccounts /模块 ' DeployAutomationName / Microsoft.WSMan.Management'失败的消息 ' {"代码":" BadRequest","消息":" {\"消息\":\ "的的 必须在PUT或重新PUT操作中提供ContentLink属性。\"}" }'
这两个错误重复了各种不同的资产"资产" (我认为这是我自动化帐户的术语)。因此,对于modules
,runbooks
,certificates
和connections
。
什么是contenLink,我怎样才能确定它不是空的? " ContentLink"我的模板中没有任何地方,除了this之外,我还无法在互联网上找到关于contentLink究竟是什么的任何解释。此外,我假设" PUT"或者"重新投入"是提供模板的其余API的一部分,我也无法直接控制此过程。 什么用于描述我无法直接控制的问题的错误消息?
此问题与我成功解决Azure模板的许多困难同义:我得到的错误消息似乎描述了 Azure Internals ,我对此也不了解或访问。当我无法访问实际抛出这些异常的代码时,如何进行故障排除或调试,以及对此异常的含义的解释?
谢谢! Here是我的template
,我只会复制相关文字,但我还没有找到 相关的内容以及&# 39; s 不:
答案 0 :(得分:1)
好的,所以在稍微戳了之后,看起来你错过了Runbook内容(脚本本身)。所以你的Runbook资源应如下所示:
{
"type": "Microsoft.Automation/automationAccounts/runbooks",
"name": "[parameters('runbooks_AzureAutomationTutorial_name')]",
"apiVersion": "2015-10-31",
"location": "eastus2",
"properties": {
"runbookType": "GraphPowerShell",
"logVerbose": false,
"logProgress": false,
"publishContentLink": {
"uri": "[variables('scriptUri')]",
"version": "1.0.0.0"
}
},
"resources": [],
"dependsOn": [
"[resourceId('Microsoft.Automation/automationAccounts', parameters('automationAccounts_deployautomation_name_1'))]"
]
},
和变量:
"variables": {
"scriptUri": "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-automation-runbook-getvms/Runbooks/Get-AzureVMTutorial.ps1",
},
我无法测试整个模板,因为我没有base64值,但我相信这应该可以解决您的问题。在此之后可能还有另一个人,你知道。
此外,您可以从模板中删除模块,因为它们不是必需的,它们都是默认模块,但对于它们的想法是相同的,您正在部署模块而不提供模块数据。
您可能在这里和那里缺少其他强制属性,看起来Automation Script
在Azure自动化方面效果不佳。您可能希望借助Powershell来配置自动化帐户,因为它完全正常。
P.S。我不知道图形Runbook的内容是什么样的。但我猜,你可以导出它并上传到github,它会起作用。