我目前正在尝试测量bazel build //api/...使用不同的--spawn_strategys构建我们的“api”项目所需的时间。我很难这样做,因为只要我不接触源文件,Bazel 就不会重建任何东西。
我能够通过编辑“api”项目中的所有文件来强制重建,但重复执行此操作很麻烦。
强制 Bazel 重建以便我可以测量存储库的构建时间的最佳方法是什么?
最好,我想使用类似bazel build //api/... --some_option_which_forces_rebuilding或类似的东西。
有点脏,但您可以--action_env用来更改构建环境并使所有操作无效。从文档:
环境变量被认为是操作的重要组成部分。换句话说,如果一个动作被调用的环境不同,它会产生不同的输出;特别是,如果有效环境发生变化,则不能采用先前缓存的值。
也(从这个页面):
[...] 可以使用 --action_env 标志从命令行强制执行这些环境变量的值(但此标志将使构建的每个操作无效)。
只需设置一个随机变量就足够了:
> bazel build --action_env="avariable=1" :mytarget
> bazel build --action_env="avariable=2" :mytarget
> ...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5910 次 |
| 最近记录: |