1

我正在为我的项目开发部署后 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 扩展“customScript”失败,终端错误代码为“1007”和错误消息:“插件安装失败(名称:Microsoft.Azure.Extensions.customScript,2.0 版。 6) 例外指定的可执行文件不是此操作系统平台的有效应用程序。

在检查 VM 上的扩展时,看到状态为“正在转换”,详细信息为插件(名称:Microsoft.Azure.Extensions.customScript,版本 2.0.6)的安装失败,但出现异常指定的可执行文件不是有效的应用程序操作系统平台)

或者,我尝试与其他发布者:Microsoft.Compute 和 Microsoft.OSTCExtensions

不幸的是,他们都没有工作。过去两天我一直卡在这一步。任何帮助深表感谢。

4

1 回答 1

2

我认为您可能使用了错误的自定义脚本扩展(我相信您使用的那个是用于 Linux 虚拟机的)。我认为您应该将名为“CustomScriptExtension”的名称与“Microsoft.Compute”的发布者一起使用,并且版本设置为“1.9”,如此所述。

具体来说,试试这个命令:

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
于 2018-07-19T09:09:54.267 回答