use anyhow::Result;
use tracing::info;
use s3util_rs::config::ClientConfig;
use s3util_rs::config::args::delete_bucket_lifecycle_configuration::DeleteBucketLifecycleConfigurationArgs;
use s3util_rs::storage::s3::api;
pub async fn run_delete_bucket_lifecycle_configuration(
args: DeleteBucketLifecycleConfigurationArgs,
client_config: ClientConfig,
) -> Result<()> {
let bucket = args
.bucket_name()
.map_err(|e| anyhow::anyhow!("{}", e.trim_end()))?;
let client = client_config.create_client().await;
if args.dry_run {
info!(bucket = %bucket, "[dry-run] would delete bucket lifecycle configuration.");
return Ok(());
}
api::delete_bucket_lifecycle_configuration(&client, &bucket).await?;
info!(bucket = %bucket, "Bucket lifecycle configuration deleted.");
Ok(())
}