create_grafana_plugin/
cli.rs1use clap::Parser;
2
3#[derive(Parser, Debug)]
5#[command(name = "create-grafana-plugin", version, about)]
6pub struct Args {
7 #[arg(long)]
9 pub name: Option<String>,
10
11 #[arg(long)]
13 pub description: Option<String>,
14
15 #[arg(long)]
17 pub author: Option<String>,
18
19 #[arg(long)]
21 pub org: Option<String>,
22
23 #[arg(long, value_name = "TYPE")]
25 pub r#type: Option<String>,
26
27 #[arg(long)]
29 pub wasm: bool,
30
31 #[arg(long)]
33 pub docker: bool,
34
35 #[arg(long)]
37 pub mock: bool,
38
39 #[arg(long)]
41 pub port_offset: Option<u16>,
42
43 #[arg(long, value_name = "FILE")]
45 pub config: Option<String>,
46
47 #[command(subcommand)]
48 pub command: Option<Command>,
49}
50
51#[derive(clap::Subcommand, Debug)]
53pub enum Command {
54 Update {
56 #[arg(long)]
58 dry_run: bool,
59 },
60}
61
62pub fn parse() -> Args {
64 Args::parse()
65}