【发布时间】:2019-03-01 23:38:31
【问题描述】:
我想从 Powershell 设置现有 Azure 函数的应用设置。我有以下脚本
$FunctionSettings = @{
"WEBSITE_CONTENTAZUREFILECONNECTIONSTRING" = "*******";
"WEBSITE_CONTENTSHARE" = "TestFunction123";
"AzureWebJobsStorage" = "*******";
"FUNCTIONS_EXTENSION_VERSION" = "~2";
"FUNCTIONS_WORKER_RUNTIME" = "dotnet";
"WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1";
}
Set-AzureRmWebApp -ResourceGroupName "RGN" -AppSettings $FunctionSettings -Name "TestFunction"
运行此脚本会返回此错误
Set-AzureRmWebApp:操作返回了无效的状态码 '错误的请求' 在 C:\Users******\Source\Repos*******\Create Azure Infrastructure.ps1:101 char:1 + 设置-AzureRmWebApp -ResourceGroupName $AzureResourceGroupName -AppSett ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : CloseError: (:) [Set-AzureRmWebApp], DefaultErrorResponseException + FullyQualifiedErrorId : Microsoft.Azure.Commands.WebApps.Cmdlets.WebApps.SetAzureWebAppCmdlet
如果我从 $FunctionSettings 中删除 WEBSITE_CONTENTAZUREFILECONNECTIONSTRING 和 WEBSITE_CONTENTSHARE,那么脚本会成功运行,但我会在 Azure UI 中遇到错误,因为这些属性是必需的。
我该如何解决这个问题?
【问题讨论】:
-
您的存储帐户是否支持 Blob、队列、表和文件存储? stackoverflow.com/questions/47637581/…
-
@MarieHoeger 谢谢,我已经检查过了,它确实支持这些。事实上,如果我通过 web 界面创建一个新功能并选择相同的存储帐户,它就可以工作。
-
您的评论意味着您创建了一个新函数并且脚本工作正常?如果没有,您可以尝试使用 Az 命令
Set-AzWebApp吗?我用一个消费功能的app试了一下,效果很好。
标签: powershell azure-functions devops