【发布时间】:2020-02-02 12:47:17
【问题描述】:
我有以下设置,我正在尝试创建一个多功能 GCP Cloud Function 项目,但由于“通用”错误,我无法部署任何功能,这根本不是很有帮助。
我的项目结构是这样的,为了简单起见,我只写了function1,但是还有function2等等。
使用云函数go 1.13 支持和go mod 支持
项目结构:
.
├── go.mod
├── function1
│ └── function1.go
├── common
│ └── common.go // Contains struct GCSEvent see https://cloud.google.com/functions/docs/calling/storage#functions-calling-storage-go
└── main.go
代码sn-ps:
// go.mod
module github.com/me/myproject
go 1.13
// function1/function1.go
package function1
import (
"github.com/me/myproject/common"
// Other imports
)
func Function1(ctx context.Context, gcsEvent common.GCSEvent) error {
// Do Stuff
}
// common/common.go
package common
// See https://cloud.google.com/functions/docs/calling/storage#functions-calling-storage-go
type GCSEvent struct {
// ...
}
// main.go
package main
import (
"github.com/me/myproject/function1"
"github.com/me/myproject/common"
"context"
// Other imports
)
func main() {
// Call Function1 from the command line for manual testing
event := common.GCSEvent{/*...*/}
function1.Function1(context.Background(), event)
}
function1.go 使用 GCP 应该能够解析的 go 模块导入语法引用 common.go。
从项目的根目录部署我调用gcloud的函数:
gcloud functions deploy Function1 --runtime=go113 <more arguments...>
我收到的错误是
错误:(gcloud.functions.deploy)操作错误:代码=3,消息=构建 失败:构建错误详细信息不可用
我提到的一点用处都没有。
【问题讨论】:
-
这可能会有所帮助medium.com/@rizwaniqbal/…
标签: go google-cloud-platform google-cloud-functions