greentic_dev/
cbor_cmd.rs

1use std::fs;
2
3use anyhow::{Context, Result};
4
5use crate::cli::CborArgs;
6
7pub fn run(args: CborArgs) -> Result<()> {
8    let data = fs::read(&args.path)
9        .with_context(|| format!("failed to read CBOR file {}", args.path.display()))?;
10    let value: serde_cbor::Value =
11        serde_cbor::from_slice(&data).context("failed to decode CBOR payload")?;
12    let rendered = serde_json::to_string_pretty(&value).context("failed to render CBOR as JSON")?;
13    println!("{rendered}");
14    Ok(())
15}