pub struct BareMetalSolutionClient<T> { /* private fields */ }
Expand description

Performs management operations on Bare Metal Solution servers.

The baremetalsolution.googleapis.com service provides management capabilities for Bare Metal Solution servers. To access the API methods, you must assign Bare Metal Solution IAM roles containing the desired permissions to your staff in your Google Cloud project. You must also enable the Bare Metal Solution API. Once enabled, the methods act upon specific servers in your Bare Metal Solution environment.

Implementations§

source§

impl<T> BareMetalSolutionClient<T>
where T: GrpcService<BoxBody>, T::Error: Into<StdError>, T::ResponseBody: Body<Data = Bytes> + Send + 'static, <T::ResponseBody as Body>::Error: Into<StdError> + Send,

source

pub fn new(inner: T) -> Self

source

pub fn with_origin(inner: T, origin: Uri) -> Self

source

pub fn with_interceptor<F>( inner: T, interceptor: F, ) -> BareMetalSolutionClient<InterceptedService<T, F>>
where F: Interceptor, T::ResponseBody: Default, T: Service<Request<BoxBody>, Response = Response<<T as GrpcService<BoxBody>>::ResponseBody>>, <T as Service<Request<BoxBody>>>::Error: Into<StdError> + Send + Sync,

source

pub fn send_compressed(self, encoding: CompressionEncoding) -> Self

Compress requests with the given encoding.

This requires the server to support it otherwise it might respond with an error.

source

pub fn accept_compressed(self, encoding: CompressionEncoding) -> Self

Enable decompressing responses.

source

pub fn max_decoding_message_size(self, limit: usize) -> Self

Limits the maximum size of a decoded message.

Default: 4MB

source

pub fn max_encoding_message_size(self, limit: usize) -> Self

Limits the maximum size of an encoded message.

Default: usize::MAX

source

pub async fn list_instances( &mut self, request: impl IntoRequest<ListInstancesRequest>, ) -> Result<Response<ListInstancesResponse>, Status>

List servers in a given project and location.

source

pub async fn get_instance( &mut self, request: impl IntoRequest<GetInstanceRequest>, ) -> Result<Response<Instance>, Status>

Get details about a single server.

source

pub async fn update_instance( &mut self, request: impl IntoRequest<UpdateInstanceRequest>, ) -> Result<Response<Operation>, Status>

Update details of a single server.

source

pub async fn rename_instance( &mut self, request: impl IntoRequest<RenameInstanceRequest>, ) -> Result<Response<Instance>, Status>

RenameInstance sets a new name for an instance. Use with caution, previous names become immediately invalidated.

source

pub async fn reset_instance( &mut self, request: impl IntoRequest<ResetInstanceRequest>, ) -> Result<Response<Operation>, Status>

Perform an ungraceful, hard reset on a server. Equivalent to shutting the power off and then turning it back on.

source

pub async fn start_instance( &mut self, request: impl IntoRequest<StartInstanceRequest>, ) -> Result<Response<Operation>, Status>

Starts a server that was shutdown.

source

pub async fn stop_instance( &mut self, request: impl IntoRequest<StopInstanceRequest>, ) -> Result<Response<Operation>, Status>

Stop a running server.

source

pub async fn enable_interactive_serial_console( &mut self, request: impl IntoRequest<EnableInteractiveSerialConsoleRequest>, ) -> Result<Response<Operation>, Status>

Enable the interactive serial console feature on an instance.

source

pub async fn disable_interactive_serial_console( &mut self, request: impl IntoRequest<DisableInteractiveSerialConsoleRequest>, ) -> Result<Response<Operation>, Status>

Disable the interactive serial console feature on an instance.

source

pub async fn detach_lun( &mut self, request: impl IntoRequest<DetachLunRequest>, ) -> Result<Response<Operation>, Status>

Detach LUN from Instance.

source

pub async fn list_ssh_keys( &mut self, request: impl IntoRequest<ListSshKeysRequest>, ) -> Result<Response<ListSshKeysResponse>, Status>

