我正在为我的项目开发部署后的Pester验证脚本。我需要使用Azure CLI将瘟疫脚本作为自定义脚本扩展推入VM。
以下是我执行的命令:
az vm extension set --resource-group SomeRG--vm-name SimpleVM --name
customScript --publisher Microsoft.Azure.Extensions --settings '{"fileUris":
["https://github.com/myname/DSCConfig/blob/master/pester.ps1"],
"commandToExecute":"powershell -ExecutionPolicy Unrestricted -File
pester.ps1"}' --version 2.0
执行上面的命令后,我在Linux界面中收到以下错误:
部署失败。相关ID: 8ba16fc0-fea6-4650-bb0a-2b73c9613dfe。处理程序 'Microsoft.Azure.Extensions.customScript'报告了VM失败 带有终端错误代码“ 1007”的扩展名“ customScript”和错误 消息:“插件安装失败(名称: Microsoft.Azure.Extensions.customScript,版本2.0.6),但有例外 指定的可执行文件不是此操作系统的有效应用程序 平台。
在检查VM上的扩展名时,状态为“正在过渡”,并且详细信息为插件安装失败(名称:Microsoft.Azure.Extensions.customScript,版本2.0.6),但指定的可执行文件无效该OS平台的应用程序)
或者,我尝试了其他发布者:Microsoft.Compute和Microsoft.OSTCExtensions
不幸的是,它们都不起作用。在过去的两天里,我一直坚持这一步骤。任何帮助深表感谢。
答案 0 :(得分:1)
我认为您可能使用了错误的自定义脚本扩展名(我认为您使用的是Linux VM)。我认为您应该使用一个名为“ CustomScriptExtension”的文件,并将其发行商为“ Microsoft.Compute”,并将版本设置为“ 1.9”,如here所述。
具体来说,请尝试使用以下命令:
az vm extension set --resource-group SomeRG--vm-name SimpleVM --name CustomScriptExtension --publisher Microsoft.Compute --settings '{"fileUris": ["https://github.com/myname/DSCConfig/blob/master/pester.ps1"], "commandToExecute":"powershell -ExecutionPolicy Unrestricted -File pester.ps1"}' --version 1.9