mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2025-02-21 19:02:30 +00:00
tests: Make the GuestCommand take a reference to the guest
This will be used fill out default parts of the guest command. Signed-off-by: Rob Bradford <robert.bradford@intel.com>
This commit is contained in:
parent
49e70c6203
commit
9f1ac24bed
@ -713,19 +713,24 @@ mod tests {
|
||||
}
|
||||
}
|
||||
|
||||
struct GuestCommand {
|
||||
struct GuestCommand<'a> {
|
||||
command: Command,
|
||||
guest: &'a Guest<'a>,
|
||||
}
|
||||
|
||||
impl GuestCommand {
|
||||
fn new() -> Self {
|
||||
impl<'a> GuestCommand<'a> {
|
||||
fn new(guest: &'a Guest) -> Self {
|
||||
Self {
|
||||
command: Command::new("target/release/cloud-hypervisor"),
|
||||
guest,
|
||||
}
|
||||
}
|
||||
|
||||
fn spawn(&mut self) -> io::Result<Child> {
|
||||
self.command.stderr(Stdio::piped()).stdout(Stdio::piped()).spawn()
|
||||
self.command
|
||||
.stderr(Stdio::piped())
|
||||
.stdout(Stdio::piped())
|
||||
.spawn()
|
||||
}
|
||||
|
||||
fn args<I, S>(&mut self, args: I) -> &mut Self
|
||||
@ -754,7 +759,7 @@ mod tests {
|
||||
.for_each(|disk_config| {
|
||||
let guest = Guest::new(*disk_config);
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -804,7 +809,7 @@ mod tests {
|
||||
test_block!(tb, "", {
|
||||
let mut bionic = UbuntuDiskConfig::new(BIONIC_IMAGE_NAME.to_string());
|
||||
let guest = Guest::new(&mut bionic);
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=2,max=4"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -850,7 +855,7 @@ mod tests {
|
||||
test_block!(tb, "", {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=5120M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -888,7 +893,7 @@ mod tests {
|
||||
test_block!(tb, "", {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=128G"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -929,7 +934,7 @@ mod tests {
|
||||
test_block!(tb, "", {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -982,7 +987,7 @@ mod tests {
|
||||
let mut kernel_path = workload_path;
|
||||
kernel_path.push("vmlinux");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus","boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -1041,7 +1046,7 @@ mod tests {
|
||||
let mut kernel_path = workload_path;
|
||||
kernel_path.push("bzImage");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus","boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -1098,7 +1103,7 @@ mod tests {
|
||||
blk_file_path.push("workloads");
|
||||
blk_file_path.push("blk.img");
|
||||
|
||||
let mut cloud_child = GuestCommand::new()
|
||||
let mut cloud_child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=4"])
|
||||
.args(&["--memory", "size=512M,file=/dev/shm"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -1191,7 +1196,7 @@ mod tests {
|
||||
.unwrap();
|
||||
thread::sleep(std::time::Duration::new(10, 0));
|
||||
|
||||
let mut cloud_child = GuestCommand::new()
|
||||
let mut cloud_child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=4"])
|
||||
.args(&["--memory", "size=512M,file=/dev/shm"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -1279,7 +1284,7 @@ mod tests {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
|
||||
let mut cloud_child = GuestCommand::new()
|
||||
let mut cloud_child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=4"])
|
||||
.args(&["--memory", "size=512M,file=/dev/shm"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -1362,7 +1367,7 @@ mod tests {
|
||||
let (mut daemon_child, vubd_socket_path) =
|
||||
prepare_vubd(&guest.tmp_dir, "blk.img", 2, false, false);
|
||||
|
||||
let mut cloud_child = GuestCommand::new()
|
||||
let mut cloud_child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=2"])
|
||||
.args(&["--memory", "size=512M,file=/dev/shm"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -1453,7 +1458,7 @@ mod tests {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
|
||||
let mut cloud_child = GuestCommand::new()
|
||||
let mut cloud_child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=2"])
|
||||
.args(&["--memory", "size=512M,file=/dev/shm"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -1494,7 +1499,7 @@ mod tests {
|
||||
let (mut daemon_child, vubd_socket_path) =
|
||||
prepare_vubd(&guest.tmp_dir, "blk.img", 1, true, false);
|
||||
|
||||
let mut cloud_child = GuestCommand::new()
|
||||
let mut cloud_child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M,file=/dev/shm"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -1568,7 +1573,7 @@ mod tests {
|
||||
let (mut daemon_child, vubd_socket_path) =
|
||||
prepare_vubd(&guest.tmp_dir, "blk.img", 1, false, true);
|
||||
|
||||
let mut cloud_child = GuestCommand::new()
|
||||
let mut cloud_child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M,file=/dev/shm"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -1639,7 +1644,7 @@ mod tests {
|
||||
false,
|
||||
);
|
||||
|
||||
let mut cloud_child = GuestCommand::new()
|
||||
let mut cloud_child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M,file=/dev/shm"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -1686,7 +1691,7 @@ mod tests {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -1770,7 +1775,7 @@ mod tests {
|
||||
virtiofsd_cache,
|
||||
);
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M,file=/dev/shm"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -1914,7 +1919,7 @@ mod tests {
|
||||
let mut kernel_path = workload_path;
|
||||
kernel_path.push("vmlinux");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus","boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -1977,7 +1982,7 @@ mod tests {
|
||||
let mut kernel_path = workload_path;
|
||||
kernel_path.push("vmlinux");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus","boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -2021,7 +2026,7 @@ mod tests {
|
||||
test_block!(tb, "", {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -2074,7 +2079,7 @@ mod tests {
|
||||
test_block!(tb, "", {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -2123,7 +2128,7 @@ mod tests {
|
||||
test_block!(tb, "", {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -2182,7 +2187,7 @@ mod tests {
|
||||
test_block!(tb, "", {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -2243,7 +2248,7 @@ mod tests {
|
||||
let guest = Guest::new(&mut clear);
|
||||
|
||||
let serial_path = guest.tmp_dir.path().join("/tmp/serial-output");
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -2306,7 +2311,7 @@ mod tests {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -2364,7 +2369,7 @@ mod tests {
|
||||
let guest = Guest::new(&mut clear);
|
||||
|
||||
let console_path = guest.tmp_dir.path().join("/tmp/console-output");
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -2452,7 +2457,7 @@ mod tests {
|
||||
let (mut daemon_child, virtiofsd_socket_path) =
|
||||
prepare_virtiofsd(&guest.tmp_dir, vfio_path.to_str().unwrap(), "none");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=4"])
|
||||
.args(&["--memory", "size=1G,file=/dev/hugepages"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -2556,7 +2561,7 @@ mod tests {
|
||||
let mut kernel_path = workload_path;
|
||||
kernel_path.push("vmlinux");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus","boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -2618,7 +2623,7 @@ mod tests {
|
||||
.for_each(|disk_config| {
|
||||
let guest = Guest::new(*disk_config);
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -2689,7 +2694,7 @@ mod tests {
|
||||
let mut kernel_path = workload_path;
|
||||
kernel_path.push("bzImage");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus","boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -2755,7 +2760,7 @@ mod tests {
|
||||
|
||||
let sock = temp_vsock_path(&guest.tmp_dir);
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -2831,7 +2836,7 @@ mod tests {
|
||||
|
||||
let api_socket = temp_api_path(&guest.tmp_dir);
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--api-socket", &api_socket])
|
||||
.spawn()
|
||||
.unwrap();
|
||||
@ -2890,7 +2895,7 @@ mod tests {
|
||||
|
||||
let api_socket = temp_api_path(&guest.tmp_dir);
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--api-socket", &api_socket])
|
||||
.spawn()
|
||||
.unwrap();
|
||||
@ -2984,7 +2989,7 @@ mod tests {
|
||||
let mut kernel_path = workload_path;
|
||||
kernel_path.push("bzImage");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus","boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -3070,7 +3075,7 @@ mod tests {
|
||||
test_block!(tb, "", {
|
||||
let mut clear = ClearDiskConfig::new();
|
||||
let guest = Guest::new(&mut clear);
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", guest.fw_path.as_str()])
|
||||
@ -3189,7 +3194,7 @@ mod tests {
|
||||
|
||||
let guest1 = Guest::new(&mut clear1 as &mut dyn DiskConfig);
|
||||
|
||||
let mut child1 = GuestCommand::new()
|
||||
let mut child1 = GuestCommand::new(&guest1)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", format!("size=512M,{}", memory_param).as_str()])
|
||||
.args(&["--kernel", guest1.fw_path.as_str()])
|
||||
@ -3220,7 +3225,7 @@ mod tests {
|
||||
|
||||
let guest2 = Guest::new(&mut clear2 as &mut dyn DiskConfig);
|
||||
|
||||
let mut child2 = GuestCommand::new()
|
||||
let mut child2 = GuestCommand::new(&guest2)
|
||||
.args(&["--cpus", "boot=1"])
|
||||
.args(&["--memory", format!("size=512M,{}", memory_param).as_str()])
|
||||
.args(&["--kernel", guest2.fw_path.as_str()])
|
||||
@ -3296,7 +3301,7 @@ mod tests {
|
||||
let mut kernel_path = workload_path;
|
||||
kernel_path.push("vmlinux");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=2,max=4"])
|
||||
.args(&["--memory", "size=512M"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -3402,7 +3407,7 @@ mod tests {
|
||||
let mut kernel_path = workload_path;
|
||||
kernel_path.push("vmlinux");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=2,max=4"])
|
||||
.args(&["--memory", "size=512M,hotplug_size=8192M"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -3528,7 +3533,7 @@ mod tests {
|
||||
let mut kernel_path = workload_path;
|
||||
kernel_path.push("vmlinux");
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus", "boot=2,max=4"])
|
||||
.args(&["--memory", "size=512M,hotplug_size=8192M"])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
@ -3637,7 +3642,7 @@ mod tests {
|
||||
|
||||
let guest_memory_size_kb = 512 * 1024;
|
||||
|
||||
let mut child = GuestCommand::new()
|
||||
let mut child = GuestCommand::new(&guest)
|
||||
.args(&["--cpus","boot=1"])
|
||||
.args(&["--memory", format!("size={}K", guest_memory_size_kb).as_str()])
|
||||
.args(&["--kernel", kernel_path.to_str().unwrap()])
|
||||
|
Loading…
x
Reference in New Issue
Block a user