Lists the public SSH keys registered for the specified project. These SSH keys are used only for the interactive serial console feature.

source

pub async fn create_ssh_key( &mut self, request: impl IntoRequest<CreateSshKeyRequest>, ) -> Result<Response<SshKey>, Status>

Register a public SSH key in the specified project for use with the interactive serial console feature.

source

pub async fn delete_ssh_key( &mut self, request: impl IntoRequest<DeleteSshKeyRequest>, ) -> Result<Response<()>, Status>

Deletes a public SSH key registered in the specified project.

source

pub async fn list_volumes( &mut self, request: impl IntoRequest<ListVolumesRequest>, ) -> Result<Response<ListVolumesResponse>, Status>

List storage volumes in a given project and location.

source

pub async fn get_volume( &mut self, request: impl IntoRequest<GetVolumeRequest>, ) -> Result<Response<Volume>, Status>

Get details of a single storage volume.

source

pub async fn update_volume( &mut self, request: impl IntoRequest<UpdateVolumeRequest>, ) -> Result<Response<Operation>, Status>

Update details of a single storage volume.

source

pub async fn rename_volume( &mut self, request: impl IntoRequest<RenameVolumeRequest>, ) -> Result<Response<Volume>, Status>

RenameVolume sets a new name for a volume. Use with caution, previous names become immediately invalidated.

source

pub async fn evict_volume( &mut self, request: impl IntoRequest<EvictVolumeRequest>, ) -> Result<Response<Operation>, Status>

Skips volume’s cooloff and deletes it now. Volume must be in cooloff state.

source

pub async fn resize_volume( &mut self, request: impl IntoRequest<ResizeVolumeRequest>, ) -> Result<Response<Operation>, Status>

Emergency Volume resize.

source

pub async fn list_networks( &mut self, request: impl IntoRequest<ListNetworksRequest>, ) -> Result<Response<ListNetworksResponse>, Status>

List network in a given project and location.

source

pub async fn list_network_usage( &mut self, request: impl IntoRequest<ListNetworkUsageRequest>, ) -> Result<Response<ListNetworkUsageResponse>, Status>

List all Networks (and used IPs for each Network) in the vendor account associated with the specified project.

source

pub async fn get_network( &mut self, request: impl IntoRequest<GetNetworkRequest>, ) -> Result<Response<Network>, Status>

Get details of a single network.

source

pub async fn update_network( &mut self, request: impl IntoRequest<UpdateNetworkRequest>, ) -> Result<Response<Operation>, Status>

Update details of a single network.

source

pub async fn create_volume_snapshot( &mut self, request: impl IntoRequest<CreateVolumeSnapshotRequest>, ) -> Result<Response<VolumeSnapshot>, Status>

Takes a snapshot of a boot volume. Returns INVALID_ARGUMENT if called for a non-boot volume.

source

pub async fn restore_volume_snapshot( &mut self, request: impl IntoRequest<RestoreVolumeSnapshotRequest>, ) -> Result<Response<Operation>, Status>

Uses the specified snapshot to restore its parent volume. Returns INVALID_ARGUMENT if called for a non-boot volume.

source

pub async fn delete_volume_snapshot( &mut self, request: impl IntoRequest<DeleteVolumeSnapshotRequest>, ) -> Result<Response<()>, Status>

Deletes a volume snapshot. Returns INVALID_ARGUMENT if called for a non-boot volume.

source

pub async fn get_volume_snapshot( &mut self, request: impl IntoRequest<GetVolumeSnapshotRequest>, ) -> Result<Response<VolumeSnapshot>, Status>

Returns the specified snapshot resource. Returns INVALID_ARGUMENT if called for a non-boot volume.

source

pub async fn list_volume_snapshots( &mut self, request: impl IntoRequest<ListVolumeSnapshotsRequest>, ) -> Result<Response<ListVolumeSnapshotsResponse>, Status>

