12 个版本 (5 个破坏性版本)
| 0.5.0 | 2023 年 8 月 10 日 |
|---|---|
| 0.4.2 | 2023 年 6 月 5 日 |
| 0.4.1 | 2023 年 4 月 21 日 |
| 0.3.2 | 2023 年 2 月 15 日 |
| 0.0.1 | 2022 年 6 月 25 日 |
#2 in #reloading
每月 51 次下载
360KB
2K SLoC
Whiz
Whiz (/wɪz/) 是一个适用于多平台单仓的现代化 DAG/任务运行器。它提供了一个方便的实时重新加载、环境管理、管道等功能,并支持标签页视图。
Whiz 是 Metatype 生态系统的一部分。可以考虑查看该组件如何与整个生态系统集成,并浏览 文档 以查看更多示例。
入门
您可以从 GitHub 上的 发布页面 下载二进制可执行文件,将其设置为可执行并添加到您的 $PATH 中,或者使用以下方法自动化这些步骤。
curl -fsSL https://raw.githubusercontent.com/zifeo/whiz/main/installer.sh | bash
# via cargo
cargo install whiz --locked
cargo install --git https://github.com/zifeo/whiz --locked
# create your tasks file, see https://github.com/zifeo/whiz/blob/main/whiz.yaml for an example
touch whiz.yaml
# run
whiz
# upgrade
whiz upgrade
用法
配置文件
所有任务的环境界限可以在根目录的 env 节中定义。当加载秘密时,可以使用 Lade 加载器(例如 infisical://DOMAIN/PROJECT_NAME/ENV_NAME/SECRET_NAME)。
env:
[key]: [value]
所有其他根级别键都被视为任务。每次加载依赖项时,依赖的任务也会重新加载。
[task]:
workdir: [working directory, by default .]
command: [command]
watch: [file or list of files]
env:
[key]: [value]
env_file: [file or list of env files]
depends_on: [task or list of task names for dependencies]
pipes: # see https://github.com/zifeo/whiz/blob/main/whiz.yaml
[regex]: [destination]
请参阅此 文件 以获取完整示例。
CLI 选项
请参阅 whiz --help 以获取更多信息。
| 标志 | 描述 |
|---|---|
| -f, --file <FILE> | 指定配置文件 |
| -h, --help | 打印帮助信息 |
| --list-jobs | 列出所有可用的作业 |
| -r, --run <JOB> | 运行特定作业 |
| -t, --timestamp | 在日志中启用时间戳 |
| -v, --verbose | 启用详细模式 |
| -V, --version | 打印 whiz 版本 |
快捷键绑定
| 按键 | 操作 |
|---|---|
| l, 右箭头 | 转到下一个标签 |
| h, 左箭头 | 转到上一个标签 |
| k, Ctrl + p | 向上滚动一行 |
| j, Ctrl + n | 向下滚动一行 |
| Ctrl + u | 向上滚动半页 |
| Ctrl + d | 向下滚动半页 |
| Ctrl + b | 向上滚动整页 |
| Ctrl + f | 向下滚动整页 |
| 0 | 转到最后一个标签 |
| 1-9 | 转到指定位置的标签 |
| q, Ctrl + c | 退出程序 |
| r | 在当前标签中重新运行作业 |
开发
cargo run --
依赖项
~34–53MB
~1M SLoC