我将使用VS-code azure extension auto创建的测试函数作为这个问题的“简单”案例。
我可以在requirements.txt中添加任何模块(pandas,requests,facebook),它工作正常。然而,当我添加google-cloud-storage时,我的函数中断了,只返回500。
我应该注意到它只在Azure上测试时会中断,当在本地运行时它工作正常
此外,如果该函数是在Azure Portal中创建的(而不是连接到Github),并且google-cloud-storage是使用ssh pip安装的,那么该函数也可以正常工作。
似乎是当VS代码被用于在requirements.txt中使用'google-cloud-storage'部署函数时,我们遇到了问题。不管怎样,这就是我所发现的,任何帮助将不胜感激
**如何复制:****第一步:**已创建函数应用
此函数应用程序使用:App Service Plan,Basic B1(总共100个ACU,1.75 GB内存,1个vCPU)enter image description here只能运行Linux,因为选择python时不支持windows
**第二步:**默认创建函数,VS-code azure扩展名为https://i.stack.imgur.com/XBLpV.png
函数如下所示:enter image description here
步骤3:我现在将其添加到我的github存储库中,然后Azure应用程序服务将其作为函数进行部署。使用函数应用程序连接到存储库enter image description here
我们在requirements.txt enter image description here中没有使用google-cloud-storage也取得了成功
现在我们添加google-cloud-storage:enter image description here然后我们将其git推送到我们的存储库,Azure将创建我们的部署
当我们现在尝试测试函数时,我们得到了一致的500个结果,没有日志。enter image description here
我想继续使用Git-hub的方法,所以一个我们保持相同流程的解决方案会很棒,但任何建议都会很棒。提前感谢各位。
尝试pip使用ssh手动安装google-cloud-storage,然后使用VS-code部署,这破坏了整个功能应用程序。
1条答案
按热度按时间pes8fvy91#
我已经在我的requirements.txt中添加了google-cloud-storage,我的azure函数Http存储库位于如下文件夹结构中:
现在,我使用Functions Premium计划创建了Azure Function应用程序,并选择了Python 3.10:
在我的函数应用部署之后,我去了部署中心,将我的函数连接到上面的github存储库,并启动了github工作流:
我的Github工作流程:-
你可以在这里找到我的Github工作流程
输出:-
错误:-
我引用了Kushan Gunasekara的SO thread answer,并在requirements.txt中添加了protobuf==3.20. 沿着google-cloud-storage,并再次运行了部署,HttpTrigger部署后成功运行,参考如下:-*
我的更新需求.txt:-