Retrieves the list of snapshots for the specified volume. Returns a response with an empty list of snapshots if called for a non-boot volume.

source

pub async fn get_lun( &mut self, request: impl IntoRequest<GetLunRequest>, ) -> Result<Response<Lun>, Status>

Get details of a single storage logical unit number(LUN).

source

pub async fn list_luns( &mut self, request: impl IntoRequest<ListLunsRequest>, ) -> Result<Response<ListLunsResponse>, Status>

List storage volume luns for given storage volume.

source

pub async fn evict_lun( &mut self, request: impl IntoRequest<EvictLunRequest>, ) -> Result<Response<Operation>, Status>

Skips lun’s cooloff and deletes it now. Lun must be in cooloff state.

source

pub async fn get_nfs_share( &mut self, request: impl IntoRequest<GetNfsShareRequest>, ) -> Result<Response<NfsShare>, Status>

Get details of a single NFS share.

source

pub async fn list_nfs_shares( &mut self, request: impl IntoRequest<ListNfsSharesRequest>, ) -> Result<Response<ListNfsSharesResponse>, Status>

List NFS shares.

source

pub async fn update_nfs_share( &mut self, request: impl IntoRequest<UpdateNfsShareRequest>, ) -> Result<Response<Operation>, Status>

Update details of a single NFS share.

source

pub async fn create_nfs_share( &mut self, request: impl IntoRequest<CreateNfsShareRequest>, ) -> Result<Response<Operation>, Status>

Create an NFS share.

source

pub async fn rename_nfs_share( &mut self, request: impl IntoRequest<RenameNfsShareRequest>, ) -> Result<Response<NfsShare>, Status>

RenameNfsShare sets a new name for an nfsshare. Use with caution, previous names become immediately invalidated.

source

pub async fn delete_nfs_share( &mut self, request: impl IntoRequest<DeleteNfsShareRequest>, ) -> Result<Response<Operation>, Status>

Delete an NFS share. The underlying volume is automatically deleted.

source

pub async fn list_provisioning_quotas( &mut self, request: impl IntoRequest<ListProvisioningQuotasRequest>, ) -> Result<Response<ListProvisioningQuotasResponse>, Status>

List the budget details to provision resources on a given project.

source

pub async fn submit_provisioning_config( &mut self, request: impl IntoRequest<SubmitProvisioningConfigRequest>, ) -> Result<Response<SubmitProvisioningConfigResponse>, Status>

Submit a provisiong configuration for a given project.

source

pub async fn get_provisioning_config( &mut self, request: impl IntoRequest<GetProvisioningConfigRequest>, ) -> Result<Response<ProvisioningConfig>, Status>

Get ProvisioningConfig by name.

source

pub async fn create_provisioning_config( &mut self, request: impl IntoRequest<CreateProvisioningConfigRequest>, ) -> Result<Response<ProvisioningConfig>, Status>

Create new ProvisioningConfig.

source

pub async fn update_provisioning_config( &mut self, request: impl IntoRequest<UpdateProvisioningConfigRequest>, ) -> Result<Response<ProvisioningConfig>, Status>

Update existing ProvisioningConfig.

source

pub async fn rename_network( &mut self, request: impl IntoRequest<RenameNetworkRequest>, ) -> Result<Response<Network>, Status>

RenameNetwork sets a new name for a network. Use with caution, previous names become immediately invalidated.

source

pub async fn list_os_images( &mut self, request: impl IntoRequest<ListOsImagesRequest>, ) -> Result<Response<ListOsImagesResponse>, Status>

Retrieves the list of OS images which are currently approved.

Trait Implementations§

source§

impl<T: Clone> Clone for BareMetalSolutionClient<T>

source§

fn clone(&self) -> BareMetalSolutionClient<T>

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
source§

impl<T: Debug> Debug for BareMetalSolutionClient<T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. 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> 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> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

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

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

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

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

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> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
source§

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

§

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>,

§

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>,

§

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.
§

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

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

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