Skip to main content

VsanUpdateManager

Struct VsanUpdateManager 

Source
pub struct VsanUpdateManager { /* private fields */ }
Expand description

Generic engine that can install VIBs onto ESX (optimized for vSAN clusters) using either rolling installs or one-shot.

In addition to VIBs, it can also install firmware updates for select hardware. The Managed Entity can be accessed through MOID of vsan-update-manager, through vSAN service at ESXi host side.

Implementations§

Source§

impl VsanUpdateManager

Source

pub fn new(client: Arc<dyn VimClient>, mo_id: &str) -> Self

Source

pub async fn vsan_vib_install_task( &self, cluster: Option<&ManagedObjectReference>, vib_specs: Option<&[VsanVibSpec]>, scan_results: Option<&[VsanVibScanResult]>, firmware_specs: Option<&[VsanHclFirmwareUpdateSpec]>, maintenance_spec: Option<&HostMaintenanceSpec>, rolling: Option<bool>, no_sig_check: Option<bool>, ) -> Result<ManagedObjectReference>

Deprecated as of vSphere API 8.0.

Takes a list of VIBs, firmwares, and installs those VIBs/FWs on the hosts referenced in the VIB/FW specs.

If a scan has previously been performed, the results can be passed in. If not provided, a scan is done implicitly. Install may require ESX maintenance mode, and reboots, depending on the VIB to be installed and the state of the host. Any firmware update will always require maintenance mode and a host reboot.

§Parameters:
§cluster

Optional cluster this scan is happening in reference to.

Required privileges: Host.Config.Storage Host.Config.Settings

Refers instance of ComputeResource.

§vib_specs

List of VIB specs to installed (context is always a single host)

§scan_results

List of VIB scan results obtained from VsanVibScan()

§firmware_specs

List of Firmware spec to be installed (context is always a single host and vmhba)

§maintenance_spec

Maintenance spec to pass to EnterMaintenanceMode_Task() In case of non-rolling installs, no other vSAN action than ‘noAction’ is allowed.

§rolling

True (default) means a 1-host-at-a-time rolling install will be performed.

§no_sig_check

Skip signature checking, should not be used outside of fully trusted test environments. Default: False

§Returns:

Refers instance of Task.

§Errors:

Failure

Source

pub async fn vsan_vib_install_preflight_check( &self, cluster: Option<&ManagedObjectReference>, ) -> Result<VsanVibInstallPreflightStatus>

Performs pre-flight checks for a VIB install.

Details of checks performed are documented in the result structure.

§Parameters:
§cluster

Cluster for which to perform preflight check

Required privileges: System.Read

Refers instance of ComputeResource.

§Returns:

Preflight check results

§Errors:

Failure

Source

pub async fn vsan_vib_scan( &self, cluster: Option<&ManagedObjectReference>, vib_specs: &[VsanVibSpec], ) -> Result<Option<Vec<VsanVibScanResult>>>

Takes a list of VIBs and a list of hosts, and determines which VIBs would be installed, what the requirements are (e.g.

maintenance mode, reboot) and which existing VIBs (if any) they are overriding. Doesn’t perform any actual install, but instead just provides information on “what if”.

§Parameters:
§cluster

Optional cluster this scan is happening in reference to.

Required privileges: System.Read

Refers instance of ComputeResource.

§vib_specs

List of VIB specs to check (one entry per host)

§Returns:

List of VIBs that would be installed. Each such result is for a single host, single VIB.

§Errors:

Failure

Trait Implementations§

Source§

impl Clone for VsanUpdateManager

Source§

fn clone(&self) -> VsanUpdateManager

Returns a duplicate 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§

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> AsAny for T
where T: 'static,

Source§

fn as_any_ref<'a>(&'a self) -> &'a (dyn Any + 'static)

Cast a reference to Any trait.

Source§

fn as_any_box(self: Box<T>) -> Box<dyn Any>

Cast to a boxed reference to Any trait.

Source§

fn type_id(&self) -> TypeId

Get the underlying type identifier.
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<To, T> CastInto<To> for T
where To: CastFrom<T> + ?Sized, T: 'static + ?Sized,

Source§

fn into_ref<'a>(&'a self) -> Option<&'a To>

Casts a reference to a trait object. If the cast fails, std::option::Option::None is returned.
Source§

fn into_box(self: Box<T>) -> Result<Box<To>, Box<dyn Any>>

Casts a boxed trait object to another trait object. If the cast fails, the original boxed trait object is returned in std::result::Result::Err.
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> 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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
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<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,