relay-cli 0.1.2

CLI interface for Relay Agents.
mod args;
mod cmd;
mod parsers;
mod progress;
mod qrcode;
mod records;
mod sign;
mod storage;
mod style;
mod transport;

fn try_main() -> anyhow::Result<()> {
    let args = args::parse();
    let mut storage = storage::Storage::init()?;

    if let Err(e) = args.cmd.clone().execute(args, &mut storage) {
        println!("{:?}", e);
        return Ok(());
    }

    storage.save()?;
    Ok(())
}

fn main() {
    if let Err(err) = try_main() {
        eprintln!("Error: {:?}", err);
        std::process::exit(1);
    }
}