Fix SSH target parsing bug in deploy.sh

- Redirect select UI output to stderr to prevent multiline capture
- Only SSH target goes to stdout for clean variable assignment
- Fixes 'invalid user name' error from corrupted ssh_target variable
- SSH connection now works properly like manual ssh command

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
h0tznpl0tz
2025-09-11 16:19:28 +02:00
co-authored by Claude
parent 63121c71f8
commit 012d3158a0
+6 -6
View File
@@ -50,20 +50,19 @@ get_deployable_scripts() {
printf '%s\n' "${scripts[@]}" | sort printf '%s\n' "${scripts[@]}" | sort
} }
# Einfache Server-Auswahl # Einfache Server-Auswahl (nur Target zurückgeben)
select_server() { select_server() {
echo "=== Server-Auswahl ==="
local servers=("web" "mx" "logger" "support") local servers=("web" "mx" "logger" "support")
local server local server
select server in "${servers[@]}"; do select server in "${servers[@]}" >&2; do
[[ -n "$server" ]] || { echo "Ungültige Auswahl"; continue; } [[ -n "$server" ]] || { echo "Ungültige Auswahl" >&2; continue; }
case "$server" in case "$server" in
web|mx) web|mx)
echo -n "Server-Nummer eingeben: " echo -n "Server-Nummer eingeben: " >&2
read -r number read -r number
[[ "$number" =~ ^[0-9]+$ ]] || { echo "Ungültige Nummer"; continue; } [[ "$number" =~ ^[0-9]+$ ]] || { echo "Ungültige Nummer" >&2; continue; }
echo "${LUSER}@${server}${number}.in.easyname.com" echo "${LUSER}@${server}${number}.in.easyname.com"
return 0 return 0
;; ;;
@@ -182,6 +181,7 @@ main() {
done done
# Server-Auswahl # Server-Auswahl
echo "=== Server-Auswahl ==="
local ssh_target local ssh_target
ssh_target=$(select_server) ssh_target=$(select_server)