代码之家  ›  专栏  ›  技术社区  ›  jxramos

Bazel构建文件自省

  •  0
  • jxramos  · 技术社区  · 5 年前

    有没有什么工具可以用来内省Bazel构建文件的集合,以便对使用的代码库运行查询?我想用一个简单的例子来收集代码库中使用的所有定义的标记。某种bazel元查询功能,可以让我在包含大量构建文件的repo中确定约定和使用范围。

    如果能把 cc_test py_test 对他们集体标签的规定。理想情况下,会有一个python客户机来内省bazel文件。

    0 回复  |  直到 5 年前
        1
  •  1
  •   Jin    5 年前

    bazel query 提供有关目标依赖关系图的信息,使用高度表达性的查询语言。它可以输出为各种格式,如DOT、XML、Protobuf,以及扩展的构建文件本身(如果有宏)的文本表示形式,以便进行后处理。见: Bazel query how-to Bazel query reference .

    bazel cquery query Bazel cquery reference .

    bazel aquery 与生成文件内省没有直接关系,因为它提供了有关可执行操作的信息,这是生成文件解析和分析之后的几层计算。见: Bazel aquery reference

    查询 cquery aquery 不要对生成文件的语法进行操作。如果您想使用Starlark语法/AST,请查看 buildozer buildifier 工具 bazelbuild/buildtools 储存库。

    如果使用这些机制无法检索有关生成图的信息,请在Bazel GitHub项目上提交功能请求。