pub struct Driver {
pub cfg: ClusterConfig,
pub profile_name: String,
pub port_in_use: Box<dyn Fn(&str) -> bool>,
/* private fields */
}Expand description
Port of k3d.Driver.
Fields§
§cfg: ClusterConfig§profile_name: String§port_in_use: Box<dyn Fn(&str) -> bool>Port of Driver.portInUse: the seam tests substitute with a fake
probe so unit tests never touch the network. Boxed rather than a
bare fn pointer because tests need to capture state (e.g. record
every address probed).
Implementations§
Source§impl Driver
impl Driver
Sourcepub fn new(cfg: ClusterConfig, profile_name: String) -> Self
pub fn new(cfg: ClusterConfig, profile_name: String) -> Self
Port of k3d.NewDriver, wired to the real subprocess executor and
a real TCP-connect port probe (portprobe.InUse’s equivalent).
Sourcepub fn with_runner(
cfg: ClusterConfig,
profile_name: String,
runner: Arc<dyn CommandRunner + Send + Sync>,
) -> Self
pub fn with_runner( cfg: ClusterConfig, profile_name: String, runner: Arc<dyn CommandRunner + Send + Sync>, ) -> Self
Test-facing constructor: takes the injected CommandRunner
explicitly. port_in_use still defaults to the real TCP probe;
override the field directly (it’s pub) when a test needs a fake.
Trait Implementations§
Source§impl Driver for Driver
impl Driver for Driver
Source§fn name(&self) -> &str
fn name(&self) -> &str
Name returns the driver’s registered name. Wrapping drivers such as
auto return the name of the driver they resolved to.
Source§fn get_kubeconfig(&self) -> Result<String, DriverError>
fn get_kubeconfig(&self) -> Result<String, DriverError>
Returns the kubeconfig content for the cluster as a string.
Source§fn domain_sources(&self) -> Option<Vec<DomainSource>>
fn domain_sources(&self) -> Option<Vec<DomainSource>>
Lists where to ask this driver’s cluster for its DNS zone, in order;
None means the common chain.Auto Trait Implementations§
impl !RefUnwindSafe for Driver
impl !Send for Driver
impl !Sync for Driver
impl !UnwindSafe for Driver
impl Freeze for Driver
impl Unpin for Driver
impl UnsafeUnpin for Driver
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more