wadm_client

Struct Client

Source
pub struct Client { /* private fields */ }

Implementations§

Source§

impl Client

Source

pub async fn new( lattice: &str, prefix: Option<&str>, opts: ClientConnectOptions, ) -> Result<Self>

Creates a new client with the given lattice ID, optional API prefix, and connection options. Errors if it is unable to connect to the NATS server

Source

pub async fn put_manifest( &self, manifest: impl ManifestLoader, ) -> Result<(String, String)>

Puts the given manifest into the lattice. The lattice can be anything that implements the ManifestLoader trait (a path to a file, raw bytes, or an already parsed manifest).

Returns the name and version of the manifest that was put into the lattice

Source

pub async fn list_manifests(&self) -> Result<Vec<ModelSummary>>

Gets a list of all manifests in the lattice. This does not return the full manifest, just a summary of its metadata and status

Source

pub async fn get_manifest( &self, name: &str, version: Option<&str>, ) -> Result<Manifest>

Gets a manifest from the lattice by name and optionally its version. If no version is set, the latest version will be returned

Source

pub async fn delete_manifest( &self, name: &str, version: Option<&str>, ) -> Result<bool>

Deletes a manifest from the lattice by name and optionally its version. If no version is set, all versions will be deleted

Returns true if the manifest was deleted, false if it was a noop (meaning it wasn’t found or was already deleted)

Source

pub async fn list_versions(&self, name: &str) -> Result<Vec<VersionInfo>>

Gets a list of all versions of a manifest in the lattice

Source

pub async fn deploy_manifest( &self, name: &str, version: Option<&str>, ) -> Result<(String, Option<String>)>

Deploys a manifest to the lattice. The optional version parameter can be used to deploy a specific version of a manifest. If no version is set, the latest version will be deployed

Please note that an OK response does not necessarily mean that the manifest was deployed successfully, just that the server accepted the deployment request.

Returns a tuple of the name and version of the manifest that was deployed

Source

pub async fn put_and_deploy_manifest( &self, manifest: impl ManifestLoader, ) -> Result<(String, String)>

A shorthand method that is the equivalent of calling put_manifest and then deploy_manifest

Returns the name and version of the manifest that was deployed. Note that this will always deploy the latest version of the manifest (i.e. the one that was just put)

Source

pub async fn undeploy_manifest(&self, name: &str) -> Result<String>

Undeploys the given manifest from the lattice

Returns Ok(manifest_name) if the manifest undeploy request was acknowledged

Source

pub async fn get_manifest_status(&self, name: &str) -> Result<Status>

Gets the status of the given manifest

Source

pub async fn subscribe_to_status( &self, name: &str, ) -> Result<impl Stream<Item = Message>>

Subscribes to the status of a given manifest

Trait Implementations§

Source§

impl Clone for Client

Source§

fn clone(&self) -> Client

Returns a copy of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more

Auto Trait Implementations§

§

impl Freeze for Client

§

impl !RefUnwindSafe for Client

§

impl Send for Client

§

impl Sync for Client

§

impl Unpin for Client

§

impl !UnwindSafe for Client

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, dst: *mut u8)

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

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

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T