Bläddra i källkod

breaking: ci output path

Samuka007 1 månad sedan
förälder
incheckning
44ad31d790

+ 12 - 0
dadk-config/src/common/target_arch.rs

@@ -1,3 +1,5 @@
+use std::fmt::Display;
+
 use serde::{Deserialize, Deserializer, Serialize};
 
 /// 目标处理器架构
@@ -72,6 +74,16 @@ impl Serialize for TargetArch {
     }
 }
 
+impl Display for TargetArch {
+    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+        match self {
+            TargetArch::X86_64 => write!(f, "x86_64"),
+            TargetArch::RiscV64 => write!(f, "riscv64"),
+            TargetArch::AArch64 => write!(f, "aarch64"),
+        }
+    }
+}
+
 #[cfg(test)]
 mod tests {
     use super::*;

+ 2 - 2
dadk-config/templates/dadk-manifest.toml

@@ -15,10 +15,10 @@ rootfs-config = "config/rootfs.toml"
 boot-config = "config/boot.toml"
 
 # System root directory folder (DADK will copy the files in this directory to the root directory of the disk image)
-sysroot-dir = "bin/sysroot"
+sysroot-dir = "bin/x86_64/sysroot"
 
 # DADK Root Cache directory path
-cache-root-dir = "bin/dadk_cache"
+cache-root-dir = "bin/x86_64/dadk_cache"
 
 # User configuration directory path
 # 这个字段只是临时用于兼容旧版本,v0.2版本重构完成后会删除

+ 5 - 5
dadk/src/actions/rootfs/loopdev.rs

@@ -130,7 +130,7 @@ impl LoopDevice {
             p.display(),
             p.exists()
         );
-        let kpart_detach = Command::new("kpartx")
+        let _kpart_detach = Command::new("kpartx")
             .arg("-dv")
             .arg(&loop_device)
             .output()?;
@@ -253,11 +253,11 @@ mod tests {
 
     #[test]
     fn test_parse_losetup_a_output() {
-        let losetup_a_output = r#"/dev/loop1: []: (/data/bin/disk-image-x86_64.img)
+        let losetup_a_output = r#"/dev/loop1: []: (/data/bin/x86_64/disk.img)
 /dev/loop29: []: (/var/lib/abc.img)
 /dev/loop13: []: (/var/lib/snapd/snaps/gtk-common-themes_1535.snap
 /dev/loop19: []: (/var/lib/snapd/snaps/gnome-42-2204_172.snap)"#;
-        let disk_img_path = "/data/bin/disk-image-x86_64.img";
+        let disk_img_path = "/data/bin/x86_64/disk.img";
         let loop_device_path =
             __loop_device_path_by_disk_image_path(disk_img_path, losetup_a_output).unwrap();
         assert_eq!(loop_device_path, "/dev/loop1");
@@ -265,11 +265,11 @@ mod tests {
 
     #[test]
     fn test_parse_lsblk_output_not_match() {
-        let losetup_a_output = r#"/dev/loop1: []: (/data/bin/disk-image-x86_64.img)
+        let losetup_a_output = r#"/dev/loop1: []: (/data/bin/x86_64/disk.img)
 /dev/loop29: []: (/var/lib/abc.img)
 /dev/loop13: []: (/var/lib/snapd/snaps/gtk-common-themes_1535.snap
 /dev/loop19: []: (/var/lib/snapd/snaps/gnome-42-2204_172.snap)"#;
-        let disk_img_path = "/data/bin/disk-image-riscv64.img";
+        let disk_img_path = "/data/bin/riscv64/disk.img";
         let loop_device_path =
             __loop_device_path_by_disk_image_path(disk_img_path, losetup_a_output);
         assert!(

+ 1 - 1
dadk/src/console/profile.rs

@@ -16,7 +16,7 @@ pub struct ProfileSampleArgs {
     #[clap(
         long = "kernel",
         help = "Path to the kernel image to use",
-        default_value = "./bin/kernel/kernel.elf"
+        // default_value = "./bin/kernel/kernel.elf"
     )]
     pub kernel: PathBuf,
     #[clap(

+ 2 - 7
dadk/src/context/mod.rs

@@ -95,18 +95,13 @@ impl DADKExecContext {
     /// 获取磁盘镜像的路径,路径由工作目录、架构和固定文件名组成
     pub fn disk_image_path(&self) -> PathBuf {
         self.workdir()
-            .join(format!("bin/{}.img", self.disk_image_basename()))
+            .join(format!("bin/{}/disk.img", self.target_arch()))
     }
 
     /// 获取磁盘挂载路径
     pub fn disk_mount_path(&self) -> PathBuf {
         self.workdir()
-            .join(format!("bin/mnt/{}", self.disk_image_basename()))
-    }
-
-    fn disk_image_basename(&self) -> String {
-        let arch: String = self.target_arch().into();
-        format!("disk-image-{}", arch)
+            .join(format!("bin/{}/mnt", self.target_arch()))
     }
 
     /// 获取磁盘镜像大小