podman_client/pods/
remove.rs

1use http_body_util::Empty;
2use hyper::body::Bytes;
3
4use crate::{
5    client::Client,
6    models::{
7        connection::SendRequestOptions,
8        lib::Error,
9        podman::pods::remove::{PodRemove, PodRemoveOptions},
10    },
11    utils::bool_to_str::bool_to_str,
12};
13
14impl Client {
15    pub async fn pod_remove(&self, options: PodRemoveOptions<'_>) -> Result<PodRemove, Error> {
16        let mut path = ["/libpod/pods/", options.name].concat();
17
18        if let Some(force) = options.force {
19            path += &["?force=", bool_to_str(force)].concat();
20        }
21
22        let (_, data) = self
23            .send_request::<_, (), _>(SendRequestOptions {
24                method: "DELETE",
25                path: &path,
26                header: None,
27                body: Empty::<Bytes>::new(),
28            })
29            .await?;
30
31        Ok(data)
32    }
33}