Azure CLI 命令在 azure 函数应用程序中不起作用(门户)

Azure CLI commands not working inside azure function apps (portal)

我有 powershell 脚本 运行ning locally.But 那些脚本不是 运行ning insite function apps > powershell (windows) machine.

az login --service-principal -u $ServicePrincipalId -p $ServicePrincipalPass --tenant $ServicePrincipalTenant

当我 运行 脚本

ERROR: The term 'az' is not recognized as the name of a cmdlet, function, script file, or operable program.

因为我没有在 windows 机器上安装 az cli,我添加了下面一行来在我的脚本中安装 az 命令。

Install-Module -Name Az -AllowClobber  -Scope CurrentUser

安装 az 时出现访问问题。

2019-06-11T12:42:59.698 [Warning] WARNING: InternalWebProxy: Could not find a part of the path 'D:\Program Files (x86)\SiteExtensions\Functions.0.12507bit\workers\powershell\runtimes\win-x86\lib\netcoreapp2.1\ref'.
2019-06-11T12:42:59.843 [Warning] WARNING: Win32Helpers: Could not find a part of the path 'D:\Program Files (x86)\SiteExtensions\Functions.0.12507bit\workers\powershell\runtimes\win-x86\lib\netcoreapp2.1\ref'.
2019-06-11T12:43:05.023 [Warning] WARNING: User declined to install module (Az).

甚至 -Force 都不起作用。需要知道导致问题的原因。

注意 :- 该脚本在本地 windows 机器上完全 运行ning。问题是尝试 运行 on portal > functionapp> timertrigger

附加使用 windows 机器创建的 azure 函数应用程序

将 cli 文件夹添加到 kudu 后出现错误

> 2019-06-13T12:29:40.510 [Error] ERROR:   File
> "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-68v0_w99\azure-cli-core\azure\cli\core\commands\__init__.py", line 523, in execute Microsoft.Azure.WebJobs.Script.Rpc.RpcException :
> Result: ERROR:   File
> "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-68v0_w99\azure-cli-core\azure\cli\core\commands\__init__.py", line 523, in execute Exception:   File
> "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-68v0_w99\azure-cli-core\azure\cli\core\commands\__init__.py", line 523, in execute

kudu 控制台

如报错所示,您没有在环境中安装Azure CLI。要安装 Azure CLI,一种可能的方法是将您在本地机器上安装的整个 CLI 目录复制到您的函数 KUDU 路径 /home.

在测试中,函数KUDU中的复制路径为D:/home/CLI2/

测试代码:

D:/home/CLI2/wbin/az.cmd login --service-principal -u 'xxxxxx' -p 'xxxxxx' --tenant 'xxxxxx' | Write-Host

输出截图: