diff options
Diffstat (limited to 'makima/src/daemon/cli/directive.rs')
| -rw-r--r-- | makima/src/daemon/cli/directive.rs | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/makima/src/daemon/cli/directive.rs b/makima/src/daemon/cli/directive.rs new file mode 100644 index 0000000..5ce88c5 --- /dev/null +++ b/makima/src/daemon/cli/directive.rs @@ -0,0 +1,40 @@ +//! Directive subcommand - directive orchestration commands. + +use clap::Args; +use uuid::Uuid; + +/// Common arguments for directive commands. +#[derive(Args, Debug, Clone)] +pub struct DirectiveArgs { + /// API URL + #[arg(long, env = "MAKIMA_API_URL", default_value = "https://api.makima.jp", global = true)] + pub api_url: String, + + /// API key for authentication + #[arg(long, env = "MAKIMA_API_KEY", global = true)] + pub api_key: String, + + /// Directive ID + #[arg(long, env = "MAKIMA_DIRECTIVE_ID", global = true)] + pub directive_id: Uuid, +} + +/// Arguments for chain command (get specific chain). +#[derive(Args, Debug)] +pub struct ChainArgs { + #[command(flatten)] + pub common: DirectiveArgs, + + /// Chain ID to retrieve + pub chain_id: Uuid, +} + +/// Arguments for update-status command. +#[derive(Args, Debug)] +pub struct UpdateStatusArgs { + #[command(flatten)] + pub common: DirectiveArgs, + + /// New status (draft, planning, active, paused, completed, archived, failed) + pub status: String, +} |
