#![deny(warnings)] use clap::Parser; use reqwest::blocking::multipart; /// Search for a pattern in a file and display the lines that contain it. #[derive(Parser)] #[command(name = "crunk-update")] #[command(author = "Crunk")] #[command(version = "1.0")] #[command(about = "post updates to crunk-schedulers", long_about = None)] struct Cli { #[arg(short, long)] url: String, #[arg(short, long, group = "input")] text: Option, #[arg(short, long, group = "input")] file: Option, } #[cfg(not(target_arch = "wasm32"))] fn main() -> Result<(), Box> { let args = Cli::parse(); let url = args.url.as_str(); let text = args.text; if text.is_some() { let client = reqwest::blocking::Client::new(); let res = client.post(url).form(&[("text", text)]).send()?; println!("{:?}", res); } if args.file.is_some() { let file_name = args.file.as_deref().unwrap_or_default(); let client = reqwest::blocking::Client::new(); let form = multipart::Form::new().file("file", &file_name)?; let res = client.post(url).multipart(form).send()?; println!("{:?}", res) } Ok(()) }