mirror of
https://github.com/kanidm/kanidm.git
synced 2025-02-24 04:57:00 +01:00
46 lines
1.2 KiB
Rust
46 lines
1.2 KiB
Rust
#![deny(warnings)]
|
|
#![warn(unused_extern_crates)]
|
|
#![deny(clippy::todo)]
|
|
#![deny(clippy::unimplemented)]
|
|
#![deny(clippy::unwrap_used)]
|
|
#![deny(clippy::expect_used)]
|
|
#![deny(clippy::panic)]
|
|
#![deny(clippy::unreachable)]
|
|
#![deny(clippy::await_holding_lock)]
|
|
#![deny(clippy::needless_pass_by_value)]
|
|
#![deny(clippy::trivially_copy_pass_by_ref)]
|
|
|
|
use clap::Parser;
|
|
use kanidm_cli::KanidmClientParser;
|
|
use tracing_subscriber::{fmt, prelude::*, EnvFilter};
|
|
|
|
#[tokio::main(flavor = "current_thread")]
|
|
async fn main() {
|
|
let opt = KanidmClientParser::parse();
|
|
|
|
let fmt_layer = fmt::layer().with_writer(std::io::stderr);
|
|
|
|
let filter_layer = if opt.commands.debug() {
|
|
match EnvFilter::try_new("kanidm=debug,kanidm_client=debug,webauthn=debug,kanidm_cli=debug")
|
|
{
|
|
Ok(f) => f,
|
|
Err(e) => {
|
|
eprintln!("ERROR! Unable to start tracing {:?}", e);
|
|
return;
|
|
}
|
|
}
|
|
} else {
|
|
match EnvFilter::try_from_default_env() {
|
|
Ok(f) => f,
|
|
Err(_) => EnvFilter::new("kanidm_client=warn,kanidm_cli=warn"),
|
|
}
|
|
};
|
|
|
|
tracing_subscriber::registry()
|
|
.with(filter_layer)
|
|
.with(fmt_layer)
|
|
.init();
|
|
|
|
opt.commands.exec().await
|
|
}
|