auths_cli/commands/commit/
mod.rs1use anyhow::Result;
2use clap::{Args, Subcommand};
3
4use crate::commands::executable::ExecutableCommand;
5use crate::commands::sign::SignCommand;
6use crate::commands::verify_commit::VerifyCommitCommand;
7use crate::config::CliConfig;
8
9#[derive(Args, Debug, Clone)]
10#[command(about = "Low-level commit signing and verification")]
11pub struct CommitCmd {
12 #[command(subcommand)]
13 pub command: CommitSubcommand,
14}
15
16#[derive(Subcommand, Debug, Clone)]
17pub enum CommitSubcommand {
18 Sign(SignCommand),
19 Verify(VerifyCommitCommand),
20}
21
22impl ExecutableCommand for CommitCmd {
23 fn execute(&self, ctx: &CliConfig) -> Result<()> {
24 match &self.command {
25 CommitSubcommand::Sign(cmd) => cmd.execute(ctx),
26 CommitSubcommand::Verify(cmd) => cmd.execute(ctx),
27 }
28 }
29}