作者:红红的累累vdHRC_958 | 来源:互联网 | 2023-01-15 18:06
我希望运行bazel build :...all
命令并跳过test
规则和目标。这可能吗?
我可以想到两种区分测试的方法,要么按测试类型(在我的情况下为cc_test),要么按名称的模式匹配,因为我正在从事的项目在所有测试规则/目标后缀“ _test”。
请不要发表评论,告诉我我应该始终在编译时构建和运行测试,除非Bazel实际上使从技术上讲不可能使用“所有”通配符并过滤掉所有测试。我们有一个分层的系统,其中所有构建和测试都一起运行,然后在成功之后,另一个系统仅构建最少的工件。
1> hlopko..:
有bazel查询。它非常强大,因此我建议您通读文档页面以精确设计查询命令。为了快速回答您的具体问题,我认为这对您有用:
bazel query '//... except kind(.*test, //...)' | xargs bazel build