MCPcopy Create free account
hub / github.com/Nariod/RustPacker / build_builder_image

Function build_builder_image

src/compiler.rs:39–61  ·  view source on GitHub ↗
(runtime: &str)

Source from the content-addressed store, hash-verified

37}
38
39fn build_builder_image(runtime: &str) -> Result<(), Box<dyn std::error::Error>> {
40 println!("[+] Building {} image (first run only)...", BUILDER_IMAGE);
41
42 let temp_dir = env::temp_dir().join("rustpacker-builder");
43 fs::create_dir_all(&temp_dir)?;
44 let dockerfile = temp_dir.join("Dockerfile");
45 fs::write(&dockerfile, BUILDER_DOCKERFILE)?;
46
47 let output = Command::new(runtime)
48 .args(["build", "-t", BUILDER_IMAGE, "-f"])
49 .arg(&dockerfile)
50 .arg(&temp_dir)
51 .output()?;
52
53 fs::remove_dir_all(&temp_dir).ok();
54
55 if !output.status.success() {
56 let err = String::from_utf8_lossy(&output.stderr);
57 return Err(format!("Failed to build {}: {}", BUILDER_IMAGE, err).into());
58 }
59
60 Ok(())
61}
62
63fn ensure_builder_image(runtime: &str) -> Result<(), Box<dyn std::error::Error>> {
64 if !image_exists(runtime) {

Callers 1

ensure_builder_imageFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected