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}