diff options
| author | Valentin Popov <valentin@popov.link> | 2026-06-23 22:48:31 +0300 |
|---|---|---|
| committer | Valentin Popov <valentin@popov.link> | 2026-06-23 22:48:31 +0300 |
| commit | ed2b540abfc3166285fbc986f4c6427a59173d23 (patch) | |
| tree | 567468278182b7d72f7833635c6f9ed6cb0819f2 /apps/fparkan-vulkan-smoke/src | |
| parent | 00ae9067d89a8e8eaa0238e8131ed2aee8121d4d (diff) | |
| download | fparkan-ed2b540abfc3166285fbc986f4c6427a59173d23.tar.xz fparkan-ed2b540abfc3166285fbc986f4c6427a59173d23.zip | |
feat: add target triple to native smoke report
Diffstat (limited to 'apps/fparkan-vulkan-smoke/src')
| -rw-r--r-- | apps/fparkan-vulkan-smoke/src/main.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/apps/fparkan-vulkan-smoke/src/main.rs b/apps/fparkan-vulkan-smoke/src/main.rs index 5c0e7e3..088054c 100644 --- a/apps/fparkan-vulkan-smoke/src/main.rs +++ b/apps/fparkan-vulkan-smoke/src/main.rs @@ -523,6 +523,7 @@ fn render_smoke_report_json( " \"schema_version\": \"{}\",\n", " \"commit_sha\": \"{}\",\n", " \"rust_toolchain\": \"{}\",\n", + " \"target_triple\": \"{}\",\n", " \"platform\": \"{}\",\n", " \"status\": \"{}\",\n", " \"frames\": {},\n", @@ -548,6 +549,7 @@ fn render_smoke_report_json( SCHEMA_VERSION, json_escape(¤t_git_commit_sha()), RUST_TOOLCHAIN, + json_escape(¤t_rustc_host_triple()), options.platform.as_str(), options.status.as_str(), options.frames, @@ -594,6 +596,22 @@ fn current_git_commit_sha() -> String { .unwrap_or_else(|| "unknown".to_string()) } +fn current_rustc_host_triple() -> String { + Command::new("rustc") + .arg("-vV") + .output() + .ok() + .filter(|output| output.status.success()) + .and_then(|output| String::from_utf8(output.stdout).ok()) + .and_then(|output| { + output + .lines() + .find_map(|line| line.strip_prefix("host: ").map(ToString::to_string)) + }) + .filter(|value| !value.trim().is_empty()) + .unwrap_or_else(|| "unknown".to_string()) +} + fn json_string(value: &str) -> String { format!("\"{}\"", json_escape(value)) } @@ -952,6 +970,7 @@ mod tests { )?; assert!(json.contains("\"schema_version\": \"fparkan-native-smoke-v1\"")); + assert!(json.contains("\"target_triple\": \"")); assert!(json.contains("\"platform\": \"macos\"")); assert!(json.contains("\"status\": \"blocked\"")); assert!(json.contains("\"swapchain_recreate_count\": 0")); @@ -1030,4 +1049,9 @@ mod tests { fn formats_vulkan_api_version() { assert_eq!(format_api_version((1 << 22) | (3 << 12) | 280), "1.3.280"); } + + #[test] + fn reports_rustc_host_triple() { + assert!(!current_rustc_host_triple().trim().is_empty()); + } } |
