Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Examples

Six examples live in the repo’s examples/ directory, each illustrating something different.

getting-started

The smallest end-to-end pipeline: three containers in a fetch -> summarize -> publish chain. Mirrors the Getting Started walkthrough on the docs site.

Source · Emitted YAML

basic

The minimum viable shape: two #[workflow] functions, one #[container], one #[fragment]. Good for seeing the macros without surrounding detail.

Source

smoke

The “all features” fixture used by the project’s own goldens. Exercises every macro attribute (retry, timeouts, mutexes, nodeSelector, on_exit, hooks), the conditional shapes (value-if, statement-if/else-if/else), fan_out over a list, named struct-field forwarding (a.field), host! mounts, S3 artifact ports, secret!, fragments, nested calls, and steps mode.

If you want one place to see a pattern in action, this is it.

Library source · Golden YAML per feature

importing

Cross-module and cross-crate composition: this crate depends on smoke and references one of its templates from a new #[workflow] in another crate. Demonstrates that templates compose through normal Rust name resolution.

Source

e2e

A workflow that uses every feature and runs on real Argo.

Source

tracing

A two-container greet -> shout pipeline that emits tracing::info! records. The subscriber is installed once in main(), gated on cargo_athena::is_container_run() so it fires only in-pod, never on a local cargo athena emit / ls / submit. The runnable companion to the cookbook’s Set up tracing recipe.

Source