zarya/lib/ssh.sh

17 lines
443 B
Bash

#!/bin/bash
set -euo pipefail
ssh_register_node() {
local alias="$1"
local ip="$2"
local config_file="${HOME}/.ssh/config"
if [[ ! -f "${config_file}" ]]; then
touch "${config_file}"
chmod 600 "${config_file}"
fi
if ! grep -q "Host.*[[:space:]]${alias}\([[:space:]]\|$\)" "${config_file}" 2>/dev/null; then
printf "\nHost %s\n Hostname %s\n" "${alias}" "${ip}" >> "${config_file}"
fi
}