Skip to main content

ContainerConfig

Struct ContainerConfig 

Source
pub struct ContainerConfig {
Show 20 fields pub docker_name: Option<String>, pub docker_user: Option<String>, pub docker_context: Option<String>, pub docker_runtime: Option<String>, pub podman_name: Option<String>, pub podman_user: Option<String>, pub podman_runtime: Option<String>, pub nerdctl_name: Option<String>, pub nerdctl_user: Option<String>, pub nerdctl_runtime: Option<String>, pub compose_service: Option<String>, pub compose_user: Option<String>, pub compose_files: Vec<String>, pub compose_project: Option<String>, pub compose_runtime: Option<String>, pub kubectl_pod: Option<String>, pub kubectl_container: Option<String>, pub kubectl_namespace: Option<String>, pub kubectl_context: Option<String>, pub kubectl_runtime: Option<String>,
}
Expand description

One flag family per driver, one field per (driver, option) pair.

Which options a driver supports is expressed by the field names themselves: there is no kubectl_user because kubectl exec has no exec-as-user option, and no podman_context because Podman has no context selection. The only combination left to check is that a caller stayed inside one family.

Fields§

§docker_name: Option<String>§docker_user: Option<String>§docker_context: Option<String>§docker_runtime: Option<String>§podman_name: Option<String>§podman_user: Option<String>§podman_runtime: Option<String>§nerdctl_name: Option<String>§nerdctl_user: Option<String>§nerdctl_runtime: Option<String>§compose_service: Option<String>§compose_user: Option<String>§compose_files: Vec<String>§compose_project: Option<String>§compose_runtime: Option<String>§kubectl_pod: Option<String>§kubectl_container: Option<String>§kubectl_namespace: Option<String>§kubectl_context: Option<String>§kubectl_runtime: Option<String>

Implementations§

Source§

impl ContainerConfig

Source

pub fn has_transport_fields(&self) -> bool

Source

pub fn selected_driver(&self) -> Result<Option<ContainerDriver>, String>

Which driver family the caller used, or None for no container transport at all.

Two families at once is the one combination this surface still has to reject, and the error names both offending flags.

Source

pub fn target_name(&self) -> Option<&str>

The container, service, or pod this session execs into, whichever family named it.

Source

pub fn runtime_override(&self) -> Option<&str>

The runtime command override, whichever family named it.

Trait Implementations§

Source§

impl Clone for ContainerConfig

Source§

fn clone(&self) -> ContainerConfig

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ContainerConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for ContainerConfig

Source§

fn default() -> ContainerConfig

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for ContainerConfig

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for ContainerConfig

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.