use ructe::{Result, Ructe}; use std::process::Command; fn main() -> Result<()> { Ructe::from_env()?.compile_templates("templates")?; let output = Command::new("git") .args(&["rev-parse", "HEAD"]) .output() .unwrap(); let out = std::env::var("out").unwrap_or("/fake".into()); println!("cargo:rustc-env=out={}", out); let git_hash = String::from_utf8(output.stdout).unwrap(); println!( "cargo:rustc-env=GITHUB_SHA={}", if git_hash.as_str() == "" { out.into() } else { git_hash } ); Ok(()) }