mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2024-08-22 07:51:16 +00:00
The report contains the test results with commit hash and date. Signed-off-by: Bo Chen <chen.bo@intel.com>
37 lines
1.2 KiB
Rust
37 lines
1.2 KiB
Rust
// Copyright © 2020 Intel Corporation
|
|
//
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
//
|
|
|
|
#[macro_use(crate_version)]
|
|
extern crate clap;
|
|
|
|
use std::process::Command;
|
|
|
|
fn main() {
|
|
let mut git_human_readable = "v".to_owned() + crate_version!();
|
|
if let Ok(git_out) = Command::new("git").args(&["describe", "--dirty"]).output() {
|
|
if git_out.status.success() {
|
|
if let Ok(git_out_str) = String::from_utf8(git_out.stdout) {
|
|
git_human_readable = git_out_str;
|
|
}
|
|
}
|
|
}
|
|
|
|
let mut git_revision = "".to_string();
|
|
if let Ok(git_out) = Command::new("git").args(&["rev-parse", "HEAD"]).output() {
|
|
if git_out.status.success() {
|
|
if let Ok(git_out_str) = String::from_utf8(git_out.stdout) {
|
|
git_revision = git_out_str;
|
|
}
|
|
}
|
|
}
|
|
|
|
// This println!() has a special behavior, as it will set the environment
|
|
// variable GIT_human_readable, so that it can be reused from the binary.
|
|
// Particularly, this is used from the main.rs to display the exact
|
|
// version information.
|
|
println!("cargo:rustc-env=GIT_HUMAN_READABLE={}", git_human_readable);
|
|
println!("cargo:rustc-env=GIT_REVISION={}", git_revision);
|
|
}
|