use std::process::exit;
use boomack::client::json::pprint_json;
use crate::cli::{
parse_cli_args,
dispatch_command,
};
mod cli;
fn main() {
let args = parse_cli_args();
let cfg = args.build_config();
if cfg.is_verbose() {
trace!(cfg, "ARGUMENTS: {}", pprint_json(&args));
trace!(cfg, "CONFIGURATION: {}", pprint_json(&cfg));
}
let status_code = dispatch_command(&args, &cfg);
if status_code != 0 {
trace!(cfg, "Exiting with status {0}", status_code);
exit(status_code);
}
}