如果你懒惰的话,快速添加新的Bazel github外部存储库?

时间:2017-11-23 08:49:02

标签: go bazel

我正在使用Bazel和gazelle管理我的Go项目的BUILD.bazel文件。

我希望能够跨语言保持一致并避免使用Go的特定销售工具。

我为瞪羚禁用了售卖服务。它为这些存储库精彩地生成了BUILD条目,但我仍然坚持为.ToString("dd/MM/yyyy (dddd)")git_repository编写WORKSPACE咒语。如果我正在使用的项目有很多外部依赖项,这当然会变得乏味。

有更方便的方法吗?瞪羚可以支持更新WORKSPACE文件吗?

感谢。

1 个答案:

答案 0 :(得分:2)

回答我自己的问题:看起来Bazel团队想要为Gazelle添加对此的支持,但在此之前我们可以使用wtool:

$ go get -u github.com/bazelbuild/rules_go/go/tools/wtool
$ github.com/gordonklaus/portaudio

This will update the WORKSPACE file accordingly. The command doesn't even have to be run from the repository root - which is nice.

运行上面的命令后,这是我的WORKSPACE的差异:

$ git diff WORKSPACE 
diff --git a/WORKSPACE b/WORKSPACE
index 3b15779..c170b60 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -50,3 +50,8 @@ go_repository(
     importpath = "google.golang.org/api",
 )

+go_repository(
+    name = "com_github_gordonklaus_portaudio",
+    commit = "e66c30a9c4ca11f93538cf8c004831bfb76f3838",
+    importpath = "github.com/gordonklaus/portaudio",
+)