1use clap::{Parser, Subcommand};
4use std::path::PathBuf;
5use anyhow::Result;
6
7
8#[derive(Parser)]
9#[command(name = "holger")]
10#[command(about = "Holger: Guards your artifacts at rest.", long_about = None)]
11struct Cli {
12 #[command(subcommand)]
13 command: Commands,
14}
15
16#[derive(Subcommand)]
17enum Commands {
18 Start {
20 #[arg(short, long)]
21 config: PathBuf,
22
23 #[arg(short, long)]
24 cert: PathBuf,
25
26 #[arg(short, long)]
27 key: PathBuf,
28
29 },
30
31}
32
33pub fn run() -> Result<()> {
34 env_logger::init();
35 let cli = Cli::parse();
36
37 match cli.command {
38 Commands::Start { config, cert, key } => {
39 !todo!()
40 }
41 }
42
43 Ok(())
44}