我有一个Go项目,我想在项目中编写一个Gitlab CI文件,但是看到加载模块的错误。这是我的gitlab CI文件:
stages:
- compile
build:
stage: compile
image: golang:1.12
script:
- go build -o binary
error :
Running with gitlab-runner 11.8.0 (4745a6f3)
on Runner #6 e0e0c446
Using Docker executor with image golang:1.12 ...
Pulling docker image golang:1.12 ...
Using docker image sha256:be63d15101cb68aea1841b45201b08a1a486c1a60a029bbf0ddb284ab646b0b7 for golang:1.12 ...
Running on runner-e0e0c446-project-753-concurrent-0 via runner-01.tool.afra.snapp.infra...
Cloning repository...
Cloning into '/builds/Alsopa/echo-training'...
Checking out ab3994cc as develop...
Skipping Git submodules setup
$ go build -o binary
go: finding github.com/labstack/gommon v0.2.9
go: finding github.com/labstack/echo v3.3.10+incompatible
go: finding github.com/go-sql-driver/mysql v1.4.1
go: google.golang.org/appengine@v1.6.1: unrecognized import path "google.golang.org/appengine" (parse https://google.golang.org/appengine?go-get=1: no go-import meta tags ())
go: error loading module requirements
ERROR: Job failed: exit code 1
答案 0 :(得分:0)
请确保您上传了最后一个go.sum文件。在上传到master以执行ci之前,运行go get
,然后上传到master并运行ci。
答案 1 :(得分:0)
主要错误似乎是:
ColorText
我会尝试在您的CI环境中运行go: google.golang.org/appengine@v1.6.1: unrecognized import path
"google.golang.org/appengine" (parse
https://google.golang.org/appengine?go-get=1: no go-import meta tags ())
和go get -v google.golang.org/appengine
来查看它们显示的内容。
这是我为curl -v https://google.golang.org/appengine?go-get=1
所获得的:
go get -v google.golang.org/appengine
也许您有一些网络连接,防火墙或HTTP代理问题。
答案 2 :(得分:0)
您应在编译之前下载模块。假设您的项目已经有go模块文件go.mod
和go.sum
尝试以此方式更新.gitlab-ci.yml
build:
stage: compile
image: golang:1.13
script:
- go get -d -v
- go build -o binary