No description
- Rust 99.5%
- Shell 0.3%
- JavaScript 0.2%
|
|
||
|---|---|---|
| .githooks | ||
| apps/haz-cli | ||
| docs/spec | ||
| libs | ||
| packages/npm | ||
| scripts | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| deny.toml | ||
| LICENSE.md | ||
| README.md | ||
haz
A workspace task runner. Tracks task DAGs across multiple projects, executes them with caching, and supports queries over the graph.
Status: alpha, pre-1.0.
The specification under docs/spec/ is labelled as DRAFT;
behaviour can change between minor versions until 1.0.
Install
From crates.io:
cargo install haz-cli
From npm:
npm install -g @ctrlback/haz
The installed binary is named haz. Prebuilt npm binaries are currently
published for Linux x64 (glibc and musl); on other platforms, install from
crates.io or from source.
From source:
git clone https://forge.cloudsling.dev/andreu/haz-cli
cd haz-cli
cargo build --release
Documentation
The normative specification lives in docs/spec/.
Workspace layout
This repository is a Cargo workspace:
| Crate | Purpose |
|---|---|
haz-cli |
The haz binary. |
haz-cache |
Content-addressed cache for task outputs. |
haz-config |
YAML parser for workspace, project, and task files. |
haz-dag |
DAG construction and traversal. |
haz-discovery |
Workspace and project discovery. |
haz-domain |
Shared domain types. |
haz-exec |
Async task execution engine. |
haz-query |
Query evaluator. |
haz-query-lang |
Query language parser. |
haz-target |
Target selection. |
haz-vcs |
Git helpers. |
haz-vfs |
Filesystem abstraction. |
License
AGPL-3.0-or-later. Full text in LICENSE.md.