我怎么知道哪个bazel方面的输出仍然相关

时间:2017-09-05 16:48:15

标签: bazel bazel-aspect

作为我们努力创建一个bazel-maven过渡互操作工具(从更细粒度的bazel罐中创建maven大小的罐子)的一部分, 我们编写了一个aspect,它运行在整个bazel仓库的bazel build上,并将重要信息写入txt个文件outputs(例如: jar文件路径编译deps目标运行时deps目标等。)

我们遇到了一个问题,即repo的代码被更改,以至于某些txt文件不再被写入了。但是之前运行的旧txt文件(在代码更改之前)仍然存在!

有没有办法知道这些txt文件不再相关?

1 个答案:

答案 0 :(得分:2)

您应该能够使用--build_event_json_file = file.json运行并尝试查找生成的工件。例如,我们在ci.bazel.io上使用它来查找生成的实际test.xml文件:https://github.com/bazelbuild/continuous-integration/blob/09975cbb487a84a62ca1e43aa43e7c6fe078f058/jenkins/lib/src/build/bazel/ci/BazelUtils.groovy#L218

协议的定义可以在build_event_stream.proto

中找到