pub struct K6Executor { /* private fields */ }Expand description
k6 executor
Implementations§
Source§impl K6Executor
impl K6Executor
Sourcepub fn with_local_ips(self, local_ips: impl Into<String>) -> Self
pub fn with_local_ips(self, local_ips: impl Into<String>) -> Self
Set the --local-ips value for subsequent k6 invocations.
Accepts a comma-joined list of IPs, ranges (10.0.0.1-10.0.0.5),
and/or CIDRs (192.168.0.0/24) - same syntax k6 expects.
Sourcepub fn with_discard_response_bodies(self, discard: bool) -> Self
pub fn with_discard_response_bodies(self, discard: bool) -> Self
Round 56 (#79) — enable K6_DISCARD_RESPONSE_BODIES so k6 does not hold
response bodies in memory. Use for plain load runs (status-only checks);
do NOT use where the script inspects/extracts response bodies.
Sourcepub fn is_k6_installed() -> bool
pub fn is_k6_installed() -> bool
Check if k6 is installed
Sourcepub async fn get_version(&self) -> Result<String>
pub async fn get_version(&self) -> Result<String>
Get k6 version
Sourcepub async fn execute(
&self,
script_path: &Path,
output_dir: Option<&Path>,
verbose: bool,
) -> Result<K6Results>
pub async fn execute( &self, script_path: &Path, output_dir: Option<&Path>, verbose: bool, ) -> Result<K6Results>
Execute a k6 script.
api_port — when set, overrides k6’s default API server address (localhost:6565)
to localhost:<api_port>. This prevents “address already in use” errors when
running multiple k6 instances in parallel (e.g., multi-target bench).
Pass Some(0) to bind an OS-assigned ephemeral port — the collision-proof
choice for parallel runs, since the kernel never hands out a busy port
(see the k6 CannotStartRESTAPI / exit-106 fix in parallel_executor).
Pass None for single-target runs (uses k6’s default localhost:6565).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for K6Executor
impl RefUnwindSafe for K6Executor
impl Send for K6Executor
impl Sync for K6Executor
impl Unpin for K6Executor
impl UnsafeUnpin for K6Executor
impl UnwindSafe for K6Executor
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
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
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>
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