#![recursion_limit = "256"]
#[macro_use]
extern crate log;
use clap::Parser;
use microservices::error::BootstrapError;
use rgb_node::bucketd::Opts;
use rgb_node::{bucketd, Config, LaunchError};
fn main() -> Result<(), BootstrapError<LaunchError>> {
println!("bucketd: RGB bucket microservice");
let mut opts = Opts::parse();
trace!("Command-line arguments: {:?}", opts);
opts.process();
trace!("Processed arguments: {:?}", opts);
let config = Config::from(opts);
trace!("Daemon configuration: {:?}", config);
debug!("CTL socket {}", config.ctl_endpoint);
debug!("RPC socket {}", config.rpc_endpoint);
debug!("STORE socket {}", config.store_endpoint);
debug!("STORM socket {}", config.storm_endpoint);
debug!("Starting runtime ...");
bucketd::run(config).expect("running bucketd runtime");
unreachable!()
}