16 个不稳定版本 (3 个破坏性更新)
| 0.12.4 | 2020年12月28日 |
|---|---|
| 0.12.3 | 2020年12月9日 |
| 0.11.0 | 2020年11月26日 |
| 0.10.0 | 2020年11月25日 |
| 0.0.7 | 2019年10月20日 |
#349 in 构建工具
每月下载量 46 次
32KB
670 代码行
buildy - 为本地迭代提供超快并行构建系统
警告:buildy 还未准备好使用
buildy 非常简单且可配置。它通过监视文件系统并在必要时重建来促进开发。
buildy 的核心在其配置文件中。只需将一个名为 .buildy.yml 的文件添加到项目的根目录。
此配置文件会告诉 buildy 应该做什么。
.buildy.yml 规范
server_deps:
watch:
- server/package.json
- server/yarn.lock
build:
- cd server && yarn install
server:
depends_on:
- server_deps
watch:
- server/src
run:
- cd server && node src/server.js
配置文件由 target 组成,这是一个构建实体。每个 target 可以定义其依赖项、要 watch 的文件、构建时要执行的命令以及构建完成后要执行的命令。
target 将尽可能地并行运行,直到它们的依赖项构建完成才会开始。
在 target 下的 build 列表中的命令将在一个 shell 工作目录中按顺序执行,该目录包含 .buildy.yml。
如果没有任何 watch 路径存在,或者自上次构建以来 watch 路径中的任何内容已更改,则将重新构建 target。
buildy 在名为 .buildy 的目录中维护一个校验和列表,该目录位于 .buildy.yml 旁边。此目录应在版本控制中忽略。
一旦构建了 target,它将被运行。在 run 中的命令将依次执行。它们可以在后台继续运行,这对于运行如 Web 服务器之类的程序很有用。
即使所有内容都已构建,buildy 也会在后台监视 watch 目录中的所有路径的新更改。当检测到任何更改时,那些 target 将被重建。子 target(那些依赖于重建的 target 的)只有在它们的 watch 文件也更改的情况下才会重新运行。
每次重建 target 时,它的 run 命令也会重新运行,终止可能仍在运行的任何命令。
用法
使用 cargo install buildy 安装。
然后,只需在包含 .buildy.yml 的目录中运行 buildy 即可。
已知问题
- 当
watch路径更改时应该重新启动的run命令需要使用exec,否则它们将无法正确终止。 - 没有单元测试
- 如果构建失败,则不应保存校验和 - 以便重新运行。
依赖关系
~6–15MB
~163K SLoC