From 1b6a71542b30e043364fa78cc7f5f1b09ab823cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B6nke=20Liebau?= Date: Tue, 14 Feb 2023 21:01:30 +0100 Subject: [PATCH 1/2] Make changes to become compatible with Crate2Nix --- rust/operator-binary/build.rs | 14 ++++++++++++-- rust/operator-binary/src/main.rs | 11 ++++++----- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/rust/operator-binary/build.rs b/rust/operator-binary/build.rs index d8f91cb..d6e8ee6 100644 --- a/rust/operator-binary/build.rs +++ b/rust/operator-binary/build.rs @@ -1,3 +1,13 @@ +use std::path::PathBuf; + fn main() { - built::write_built_file().expect("Failed to acquire build-time information"); -} + let out_dir = PathBuf::from(std::env::var("OUT_DIR").expect("OUT_DIR is required")); + built::write_built_file_with_opts( + // built's env module depends on a whole bunch of variables that crate2nix doesn't provide + // so we grab the specific env variables that we care about out ourselves instead. + built::Options::default().set_env(false), + "Cargo.toml".as_ref(), + &out_dir.join("built.rs"), + ) + .unwrap(); +} \ No newline at end of file diff --git a/rust/operator-binary/src/main.rs b/rust/operator-binary/src/main.rs index e7fb9d4..ba8f89a 100644 --- a/rust/operator-binary/src/main.rs +++ b/rust/operator-binary/src/main.rs @@ -4,7 +4,7 @@ mod restart_controller; use futures::pin_mut; use stackable_operator::cli::{Command, ProductOperatorRun}; -use clap::Parser; +use clap::{crate_description, crate_version, Parser}; use stackable_operator::commons::{ authentication::AuthenticationClass, s3::{S3Bucket, S3Connection}, @@ -13,10 +13,11 @@ use stackable_operator::CustomResourceExt; mod built_info { include!(concat!(env!("OUT_DIR"), "/built.rs")); + pub const TARGET_PLATFORM: Option<&str> = option_env!("TARGET"); } #[derive(Parser)] -#[clap(about = built_info::PKG_DESCRIPTION, author = stackable_operator::cli::AUTHOR)] +#[clap(about, author)] struct Opts { #[clap(subcommand)] cmd: Command, @@ -42,10 +43,10 @@ async fn main() -> anyhow::Result<()> { tracing_target, ); stackable_operator::utils::print_startup_string( - built_info::PKG_DESCRIPTION, - built_info::PKG_VERSION, + crate_description!(), + crate_version!(), built_info::GIT_VERSION, - built_info::TARGET, + built_info::TARGET_PLATFORM.unwrap_or("unknown target"), built_info::BUILT_TIME_UTC, built_info::RUSTC_VERSION, ); From b53cd049e7387c7c16ce6a667f9d46445296e994 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B6nke=20Liebau?= Date: Tue, 14 Feb 2023 22:27:52 +0100 Subject: [PATCH 2/2] rustfmt --- rust/operator-binary/build.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rust/operator-binary/build.rs b/rust/operator-binary/build.rs index d6e8ee6..ed36fcf 100644 --- a/rust/operator-binary/build.rs +++ b/rust/operator-binary/build.rs @@ -9,5 +9,5 @@ fn main() { "Cargo.toml".as_ref(), &out_dir.join("built.rs"), ) - .unwrap(); -} \ No newline at end of file + .unwrap(); +}