fix: clarify SSH test failure
This commit is contained in:
@@ -546,8 +546,7 @@ extension GeneralSettings {
|
||||
timeout: 8)
|
||||
|
||||
guard sshResult.ok else {
|
||||
let msg = sshResult.message ?? "SSH check failed"
|
||||
self.remoteStatus = .failed(msg)
|
||||
self.remoteStatus = .failed(self.formatSSHFailure(sshResult))
|
||||
return
|
||||
}
|
||||
|
||||
@@ -588,6 +587,24 @@ extension GeneralSettings {
|
||||
return args
|
||||
}
|
||||
|
||||
private func formatSSHFailure(_ response: Response) -> String {
|
||||
let payload = response.payload.flatMap { String(data: $0, encoding: .utf8) }
|
||||
let trimmed = payload?
|
||||
.trimmingCharacters(in: .whitespacesAndNewlines)
|
||||
.split(whereSeparator: \.isNewline)
|
||||
.joined(separator: " ")
|
||||
if let trimmed, !trimmed.isEmpty {
|
||||
if let message = response.message, message.hasPrefix("exit ") {
|
||||
return "SSH check failed: \(trimmed) (\(message))"
|
||||
}
|
||||
return "SSH check failed: \(trimmed)"
|
||||
}
|
||||
if let message = response.message {
|
||||
return "SSH check failed (\(message))"
|
||||
}
|
||||
return "SSH check failed"
|
||||
}
|
||||
|
||||
private func revealLogs() {
|
||||
let target = LogLocator.bestLogFile()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user