diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index e2dad6e5..51a64668 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -10,7 +10,8 @@ body: The full command line used that causes issues: OS version: Rust version (if self-compiling, `cargo version`): - Model being used (If local model please explicit the kind of model and/or equivalents): + Model being used (`curl 127.0.0.1:8080/info | jq`): + If local model please explicit the kind of model and/or equivalents. Hardware used (GPUs, how many, on which cloud) (`nvidia-smi`): Deployment specificities (Kubernetes, EKS, AKS, any particular deployments): The current version being used: diff --git a/.gitignore b/.gitignore index fe0157d7..19604d42 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ .idea target router/tokenizer.json -launcher/src/versions.rs diff --git a/Cargo.lock b/Cargo.lock index e240fe9f..58142d4b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1428,6 +1428,15 @@ dependencies = [ "minimal-lexical", ] +[[package]] +name = "ntapi" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +dependencies = [ + "winapi", +] + [[package]] name = "nu-ansi-term" version = "0.46.0" @@ -2063,6 +2072,15 @@ dependencies = [ "walkdir", ] +[[package]] +name = "rustc_version" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +dependencies = [ + "semver", +] + [[package]] name = "rustix" version = "0.37.11" @@ -2136,6 +2154,12 @@ dependencies = [ "libc", ] +[[package]] +name = "semver" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" + [[package]] name = "serde" version = "1.0.160" @@ -2345,6 +2369,20 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" +[[package]] +name = "sysinfo" +version = "0.28.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c2f3ca6693feb29a89724516f016488e9aafc7f37264f898593ee4b942f31b" +dependencies = [ + "cfg-if", + "core-foundation-sys", + "libc", + "ntapi", + "once_cell", + "winapi", +] + [[package]] name = "tar" version = "0.4.38" @@ -2399,6 +2437,7 @@ dependencies = [ "subprocess", "tracing", "tracing-subscriber", + "vergen", ] [[package]] @@ -2985,7 +3024,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c1b86a8af1dedf089b1c78338678e4c7492b6045649042d94faf19690499d236" dependencies = [ "anyhow", + "rustc_version", "rustversion", + "sysinfo", "time", ] diff --git a/launcher/Cargo.toml b/launcher/Cargo.toml index 5944a360..885dcd98 100644 --- a/launcher/Cargo.toml +++ b/launcher/Cargo.toml @@ -17,3 +17,6 @@ tracing-subscriber = { version = "0.3.16", features = ["json"] } [dev-dependencies] float_eq = "1.0.1" reqwest = { version = "0.11.14", features = ["blocking", "json"] } + +[build-dependencies] +vergen = { version = "8.0.0", features = ["build", "cargo", "git", "gitcl", "rustc", "si"] } diff --git a/launcher/build.rs b/launcher/build.rs index 83cbd6c8..e777b049 100644 --- a/launcher/build.rs +++ b/launcher/build.rs @@ -1,24 +1,12 @@ -use std::fs::File; -use std::io::Write; -use std::process::Command; +use std::error::Error; +use vergen::EmitBuilder; -pub fn cargo_version() -> Option { - let output = Command::new("cargo").args(&["version"]).output().ok()?; - let output = String::from_utf8(output.stdout).ok()?; - Some(output.trim().to_string()) -} - -fn main() { - let output = Command::new("git") - .args(&["rev-parse", "HEAD"]) - .output() - .unwrap(); - let git_hash = String::from_utf8(output.stdout).unwrap().trim().to_string(); - - let cargo_version = cargo_version().unwrap_or("N/A".to_string()); - let mut file = File::create("src/versions.rs").unwrap(); - file.write(format!("pub static GIT_HASH: &str = \"{git_hash}\";\n").as_bytes()) - .unwrap(); - file.write(format!(r#"pub static CARGO_VERSION: &str = "{cargo_version}";"#).as_bytes()) - .unwrap(); +fn main() -> Result<(), Box> { + // Emit the instructions + EmitBuilder::builder() + .all_cargo() + .all_git() + .all_rustc() + .emit()?; + Ok(()) } diff --git a/launcher/src/env_cli.rs b/launcher/src/env_cli.rs index 55436dad..29243293 100644 --- a/launcher/src/env_cli.rs +++ b/launcher/src/env_cli.rs @@ -23,8 +23,9 @@ pub fn docker_image() -> Option { } pub fn print_env() { - println!("Cargo version: {}", crate::versions::CARGO_VERSION); - println!("Commit SHA: {}", crate::versions::GIT_HASH); + println!("Target: {}", env!("VERGEN_CARGO_TARGET_TRIPLE")); + println!("Cargo version: {}", env!("VERGEN_RUSTC_SEMVER")); + println!("Commit SHA: {}", env!("VERGEN_GIT_SHA")); println!( "Docker image sha: {}", docker_image().unwrap_or("N/A".to_string()) diff --git a/launcher/src/main.rs b/launcher/src/main.rs index 63325f67..87ff47b8 100644 --- a/launcher/src/main.rs +++ b/launcher/src/main.rs @@ -15,7 +15,6 @@ use std::{fs, io}; use subprocess::{ExitStatus, Popen, PopenConfig, PopenError, Redirection}; mod env_cli; -mod versions; /// App Configuration #[derive(Parser, Debug)]