Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 如何将jenkins中的go模块与私有存储库一起使用?_Git_Go_Jenkins_Go Modules - Fatal编程技术网

Git 如何将jenkins中的go模块与私有存储库一起使用?

Git 如何将jenkins中的go模块与私有存储库一起使用?,git,go,jenkins,go-modules,Git,Go,Jenkins,Go Modules,我正在通过Jenkins管道构建go应用程序,首先我在vendor dir中添加所有go依赖项并推送到VCS,然后在Jenkins中构建时提取所有代码,这很好 然后我想迁移到go模块,因为我在Gitlab中有一个私有的lib依赖项,所以我修改了Jenkins服务器中的netrc文件,如本页所示:,“go build”在本地机器中运行良好,并按预期下载所有依赖项,但Jenkins服务器中存在一些问题。 这是我的文件: pipeline { agent any stages {

我正在通过Jenkins管道构建go应用程序,首先我在vendor dir中添加所有go依赖项并推送到VCS,然后在Jenkins中构建时提取所有代码,这很好

然后我想迁移到go模块,因为我在Gitlab中有一个私有的lib依赖项,所以我修改了Jenkins服务器中的netrc文件,如本页所示:,“go build”在本地机器中运行良好,并按预期下载所有依赖项,但Jenkins服务器中存在一些问题。 这是我的文件:

pipeline {
    agent any

    stages {

        stage('build') {
            agent {
                docker { image 'golang:1.12' }
            }

            steps {

                sh "export XDG_CACHE_HOME=/tmp/.cache \
                && go build"
            }
        }

    }
}
如代码所示,我使用“go build”触发go模块构建过程,但在构建时仍然出现以下错误:

go get gitlab.com/gbuda/dblib: git ls-remote -q origin in /go/pkg/mod/cache/vcs/a8fb1674af641945219afa3eee63923c22afe0df48bc030a6bf714abb7116332: exit status 128:
    fatal: could not read Username for 'https://gitlab.com': terminal prompts disabled
If this is a private repository, see https://golang.org/doc/faq#git_https for additional information.

gitlab.com/gbuda/dblib
是我的私有存储库,Jenkins服务器中的
netrc
中的配置似乎不起作用,我如何解决这个问题?谢谢您的建议。

最好的方法是将您的项目/供应商目录提交给您。 然后jenkins build将使用供应商,而不是试图从intnernet获取。 生成命令:

env GO111MODULE=off go build