From 0e519f6b772153e3cb416fc045e20a4e86d1ac10 Mon Sep 17 00:00:00 2001 From: JesterHodl Date: Tue, 3 Jan 2023 14:51:44 +0100 Subject: [PATCH] feat: add --help and --version flags fixes: https://github.com/scsibug/nostr-rs-relay/issues/42 --- src/main.rs | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/main.rs b/src/main.rs index 66f4382..97cc5f7 100644 --- a/src/main.rs +++ b/src/main.rs @@ -18,6 +18,18 @@ fn db_from_args(args: &[String]) -> Option { None } +fn print_version() { + println!("{} v{}", env!("CARGO_PKG_NAME"), env!("CARGO_PKG_VERSION")); +} + +fn print_help() { + println!("Usage: nostr-rs-relay [OPTION]...\n"); + println!("Options:"); + println!(" --help Show this help message and exit"); + println!(" --version Show version information and exit"); + println!(" --db Use the as the location of the database"); +} + /// Start running a Nostr relay server. fn main() { // setup tracing @@ -25,6 +37,21 @@ fn main() { info!("Starting up from main"); // get database directory from args let args: Vec = env::args().collect(); + + let help_flag: bool = args.contains(&"--help".to_owned()); + // if --help flag was passed, display help and exit + if help_flag { + print_help(); + return; + } + + let version_flag: bool = args.contains(&"--version".to_owned()); + // if --version flag was passed, display version and exit + if version_flag { + print_version(); + return; + } + let db_dir: Option = db_from_args(&args); // configure settings from config.toml // replace default settings with those read from config.toml