我以前能够使用我的项目目录中的命令func azure functionapp publish <FunctionAppName>部署一个用Python编写的Azure函数,然后远程构建它。直到昨天的午餐时间。
我现在收到以下消息。
Creating archive for current directory...
Performing remote build for functions project.
Deleting the old .python_packages directory
Uploading [######################################################################################]
Remote build in progress, please wait...
Fetching changes.
Cleaning up temp folders from previous zip deployments and extracting pushed zip file /tmp/zipdeploy/c5e66350-4b87-4e72-9900-b2a1ae4521a8.zip (0.00 MB) to /tmp/zipdeploy/extracted
Central Directory corrupt.
Remote build failed!我尝试了以下方法,看看我是否能够解决这个问题而没有任何成功:
anything.
中。
我在每一种情况下都会得到同样的信息。
我被困在这里了。是否有人有更多关于错误信息可能意味着什么是出错或任何想法的信息?
其他调查-
我还尝试使用func azure functionapp publish IncidentProcessing4 --build local在本地构建
我收到了一些不同的错误信息
Performing local build for functions project.
Directory .python_packages already in sync with requirements.txt. Skipping restoring dependencies...
Uploading package...
Uploading 0 B [###################################################################################]
Attempted to divide by zero.
Retry: 1 of 3
Uploading 0 B [###################################################################################]
Attempted to divide by zero.
Retry: 2 of 3
Uploading 0 B [###################################################################################]
Attempted to divide by zero.
Retry: 3 of 3
Uploading 0 B [###################################################################################]
Attempted to divide by zero.我注意到,在我的\user\name\appdata\local\temp目录中,构建创建了2个文件,名为temp374D.tmp和tmp374E.tmp。其中第一个大小为0KB,第二个大小为8KB。
我怀疑是某种原因导致创建了第一个文件,而服务器上的某些东西正在试图解压缩,但未能解压缩。
更多其他信息-- Visual代码中的“”--部署,但是当Azure函数运行时,我会得到未加载的函数引用的模块的错误。如果可以使用函数应用程序在requirements.txt中部署模块,这将是一项工作。
发布于 2020-02-20 14:30:40
我想我已经修复了它,恢复到早期版本的Azure函数核心工具。它正在部署2.7.1575。
我将进行实验,看看是否还能找到答案,但我现在已经部署了我的功能。
发布于 2020-02-19 23:27:57
考虑到您尝试诊断问题所做的全部工作,这可能不适用,但我将把它抛在脑后。如果我的函数运行在终端窗口中(通过func host start),甚至通过VSCode函数扩展,我就会遇到这种情况。
看上去应该是显而易见的,看看是否有任何东西正在运行,但我已经看到VSCode将函数主机进程留在运行状态。要进行检查,可以检查netstat (netstat -a -n | grep 9091)或lsof (lsof -nP -iTCP:9091 | grep LISTEN)。后者给出了打开端口的pid。
发布于 2020-04-23 06:26:07
看起来在Azure Functions工具中引入了一个bug,如果您的函数目录full path中包含一个空格字符(如- /home/my functions project/ ),它将创建一个0字节的zip包。
见- https://github.com/Azure/azure-functions-core-tools/issues/1867
这将在下一个版本中得到解决。同时,任何经历这种情况的人如果将他们的函数项目切换到没有空格字符的路径上,就可以缓解这个问题。
真对不起!
https://stackoverflow.com/questions/60296003
复制相似问题