我有一个Python的Google云函数,它的部署有3个文件
root/
|_ main.py
|_ lib.zip
|_ requirements.txt
lib.zip有一些内部开发的包/模块,由另一个团队内部分发。requirements.txt有公共图书馆,如pandas、numpy等
main.py通过以下方式从zip文件导入模块:
sys.path.insert(0, 'lib.zip')
from def.xyz import xpto
部署在gcloud cli中工作正常,但当我尝试在web控制台中编辑该环境变量和/或添加其他环境变量时,部署失败,main.py中出现以下错误:
ModuleNotFoundError: No module named 'def'
显然,当从控制台重新部署时,它找不到zip文件,尽管我在source选项卡中看到了列出的文件
开发团队在部署时不知道这些变量的值,因此无法将它们添加到gcloud cli命令中。而管理web控制台的操作团队将无权访问版本控制存储库,因此他们无法运行gcloud cli命令
关于我做错了什么或者如何克服这种情况有什么提示吗
修改评论作为答案,确认方法有效
您的操作团队可以使用
gcloud functions deploy
来更新(!)云函数和set | update environment variables不重新部署相关问题 更多 >
编程相关推荐