Gitlab CI-自动DevOps作业失败,无法为Go项目选择buildpack?
我的Gitlab CI Auto DevOps作业失败,原因是Gitlab CI-自动DevOps作业失败,无法为Go项目选择buildpack?,go,gitlab,gitlab-ci,Go,Gitlab,Gitlab Ci,我的Gitlab CI Auto DevOps作业失败,原因是 Status: Downloaded newer image for gliderlabs/herokuish:latest -----> Unable to select a buildpack ERROR: Job failed: exit code 1 我经历过 及 我仍然不确定我应该把构建包放在哪里 我的应该是heroku buildpack go,我不知道从哪里得到的 我的repo只包含一个字符
Status: Downloaded newer image for gliderlabs/herokuish:latest
-----> Unable to select a buildpack
ERROR: Job failed: exit code 1
我经历过
- 及
README.md
,以及“你好,游乐场”main.go
结论:
感谢David的全面解释,我能够用正确的buildpack启动DevOps:
由此我可以得出结论,目录树根目录下的单个.go文件不符合自动生成go项目的激活标准。我建议在上述需求中选择一个依赖关系管理器,并修改您的项目以支持它
FTA,我刚刚做了触摸go.mod
然后git add
和git push
,AutoDevops开始构建我的go项目
然而,在我看来,Gitlab AutoDevops无法非常轻松地构建任何GO项目,因为我遇到了以下错误(使用项目变量TRACE=true
):
更简单的解决方案是使用.gitlab ci.yml
文件,记录在(并在进行了跟踪)。来自: 自动生成通过以下两种方式之一创建应用程序的生成:
- 如果存在docker文件,它将使用docker build创建docker映像
- 否则,它将使用和自动检测应用程序并将其构建到Docker映像中
- 有一个
文件,标识应用程序由管理李>Godeps/Godeps.json
- 有一个
文件,标识应用程序由管理李>vendor/vendor.json
- 有一个
目录,该目录有子目录,包含一个或多个.go文件,将应用程序标识为由管理src
.go
文件不符合自动生成go项目的激活标准。我建议在上述需求中选择一个依赖关系管理器,并修改您的项目以支持它。之后,AutoDevops应该开始构建您的项目
如果在此之后您仍有问题,这可能会有所帮助:
确保项目符合buildpack要求后;
如果仍然失败,设置项目变量TRACE=true
将启用详细日志记录,这将 可能有助于继续进行故障排除
...
!! The go.mod file for this project does not specify a Go version
!!
!! Defaulting to go1.11.1
!!
!! For more details see: https://devcenter.heroku.com/articles/go-apps-with-modules#build-configuration
!!
-----> Installing go1.11.1
-----> Fetching go1.11.1.linux-amd64.tar.gz... done
!! Installing package '.' (default)
!!
!! To install a different package spec add a comment in the following form to your `go.mod` file:
!! // +heroku install ./cmd/...
!!
!! For more details see: https://devcenter.heroku.com/articles/go-apps-with-modules#build-configuration
!!
-----> Running: go install -v -tags heroku .
go: cannot determine module path for source directory /tmp/build (outside GOPATH, no import comments)
ERROR: Job failed: exit code 1