feat: Improve admin command reference generation

- Change xtasks to use `clap` for argument parsing
- Generate admin command reference manually instead of with `clap_markdown`
- Split admin command reference into multiple files
This commit is contained in:
Ginger
2026-01-09 17:05:34 -05:00
parent 60dd6baffd
commit 89be9d1efc
31 changed files with 1297 additions and 5822 deletions
+26
View File
@@ -0,0 +1,26 @@
mod tasks;
use clap::Parser;
use crate::tasks::Task;
#[derive(clap::Parser)]
struct BaseArgs {
#[command(subcommand)]
task: Task,
#[command(flatten)]
args: Args,
}
#[derive(clap::Args)]
struct Args {
/// Simulate without actually touching the filesystem
#[arg(long)]
dry_run: bool,
}
fn main() -> impl std::process::Termination {
let BaseArgs { task, args } = BaseArgs::parse();
task.invoke(args)
}