mirror of
https://github.com/aljazceru/kata-containers.git
synced 2026-01-04 15:04:25 +01:00
runtime-rs: impl volume-resize trait for sandbox
Implements resize-volume handlers in shim-mgmt, trait for sandbox and add RPC calls to agent. Note the actual rpc handler for the resize request is currently not implemented, refer to issue #3694. Fixes #5369 Signed-off-by: Tingzhou Yuan <tzyuan15@bu.edu>
This commit is contained in:
@@ -116,5 +116,6 @@ impl_agent!(
|
||||
get_oom_event | crate::Empty | crate::OomEventResponse | Some(0),
|
||||
get_ip_tables | crate::GetIPTablesRequest | crate::GetIPTablesResponse | None,
|
||||
set_ip_tables | crate::SetIPTablesRequest | crate::SetIPTablesResponse | None,
|
||||
get_volume_stats | crate::VolumeStatsRequest | crate::VolumeStatsResponse | None
|
||||
get_volume_stats | crate::VolumeStatsRequest | crate::VolumeStatsResponse | None,
|
||||
resize_volume | crate::ResizeVolumeRequest | crate::Empty | None
|
||||
);
|
||||
|
||||
@@ -20,11 +20,12 @@ use crate::{
|
||||
GetIPTablesResponse, GuestDetailsResponse, HealthCheckResponse, HugetlbStats, IPAddress,
|
||||
IPFamily, Interface, Interfaces, KernelModule, MemHotplugByProbeRequest, MemoryData,
|
||||
MemoryStats, NetworkStats, OnlineCPUMemRequest, PidsStats, ReadStreamRequest,
|
||||
ReadStreamResponse, RemoveContainerRequest, ReseedRandomDevRequest, Route, Routes,
|
||||
SetGuestDateTimeRequest, SetIPTablesRequest, SetIPTablesResponse, SignalProcessRequest,
|
||||
StatsContainerResponse, Storage, StringUser, ThrottlingData, TtyWinResizeRequest,
|
||||
UpdateContainerRequest, UpdateInterfaceRequest, UpdateRoutesRequest, VersionCheckResponse,
|
||||
VolumeStatsRequest, VolumeStatsResponse, WaitProcessRequest, WriteStreamRequest,
|
||||
ReadStreamResponse, RemoveContainerRequest, ReseedRandomDevRequest, ResizeVolumeRequest,
|
||||
Route, Routes, SetGuestDateTimeRequest, SetIPTablesRequest, SetIPTablesResponse,
|
||||
SignalProcessRequest, StatsContainerResponse, Storage, StringUser, ThrottlingData,
|
||||
TtyWinResizeRequest, UpdateContainerRequest, UpdateInterfaceRequest, UpdateRoutesRequest,
|
||||
VersionCheckResponse, VolumeStatsRequest, VolumeStatsResponse, WaitProcessRequest,
|
||||
WriteStreamRequest,
|
||||
},
|
||||
OomEventResponse, WaitProcessResponse, WriteStreamResponse,
|
||||
};
|
||||
@@ -860,10 +861,21 @@ impl From<VolumeStatsRequest> for agent::VolumeStatsRequest {
|
||||
impl From<csi::VolumeStatsResponse> for VolumeStatsResponse {
|
||||
fn from(from: csi::VolumeStatsResponse) -> Self {
|
||||
let result: String = format!(
|
||||
"Usage: {:?}\nVolume Condition: {:?}",
|
||||
"Usage: {:?} Volume Condition: {:?}",
|
||||
from.get_usage(),
|
||||
from.get_volume_condition()
|
||||
);
|
||||
Self { data: result }
|
||||
}
|
||||
}
|
||||
|
||||
impl From<ResizeVolumeRequest> for agent::ResizeVolumeRequest {
|
||||
fn from(from: ResizeVolumeRequest) -> Self {
|
||||
Self {
|
||||
volume_guest_path: from.volume_guest_path,
|
||||
size: from.size,
|
||||
unknown_fields: Default::default(),
|
||||
cached_size: Default::default(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -89,4 +89,5 @@ pub trait Agent: AgentManager + HealthService + Send + Sync {
|
||||
async fn get_ip_tables(&self, req: GetIPTablesRequest) -> Result<GetIPTablesResponse>;
|
||||
async fn set_ip_tables(&self, req: SetIPTablesRequest) -> Result<SetIPTablesResponse>;
|
||||
async fn get_volume_stats(&self, req: VolumeStatsRequest) -> Result<VolumeStatsResponse>;
|
||||
async fn resize_volume(&self, req: ResizeVolumeRequest) -> Result<Empty>;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user