Expose build identity in version output
ci / test (push) Has been cancelled
ci / fuzz-smoke (push) Has been cancelled
ci / windows-client (push) Has been cancelled
ci / package-release (linux-x86_64, ubuntu-latest) (push) Has been cancelled
ci / package-release (macos-aarch64, macos-14) (push) Has been cancelled
ci / package-release (macos-x86_64, macos-13) (push) Has been cancelled
ci / package-release (windows-x86_64, windows-latest) (push) Has been cancelled
ci / remote-bench (push) Has been cancelled
ci / test (push) Has been cancelled
ci / fuzz-smoke (push) Has been cancelled
ci / windows-client (push) Has been cancelled
ci / package-release (linux-x86_64, ubuntu-latest) (push) Has been cancelled
ci / package-release (macos-aarch64, macos-14) (push) Has been cancelled
ci / package-release (macos-x86_64, macos-13) (push) Has been cancelled
ci / package-release (windows-x86_64, windows-latest) (push) Has been cancelled
ci / remote-bench (push) Has been cancelled
This commit is contained in:
Generated
+1
-1
@@ -436,7 +436,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "dosh"
|
||||
version = "0.1.1"
|
||||
version = "0.1.2"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"base64",
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "dosh"
|
||||
version = "0.1.1"
|
||||
version = "0.1.2"
|
||||
edition = "2024"
|
||||
license = "MIT"
|
||||
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
use std::process::Command;
|
||||
|
||||
fn git(args: &[&str]) -> Option<String> {
|
||||
let output = Command::new("git").args(args).output().ok()?;
|
||||
if !output.status.success() {
|
||||
return None;
|
||||
}
|
||||
let text = String::from_utf8(output.stdout).ok()?;
|
||||
Some(text.trim().to_string())
|
||||
}
|
||||
|
||||
fn main() {
|
||||
println!("cargo:rerun-if-changed=.git/HEAD");
|
||||
println!("cargo:rerun-if-changed=.git/index");
|
||||
|
||||
let hash = git(&["rev-parse", "--short=12", "HEAD"]).unwrap_or_else(|| "unknown".into());
|
||||
let date = git(&["show", "-s", "--format=%cs", "HEAD"]).unwrap_or_else(|| "unknown".into());
|
||||
let dirty = Command::new("git")
|
||||
.args(["diff", "--quiet", "--ignore-submodules", "--"])
|
||||
.status()
|
||||
.map(|status| if status.success() { "" } else { "+dirty" })
|
||||
.unwrap_or("");
|
||||
|
||||
println!("cargo:rustc-env=DOSH_GIT_HASH={hash}{dirty}");
|
||||
println!("cargo:rustc-env=DOSH_COMMIT_DATE={date}");
|
||||
}
|
||||
@@ -5,6 +5,11 @@ use dosh::config::load_server_config;
|
||||
use dosh::native::{host_public_key, host_public_key_line, load_or_create_host_key};
|
||||
|
||||
#[derive(Debug, Parser)]
|
||||
#[command(
|
||||
name = "dosh-auth",
|
||||
version = dosh::build_info::VERSION,
|
||||
long_version = dosh::build_info::LONG_VERSION
|
||||
)]
|
||||
struct Args {
|
||||
#[arg(long, default_value_t = 1)]
|
||||
protocol: u8,
|
||||
|
||||
@@ -11,7 +11,11 @@ use std::sync::mpsc;
|
||||
use std::time::{Duration, Instant};
|
||||
|
||||
#[derive(Debug, Parser)]
|
||||
#[command(name = "dosh-bench")]
|
||||
#[command(
|
||||
name = "dosh-bench",
|
||||
version = dosh::build_info::VERSION,
|
||||
long_version = dosh::build_info::LONG_VERSION
|
||||
)]
|
||||
struct Args {
|
||||
#[arg(long, default_value = "local")]
|
||||
server: String,
|
||||
|
||||
@@ -69,7 +69,11 @@ fn terminal_size() -> (u16, u16) {
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Parser)]
|
||||
#[command(name = "dosh-client", version)]
|
||||
#[command(
|
||||
name = "dosh-client",
|
||||
version = dosh::build_info::VERSION,
|
||||
long_version = dosh::build_info::LONG_VERSION
|
||||
)]
|
||||
struct Args {
|
||||
#[arg()]
|
||||
server: Option<String>,
|
||||
|
||||
@@ -51,7 +51,11 @@ static AGENT_SOCK_COUNTER: AtomicU64 = AtomicU64::new(0);
|
||||
const NATIVE_HANDSHAKE_TTL_SECS: u64 = 30;
|
||||
|
||||
#[derive(Debug, Parser)]
|
||||
#[command(name = "dosh-server")]
|
||||
#[command(
|
||||
name = "dosh-server",
|
||||
version = dosh::build_info::VERSION,
|
||||
long_version = dosh::build_info::LONG_VERSION
|
||||
)]
|
||||
struct Args {
|
||||
#[command(subcommand)]
|
||||
command: Command,
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
pub const VERSION: &str = env!("CARGO_PKG_VERSION");
|
||||
pub const GIT_HASH: &str = env!("DOSH_GIT_HASH");
|
||||
pub const COMMIT_DATE: &str = env!("DOSH_COMMIT_DATE");
|
||||
pub const LONG_VERSION: &str = concat!(
|
||||
env!("CARGO_PKG_VERSION"),
|
||||
" (",
|
||||
env!("DOSH_GIT_HASH"),
|
||||
", ",
|
||||
env!("DOSH_COMMIT_DATE"),
|
||||
")"
|
||||
);
|
||||
@@ -1,4 +1,5 @@
|
||||
pub mod auth;
|
||||
pub mod build_info;
|
||||
pub mod config;
|
||||
pub mod crypto;
|
||||
pub mod native;
|
||||
|
||||
Reference in New Issue
Block a user