如何使用Go的Google云功能中供应商的本地存储库
我正在尝试部署一个用Go编写的googlecloud函数 通过做一些研究,我发现供应商文件比go.mod更受欢迎,因此我将出售我使用的所有文件(包括一些本地依赖项),并忽略.gcloudignore文件中的go.mod/sum文件 问题是,在尝试部署后,出现以下错误:如何使用Go的Google云功能中供应商的本地存储库,go,google-cloud-functions,go-modules,Go,Google Cloud Functions,Go Modules,我正在尝试部署一个用Go编写的googlecloud函数 通过做一些研究,我发现供应商文件比go.mod更受欢迎,因此我将出售我使用的所有文件(包括一些本地依赖项),并忽略.gcloudignore文件中的go.mod/sum文件 问题是,在尝试部署后,出现以下错误: go: nimbus@v0.0.0-00010101000000-000000000000: parsing /nimbus/go.mod: open /nimbus/go.mod: no such file or directo
go: nimbus@v0.0.0-00010101000000-000000000000: parsing /nimbus/go.mod: open /nimbus/go.mod: no such file or directory; Error ID: 03a1e2f7
nimbus是我的本地依赖项,它具有以下结构:
我的功能存储库具有以下结构:
我的go.mod文件是:
module my_function
go 1.13
require nimbus v0.0.0-00010101000000-000000000000
replace nimbus => ../../../nimbus
我已经试过这个方法了。但它并没有解决我的问题
我已经尽了一切努力来解决这个问题,但似乎没有任何效果
如果您有go.mod文件和供应商目录,则在部署功能时将忽略供应商目录
我在Go中部署GCP功能时使用了模块。没有任何问题。但我不赞成使用vendor/来代替。它应该可以工作,只是没有go.mod文件
如果您有go.mod文件和供应商目录,则在部署功能时将忽略供应商目录
我在Go中部署GCP功能时使用了模块。没有任何问题。但我不赞成使用vendor/来代替。如果没有go.mod文件,它应该可以工作。结果是问题非常复杂,我希望谷歌能找到解决办法 通过使用Cloud Build部署我的函数,它将从Google Source上的我的存储库中读取,但是,通过从那里读取,它将绕过.gcloudignore文件,并使用我的本地代码部署go.mod/sum文件和供应商目录 如中所述: 如果您有go.mod文件和供应商目录,则在部署功能时将忽略供应商目录 因此,由于我的go.mod无法找到本地存储库,因此会发生错误 我的解决方案是重命名我的go.mod/sum文件,这样就不会考虑:
事实证明,问题非常复杂,我希望谷歌能找到解决办法 通过使用Cloud Build部署我的函数,它将从Google Source上的我的存储库中读取,但是,通过从那里读取,它将绕过.gcloudignore文件,并使用我的本地代码部署go.mod/sum文件和供应商目录 如中所述: 如果您有go.mod文件和供应商目录,则在部署功能时将忽略供应商目录 因此,由于我的go.mod无法找到本地存储库,因此会发生错误 我的解决方案是重命名我的go.mod/sum文件,这样就不会考虑:
冷启动是主要原因。加载依赖项,而不是将它们放在本地,会使冷启动时间更长(在某些情况下,取决于依赖项,时间更长),如问题中所述以及项目结构图中所示,.gcloudignore文件应忽略go.mod和go.sum文件,因为这样做仅考虑供应商文件冷启动是主要原因。加载依赖项,而不是将它们放在本地,会使冷启动时间更长(在某些情况下,取决于依赖项,时间更长),如问题中所述以及项目结构图所示,.gcloudignore文件应忽略go.mod和go.sum文件,因为这样做仅考虑供应商文件。您的nimbus依赖项是否特定于云功能的项目?您的nimbus依赖项是否特定于云功能的项目?