我有一个使用bazel管理的go项目。我想从私有仓库添加外部依赖。我可以使用go_repository
结构从公共仓库添加包:
go_repository(
name = "com_github_pkg_errors",
commit = "816c9085562cd7ee03e7f8188a1cfd942858cded",
importpath = "github.com/pkg/errors",
)
但是如果对私有仓库使用同样的东西,模块获取会失败
Error in download_and_extract: java.io.IOException: Error downloading [https://github.com/<my-private-repo>/<my-package>/archive/refs/tags/v1.0.0.zip] to /private/var/tmp/_bazel_Mahima.Gupta/34cbf2084d2922d4b41317a7d830e0a8/external/<target-name>/temp8433105752417763970/v1.0.0.zip: GET returned 404 Not Found
有没有一种方法可以从一些私有的repo中获取模块?
1条答案
按热度按时间pbossiut1#
要设置Bazel配置选项,请创建一个.bazelrc文件。
在.bazelrc文件中添加您的私有存储库凭据,您可以指定访问私有存储库所需的凭据。
为你的私有包指定go_repository,使用go_repository结构,就像你对公共包所做的那样,但是这次是为你的私有仓库。确保提供私有存储库的完整URL,包括身份验证令牌(如果需要)。
更新你的BUILD文件,你现在可以使用你在go_repository结构中定义的名字来指定你的私有包的依赖项。确保可见性是公开的。
visibility = ["//visibility:public"]