Dist Directory
Configure the output directory for build artifacts
The dist directory is where Anodizer places all build outputs, packages, and metadata files during a release.
Config
dist: ./dist| Field | Type | Default | Description |
|---|---|---|---|
dist | string | ./dist | Output directory for all artifacts |
Behavior
- The directory is created automatically if it does not exist
- Build outputs are placed in
dist/{target}/subdirectories by default metadata.jsonandartifacts.jsonare written to the dist root- All stages write their outputs relative to this directory
Flat output
By default, binaries are organized by target triple (e.g., dist/x86_64-unknown-linux-gnu/myapp). To place all binaries in a flat directory instead:
crates:
- name: myapp
no_unique_dist_dir: true
This can also be set per-build:
crates:
- name: myapp
builds:
- targets:
- x86_64-unknown-linux-gnu
no_unique_dist_dir: trueUsing with --split / --merge
When using split/merge CI (building on multiple machines), each split job writes to its own dist directory. The merge job reads context.json files from all dist subdirectories. If you override dist, pass the same value via --dist to the merge command:
anodizer release --merge --dist ./my-custom-dist