agama/rust/xtask
Martin Vidner c7659a8026 cargo xtask markdown: advertise itself in the output
so that fellow developers know the tool even exists
2025-04-16 14:49:57 +02:00
..
src cargo xtask markdown: advertise itself in the output 2025-04-16 14:49:57 +02:00
Cargo.toml feat(rust): add a xtask to generate the OpenAPI spec 2024-10-18 16:36:15 +01:00
README.md docs(rust): add the "openapi" task to the xtasks docs 2024-11-11 15:27:18 +00:00

Agama project tasks

This package implements a set of project tasks following the xtask pattern. This pattern allows writing the typical maintenance tasks using Rust code.

Defined tasks

  • completions: generates shell completion snippets for Bash, Fish and Zsh.
  • manpages: generates manpages for the command-line interface.
  • markdown: generates a manual page for the command-line interface in Markdown format. Useful to be included in our website.
  • openapi: generates the OpenAPI specification for the HTTP API.

Running a task

To run a task, just type cargo xtask TASK where TASK is the name of the task (check the Defined tasks section).

cargo xtask manpages

Most of the artifacts are generated in an out directory. You can modify the target by setting the OUT_DIR environment variable.

Writing a new task

Tasks are defined using regular Rust code. Check the main.rs file for further information.