use anyhow::Error;
use crate::cli::http_client::MantaClient;
use manta_shared::common::app_context::AppContext;
pub async fn exec(
ctx: &AppContext<'_>,
token: &str,
image_id_vec: &[&str],
dry_run: bool,
) -> Result<(), Error> {
tracing::info!(
"Executing command to delete images: {}",
image_id_vec.join(", "),
);
let server_url = ctx.manta_server_url;
let result = MantaClient::new(server_url, ctx.site_name)?
.delete_images(token, image_id_vec, dry_run)
.await?;
if dry_run {
eprintln!("Dry-run enabled. No changes persisted into the system");
println!(
"{}",
serde_json::to_string_pretty(&result).unwrap_or_default()
);
} else {
println!("Images deleted:\n{}", image_id_vec.join(", "));
}
Ok(())
}