microsandbox_cli/args/
msbserver.rs

1use std::path::PathBuf;
2
3use clap::Parser;
4use microsandbox_utils::DEFAULT_SERVER_PORT;
5
6use crate::styles;
7
8//--------------------------------------------------------------------------------------------------
9// Types
10//--------------------------------------------------------------------------------------------------
11
12/// Arguments for the msbserver command
13#[derive(Debug, Parser)]
14#[command(name = "msbserver", author, styles=styles::styles())]
15pub struct MsbserverArgs {
16    /// Secret key used for JWT token generation and validation
17    #[arg(short = 'k', long = "key")]
18    pub key: Option<String>,
19
20    /// Port number to listen on
21    #[arg(long, default_value_t = DEFAULT_SERVER_PORT)]
22    pub port: u16,
23
24    /// Directory for storing namespaces
25    #[arg(short = 'p', long = "path")]
26    pub namespace_dir: Option<PathBuf>,
27
28    /// Run in development mode
29    #[arg(long = "dev", default_value_t = false)]
30    pub dev_mode: bool,
31}