我有一个简单的python模块AdditionalLibrary,我不想在任何地方公开发布。我也有一个Azure python无服务器功能应用ExamplePythonServerlessFunction,我想在Azure上发布。
我遵循了官方文档:
和过时的页面https://prmadi.com/install-python-modules-on-azure-app-services/
最后,我的azure函数项目中有一个wheelhouse
目录,其中包含我需要的每个依赖项的*.whl
文件。我尝试在我的requirments.txt
文件中放置其他标志,以使用wheelhouse
目录而不是索引。这是我的requirments.txt
文件的内容。
--no-index --find-links file://wheelhouse
Additional-Library==1.0
azure-functions==1.0.0b4
azure-functions-worker==1.0.0b6
grpcio==1.20.1
grpcio-tools==1.20.1
protobuf==3.6.1
six==1.11.0
发布应用程序期间:
$ func azure functionapp publish ${APP_NAME} --build-native-deps
我得到一个错误:
Url 'file://wheelhouse' is ignored: it is neither a file nor a directory.
,并且我无法安装依赖项。那是正确的吗?如何将一些其他依赖项安装到azure函数应用程序。
任何帮助和建议将不胜感激。
答案 0 :(得分:0)
我一直在这样做:
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '../../../az/Lib/site-packages')))
from azure.storage.cloudstorageaccount import CloudStorageAccount,AccountPermissions,Services,ResourceTypes
from azure.storage.blob import BlockBlobService
因此您只需在函数中创建一个目录,然后将其添加到path并从该路径导入模块即可。