Skip to content

Commit

Permalink
fix(rust): usage of compile time ockam home env var
Browse files Browse the repository at this point in the history
  • Loading branch information
adrianbenavides committed Jan 30, 2025
1 parent d59dbfc commit d7b5c53
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 12 deletions.
2 changes: 1 addition & 1 deletion implementations/rust/ockam/ockam_command/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ fn binary_name() {
println!("cargo:rustc-env=COMPILE_OCKAM_COMMAND_SUPPORT_EMAIL={support_email}");
println!("cargo:rerun-if-env-changed=COMPILE_OCKAM_COMMAND_SUPPORT_EMAIL");

let home_dir = env::var("COMPILE_OCKAM_HOME").unwrap_or(format!("$HOME/.{}", bin_name));
let home_dir = env::var("COMPILE_OCKAM_HOME").unwrap_or("".to_string());
println!("cargo:rustc-env=COMPILE_OCKAM_HOME={home_dir}");
println!("cargo:rerun-if-env-changed=COMPILE_OCKAM_HOME");

Expand Down
29 changes: 18 additions & 11 deletions implementations/rust/ockam/ockam_command/src/bin/brand.rs
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ fn build_binary(bin_name: String, brand_settings: Brand, dry_run: bool) -> Resul
}
let commands = brand_settings.commands();
let brand_name = brand_settings.brand_name(&bin_name);
let home_dir = brand_settings.home_dir(&bin_name);
cmd.envs([
(COMPILE_OCKAM_DEVELOPER, "false".to_string()),
(
Expand All @@ -85,10 +86,7 @@ fn build_binary(bin_name: String, brand_settings: Brand, dry_run: bool) -> Resul
),
(COMPILE_OCKAM_COMMAND_BIN_NAME, bin_name.clone()),
(COMPILE_OCKAM_COMMAND_BRAND_NAME, brand_name),
(
COMPILE_OCKAM_HOME,
brand_settings.home_dir.unwrap_or_default(),
),
(COMPILE_OCKAM_HOME, home_dir),
(
COMPILE_OCKAM_CONTROLLER_IDENTIFIER,
brand_settings
Expand Down Expand Up @@ -161,6 +159,16 @@ impl Brand {
}
}

fn home_dir(&self, bin_name: &str) -> String {
match &self.home_dir {
Some(home_dir) => home_dir.clone(),
None => Path::new("$HOME")
.join(bin_name)
.to_string_lossy()
.to_string(),
}
}

fn commands(&self) -> String {
match &self.commands {
None => String::new(),
Expand Down Expand Up @@ -310,7 +318,6 @@ mod tests {
- "node create": "init"
bin2:
support_email: [email protected]
brand_name: Brand2
build_args:
- --release
- --target
Expand All @@ -319,19 +326,19 @@ mod tests {
let parsed: Config = serde_yaml::from_str(config).unwrap();
assert_eq!(parsed.items.len(), 2);
assert_eq!(parsed.items["bin1"].brand_name.as_deref(), Some("Brand1"));
assert_eq!(parsed.items["bin2"].brand_name.as_deref(), Some("Brand2"));

let processed = parsed.clone();
assert_eq!(parsed.items["bin2"].brand_name, None);

// No defaults used, should be the same as parsed
let bin1 = &processed.items["bin1"];
let bin1 = &parsed.items["bin1"];
assert_eq!(&parsed.items["bin1"], bin1);

// Check bin2 defaults
let bin2 = &processed.items["bin2"];
let bin2 = &parsed.items["bin2"];
assert_eq!(bin2.support_email, "[email protected]");
assert_eq!(bin2.brand_name.as_deref(), Some("Brand2"));
assert_eq!(bin2.brand_name, None);
assert_eq!(bin2.brand_name("bin2"), "Bin2");
assert_eq!(bin2.home_dir.as_ref(), None);
assert_eq!(bin2.home_dir("bin2"), "$HOME/bin2");
assert_eq!(bin2.orchestrator_identifier, None);
assert_eq!(bin2.orchestrator_address.as_deref(), None);
assert_eq!(bin2.commands.as_deref(), None);
Expand Down

0 comments on commit d7b5c53

Please sign in to comment.