From 4c01f2c2464f4133cb48125c8f2c55827cf0bf67 Mon Sep 17 00:00:00 2001 From: Hermes Agent Date: Wed, 12 Aug 2026 04:54:43 +0000 Subject: Validate APT config before creating build workspace --- src/build.rs | 2 +- src/package_installer.rs | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/build.rs b/src/build.rs index 4439d2f..42c57ef 100644 --- a/src/build.rs +++ b/src/build.rs @@ -50,9 +50,9 @@ impl BuildExecutor { bail!("artifact parent is not a directory: {}", parent.display()); } + let request = plan.package_request(workspace, apt_config)?; std::fs::create_dir_all(workspace) .with_context(|| format!("create workspace {}", workspace.display()))?; - let request = plan.package_request(workspace, apt_config)?; self.installer.install(&request)?; let rootfs = workspace.join("chroot"); diff --git a/src/package_installer.rs b/src/package_installer.rs index c5c6451..03e429f 100644 --- a/src/package_installer.rs +++ b/src/package_installer.rs @@ -11,6 +11,9 @@ impl AptConfig { if path.as_os_str().is_empty() || path.is_dir() { bail!("APT configuration must be a file path: {}", path.display()); } + if !path.is_file() { + bail!("APT configuration does not exist or is not a regular file: {}", path.display()); + } Ok(Self(path.to_path_buf())) } -- cgit v1.2.3