1pub(crate) mod bare;
16pub(crate) mod compat;
17pub(crate) mod compat_case;
18pub(crate) mod datanode_overlay;
19pub(crate) mod kube;
20
21use std::path::PathBuf;
22
23use bare::BareCommand;
24use clap::Parser;
25use compat::CompatCommand;
26use kube::KubeCommand;
27
28#[derive(Parser)]
29#[clap(author, version, about, long_about = None)]
30pub struct Command {
31 #[clap(subcommand)]
32 pub subcmd: SubCommand,
33}
34
35#[derive(Parser)]
36pub enum SubCommand {
37 Bare(BareCommand),
38 Compat(CompatCommand),
39 Kube(KubeCommand),
40}
41
42#[derive(Debug, Parser)]
43pub struct SqlnessConfig {
44 #[clap(short, long)]
46 pub case_dir: Option<PathBuf>,
47
48 #[arg(short, long, default_value = "false")]
50 pub fail_fast: bool,
51
52 #[clap(short, long, default_value = "config.toml")]
54 pub env_config_file: String,
55
56 #[clap(short, long, default_value = ".*")]
58 pub test_filter: String,
59}