ksud: Add logs for module installation
This commit is contained in:
@@ -411,6 +411,7 @@ fn do_install_module(zip: String) -> Result<()> {
|
|||||||
module_prop.insert(k, v);
|
module_prop.insert(k, v);
|
||||||
},
|
},
|
||||||
)?;
|
)?;
|
||||||
|
info!("module prop: {:?}", module_prop);
|
||||||
|
|
||||||
let Some(module_id) = module_prop.get("id") else {
|
let Some(module_id) = module_prop.get("id") else {
|
||||||
bail!("module id not found in module.prop!");
|
bail!("module id not found in module.prop!");
|
||||||
@@ -434,6 +435,9 @@ fn do_install_module(zip: String) -> Result<()> {
|
|||||||
let zip_uncompressed_size = get_zip_uncompressed_size(&zip)?;
|
let zip_uncompressed_size = get_zip_uncompressed_size(&zip)?;
|
||||||
let grow_size = default_reserve_size + zip_uncompressed_size;
|
let grow_size = default_reserve_size + zip_uncompressed_size;
|
||||||
|
|
||||||
|
info!("zip uncompressed size: {}", humansize::format_size(zip_uncompressed_size, humansize::DECIMAL));
|
||||||
|
info!("grow size: {}", humansize::format_size(grow_size, humansize::DECIMAL));
|
||||||
|
|
||||||
println!("- Preparing image");
|
println!("- Preparing image");
|
||||||
println!(
|
println!(
|
||||||
"- Module size: {}",
|
"- Module size: {}",
|
||||||
@@ -443,6 +447,7 @@ fn do_install_module(zip: String) -> Result<()> {
|
|||||||
if !modules_img_exist && !modules_update_img_exist {
|
if !modules_img_exist && !modules_update_img_exist {
|
||||||
// if no modules and modules_update, it is brand new installation, we should create a new img
|
// if no modules and modules_update, it is brand new installation, we should create a new img
|
||||||
// create a tmp module img and mount it to modules_update
|
// create a tmp module img and mount it to modules_update
|
||||||
|
info!("Creating brand new module image");
|
||||||
File::create(tmp_module_img)
|
File::create(tmp_module_img)
|
||||||
.context("Failed to create ext4 image file")?
|
.context("Failed to create ext4 image file")?
|
||||||
.set_len(grow_size)
|
.set_len(grow_size)
|
||||||
@@ -462,6 +467,7 @@ fn do_install_module(zip: String) -> Result<()> {
|
|||||||
check_image(tmp_module_img)?;
|
check_image(tmp_module_img)?;
|
||||||
} else if modules_update_img_exist {
|
} else if modules_update_img_exist {
|
||||||
// modules_update.img exists, we should use it as tmp img
|
// modules_update.img exists, we should use it as tmp img
|
||||||
|
info!("Using existing modules_update.img as tmp image");
|
||||||
std::fs::copy(modules_update_img, tmp_module_img).with_context(|| {
|
std::fs::copy(modules_update_img, tmp_module_img).with_context(|| {
|
||||||
format!(
|
format!(
|
||||||
"Failed to copy {} to {}",
|
"Failed to copy {} to {}",
|
||||||
@@ -473,6 +479,7 @@ fn do_install_module(zip: String) -> Result<()> {
|
|||||||
grow_image_size(tmp_module_img, grow_size)?;
|
grow_image_size(tmp_module_img, grow_size)?;
|
||||||
} else {
|
} else {
|
||||||
// modules.img exists, we should use it as tmp img
|
// modules.img exists, we should use it as tmp img
|
||||||
|
info!("Using existing modules.img as tmp image");
|
||||||
std::fs::copy(modules_img, tmp_module_img).with_context(|| {
|
std::fs::copy(modules_img, tmp_module_img).with_context(|| {
|
||||||
format!(
|
format!(
|
||||||
"Failed to copy {} to {}",
|
"Failed to copy {} to {}",
|
||||||
@@ -532,11 +539,12 @@ fn do_install_module(zip: String) -> Result<()> {
|
|||||||
|
|
||||||
pub fn install_module(zip: String) -> Result<()> {
|
pub fn install_module(zip: String) -> Result<()> {
|
||||||
let result = do_install_module(zip);
|
let result = do_install_module(zip);
|
||||||
if result.is_err() {
|
if let Err(ref e) = result {
|
||||||
// error happened, do some cleanup!
|
// error happened, do some cleanup!
|
||||||
let _ = std::fs::remove_file(defs::MODULE_UPDATE_TMP_IMG);
|
let _ = std::fs::remove_file(defs::MODULE_UPDATE_TMP_IMG);
|
||||||
let _ = mount::umount_dir(defs::MODULE_UPDATE_TMP_DIR);
|
let _ = mount::umount_dir(defs::MODULE_UPDATE_TMP_DIR);
|
||||||
let _ = std::fs::remove_dir_all(defs::MODULE_UPDATE_TMP_DIR);
|
let _ = std::fs::remove_dir_all(defs::MODULE_UPDATE_TMP_DIR);
|
||||||
|
println!("- Error: {e}");
|
||||||
}
|
}
|
||||||
result
|
result
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user