Use LocalAppData for Windows credential cache
ci / test (push) Canceled after 0s
ci / fuzz-smoke (push) Canceled after 0s
ci / macos-client (macos-aarch64, macos-14) (push) Canceled after 0s
ci / macos-client (macos-x86_64, macos-13) (push) Canceled after 0s
ci / windows-client (push) Canceled after 0s
ci / package-release (linux-x86_64, ubuntu-latest, , , ) (push) Canceled after 0s
ci / package-release (macos-aarch64, macos-14, , , ) (push) Canceled after 0s
ci / package-release (macos-x86_64, macos-13, , , ) (push) Canceled after 0s
ci / package-release (windows-aarch64, windows-latest, aarch64, windows, aarch64-pc-windows-msvc) (push) Canceled after 0s
ci / package-release (windows-x86_64, windows-latest, , , ) (push) Canceled after 0s
ci / remote-bench (push) Canceled after 0s
ci / publish-gitea-release (push) Canceled after 0s

This commit is contained in:
DuProcess
2026-07-16 21:59:20 -04:00
parent b328854e1b
commit 808b4ca032
2 changed files with 13 additions and 1 deletions
+2 -1
View File
@@ -494,6 +494,7 @@ if ($ForceConfig -or -not (Test-Path $clientConfig)) {
$defaultServer = if ($Server) { $Server } else { "user@example.com" }
$updateRepo = if ($Repo) { $Repo } else { "https://git.palav.dev/Palav/dosh.git" }
$doshHostLine = if ($DoshHost) { "dosh_host = `"$DoshHost`"" } else { "# dosh_host = `"public.example.com`"" }
$credentialCache = if ($env:LOCALAPPDATA) { (Join-Path $env:LOCALAPPDATA "dosh\credentials").Replace('\', '/') } else { "~/.local/share/dosh/credentials" }
$clientToml = @"
update_repo = "$updateRepo"
update_port = $Port
@@ -508,7 +509,7 @@ view_only = false
predict = true
predict_mode = "experimental"
cache_attach_tickets = true
credential_cache = "~/.local/share/dosh/credentials"
credential_cache = "$credentialCache"
auth_preference = "native,ssh"
trust_on_first_use = false
native_auth_timeout_ms = 700
+11
View File
@@ -350,6 +350,17 @@ fn installers_generate_same_native_auth_client_defaults() {
}
}
#[test]
fn windows_installer_uses_native_credential_cache_path() {
let install = include_str!("../install.sh");
let ps1 = include_str!("../install.ps1");
assert!(install.contains("credential_cache = \"~/.local/share/dosh/credentials\""));
assert!(ps1.contains("$credentialCache = if ($env:LOCALAPPDATA)"));
assert!(ps1.contains("Join-Path $env:LOCALAPPDATA \"dosh\\credentials\""));
assert!(ps1.contains(".Replace('\\', '/')"));
assert!(ps1.contains("credential_cache = \"$credentialCache\""));
}
#[test]
fn windows_installer_generates_hosts_config_like_unix() {
let install = include_str!("../install.sh");