1c6f35e8aSLoGin use crate::{console::rootfs::RootFSCommand, context::DADKExecContext};
2c6f35e8aSLoGin use anyhow::Result;
3c6f35e8aSLoGin
4c6f35e8aSLoGin mod disk_img;
5c6f35e8aSLoGin mod loopdev;
6c99db055SLoGin mod sysroot;
7c6f35e8aSLoGin
run(ctx: &DADKExecContext, rootfs_cmd: &RootFSCommand) -> Result<()>8c6f35e8aSLoGin pub(super) fn run(ctx: &DADKExecContext, rootfs_cmd: &RootFSCommand) -> Result<()> {
9c6f35e8aSLoGin match rootfs_cmd {
10*ce26d675SLoGin RootFSCommand::Create(param) => disk_img::create(ctx, param.skip_if_exists),
11c99db055SLoGin RootFSCommand::Delete => disk_img::delete(ctx, false),
12c99db055SLoGin RootFSCommand::DeleteSysroot => sysroot::delete(ctx),
137a97f354SLoGin RootFSCommand::Mount => disk_img::mount(ctx),
147a97f354SLoGin RootFSCommand::Umount => disk_img::umount(ctx),
15*ce26d675SLoGin RootFSCommand::CheckDiskImageExists => disk_img::check_disk_image_exists(ctx),
16*ce26d675SLoGin RootFSCommand::ShowMountPoint => disk_img::show_mount_point(ctx),
17*ce26d675SLoGin RootFSCommand::ShowLoopDevice => disk_img::show_loop_device(ctx),
18c6f35e8aSLoGin }
19c6f35e8aSLoGin }
20