pub struct WorkloadService { /* private fields */ }Expand description
A WorkloadService is a component that is part of a workload that
runs once, either to completion or for the duration of the workload lifecycle.
Implementations§
Source§impl WorkloadService
impl WorkloadService
Sourcepub fn new(
workload_id: impl Into<Arc<str>>,
workload_name: impl Into<Arc<str>>,
workload_namespace: impl Into<Arc<str>>,
component: Component,
linker: Linker<Ctx>,
volume_mounts: Vec<(PathBuf, VolumeMount)>,
local_resources: LocalResources,
max_restarts: u64,
) -> Self
pub fn new( workload_id: impl Into<Arc<str>>, workload_name: impl Into<Arc<str>>, workload_namespace: impl Into<Arc<str>>, component: Component, linker: Linker<Ctx>, volume_mounts: Vec<(PathBuf, VolumeMount)>, local_resources: LocalResources, max_restarts: u64, ) -> Self
Create a new WorkloadService with the given workload ID,
wasmtime Component, Linker, volume mounts, and instance limits.
Sourcepub fn pre_instantiate(&mut self) -> Result<CommandPre<Ctx>>
pub fn pre_instantiate(&mut self) -> Result<CommandPre<Ctx>>
Pre-instantiate the component to prepare for execution.
Sourcepub fn is_running(&self) -> bool
pub fn is_running(&self) -> bool
Whether or not the service is currently running.
Methods from Deref<Target = WorkloadMetadata>§
Sourcepub fn workload_id(&self) -> &str
pub fn workload_id(&self) -> &str
Returns the ID of the workload this component belongs to.
Sourcepub fn workload_name(&self) -> &str
pub fn workload_name(&self) -> &str
Returns the name of the workload this component belongs to.
Sourcepub fn workload_namespace(&self) -> &str
pub fn workload_namespace(&self) -> &str
Returns the namespace of the workload this component belongs to.
Sourcepub fn engine(&self) -> &Engine
pub fn engine(&self) -> &Engine
Returns a reference to the wasmtime engine used to compile this component.
Sourcepub fn linker(&mut self) -> &mut Linker<Ctx>
pub fn linker(&mut self) -> &mut Linker<Ctx>
Returns a mutable reference to the component’s linker.
Sourcepub fn local_resources(&self) -> &LocalResources
pub fn local_resources(&self) -> &LocalResources
Returns a reference to component local resources.
Sourcepub fn plugins(
&self,
) -> &Option<HashMap<&'static str, Arc<dyn HostPlugin + Send + Sync>>>
pub fn plugins( &self, ) -> &Option<HashMap<&'static str, Arc<dyn HostPlugin + Send + Sync>>>
Returns a reference to the plugins associated with this component.
Sourcepub fn add_plugin(
&mut self,
id: &'static str,
plugin: Arc<dyn HostPlugin + Send + Sync>,
)
pub fn add_plugin( &mut self, id: &'static str, plugin: Arc<dyn HostPlugin + Send + Sync>, )
Adds a HostPlugin to the component.
Sourcepub fn with_plugins(
&mut self,
plugins: HashMap<&'static str, Arc<dyn HostPlugin + Send + Sync>>,
)
pub fn with_plugins( &mut self, plugins: HashMap<&'static str, Arc<dyn HostPlugin + Send + Sync>>, )
Replaces all plugins for this component with the provided set.
Sourcepub fn component_exports(&self) -> Result<Vec<(String, ComponentItem)>>
pub fn component_exports(&self) -> Result<Vec<(String, ComponentItem)>>
Extracts the ComponentItem::ComponentInstances that the component exports.
Trait Implementations§
Source§impl Clone for WorkloadService
impl Clone for WorkloadService
Source§fn clone(&self) -> WorkloadService
fn clone(&self) -> WorkloadService
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for WorkloadService
impl Debug for WorkloadService
Source§impl Deref for WorkloadService
impl Deref for WorkloadService
Auto Trait Implementations§
impl !RefUnwindSafe for WorkloadService
impl !UnwindSafe for WorkloadService
impl Freeze for WorkloadService
impl Send for WorkloadService
impl Sync for WorkloadService
impl Unpin for WorkloadService
impl UnsafeUnpin for WorkloadService
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: Sized + AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: Sized + AsFilelike,
self file descriptor. Read moreSource§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