#![deny(unused_must_use)]
#![allow(clippy::style)]
#![deny(clippy::dbg_macro)]
mod backend;
#[cfg(any(target_arch = "x86_64", target_arch = "powerpc64"))]
mod bios;
mod blockdev;
mod bootupd;
mod cli;
mod component;
mod coreos;
#[cfg(any(
target_arch = "x86_64",
target_arch = "aarch64",
target_arch = "riscv64"
))]
mod efi;
mod failpoints;
mod filesystem;
mod filetree;
mod freezethaw;
#[cfg(any(
target_arch = "x86_64",
target_arch = "aarch64",
target_arch = "powerpc64",
target_arch = "riscv64"
))]
mod grubconfigs;
mod model;
mod model_legacy;
mod ostreeutil;
mod packagesystem;
mod sha512string;
mod util;
use clap::crate_name;
fn main() {
let _scenario = fail::FailScenario::setup();
let exit_code = run_cli();
std::process::exit(exit_code);
}
fn run_cli() -> i32 {
let args: Vec<_> = std::env::args().collect();
let cli_opts = cli::MultiCall::from_args(args);
env_logger::Builder::from_default_env()
.format_timestamp(None)
.format_module_path(false)
.filter(Some(crate_name!()), cli_opts.loglevel())
.init();
log::trace!("executing cli");
match cli_opts.run() {
Ok(_) => libc::EXIT_SUCCESS,
Err(e) => {
eprintln!("error: {:#}", e);
libc::EXIT_FAILURE
}
}
}