~ knotless Search/
↑↓ move↵ open⇧↵ all results

johnandersen777.bsky.social/knotless

git that lives in your Atmosphere account

Forked from chadtmiller.com/knotless

0
0
30 lines · 1.2 KB Raw History
fn main() {
    let args: Vec<String> = std::env::args().collect();
    let opts = match knotless_run::parse_args(&args) {
        Ok(opts) => opts,
        Err(usage) => {
            eprintln!("{usage}");
            std::process::exit(2);
        }
    };
    // KNOTLESS_COMMIT is the commit the image was built from, set as it
    // runs (Dockerfile), so the binary is the same at every commit.
    let (version, commit) = (
        env!("CARGO_PKG_VERSION"),
        std::env::var("KNOTLESS_COMMIT").ok(),
    );
    knotless::telemetry::init("knotless-run", version, commit.as_deref());
    let mut env = knotless::env::Env::from_process();
    env.signer = knotless::env::Signer::Runner;
    let ctx = knotless::env::Ctx::new(env);
    let runtime = tokio::runtime::Runtime::new().expect("a runtime builds");
    if let Err(err) = runtime.block_on(knotless_run::run(opts, ctx)) {
        let f = knotless::telemetry::Fields {
            error: Some(format!("{err:#}")),
            ..Default::default()
        };
        knotless::telemetry::note(knotless::telemetry::Level::ERROR, "knotless-run failed", &f);
        eprintln!("knotless-run: {err:#}");
        std::process::exit(1);
    }
}