1
0
Fork 0
mirror of https://github.com/containers/youki synced 2024-05-23 07:56:07 +02:00
youki/crates/libcgroups/src/systemd/dbus_native/client.rs
Yashodhan Joshi 3fe7d04ae4 Fix task addition to properly add tasks via dbus api
Signed-off-by: Yashodhan Joshi <yjdoc2@gmail.com>
2024-04-27 15:14:45 +05:30

37 lines
958 B
Rust

use super::{serialize::Variant, utils::SystemdClientError};
use std::collections::HashMap;
use std::path::PathBuf;
pub trait SystemdClient {
fn is_system(&self) -> bool;
fn transient_unit_exists(&self, unit_name: &str) -> bool;
fn start_transient_unit(
&self,
container_name: &str,
pid: u32,
parent: &str,
unit_name: &str,
) -> Result<(), SystemdClientError>;
fn stop_transient_unit(&self, unit_name: &str) -> Result<(), SystemdClientError>;
fn set_unit_properties(
&self,
unit_name: &str,
properties: &HashMap<&str, Variant>,
) -> Result<(), SystemdClientError>;
fn systemd_version(&self) -> Result<u32, SystemdClientError>;
fn control_cgroup_root(&self) -> Result<PathBuf, SystemdClientError>;
fn add_process_to_unit(
&self,
unit_name: &str,
subcgroup: &str,
pid: u32,
) -> Result<(), SystemdClientError>;
}