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