|
Bogdan Timofte
authored
2 weeks ago
|
1
|
#!/usr/bin/env bash
|
|
|
2
|
set -euo pipefail
|
|
|
3
|
|
|
|
4
|
project_root=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.." && pwd)
|
|
|
5
|
ssh_root=${SSH_ROOT:-"$HOME/.ssh"}
|
|
|
6
|
local_bin_root=${LOCAL_BIN_ROOT:-"$HOME/.local/bin"}
|
|
|
7
|
|
|
|
8
|
install -d -m 700 "$ssh_root"
|
|
|
9
|
install -d -m 700 "$local_bin_root"
|
|
|
10
|
|
|
|
11
|
"$project_root/tools/generate-configs.py"
|
|
|
12
|
|
|
|
13
|
install -m 600 "$project_root/generated/client.conf" "$ssh_root/config"
|
|
|
14
|
|
|
|
15
|
rm -f "$local_bin_root/ssh" "$local_bin_root/scp" "$local_bin_root/sftp"
|
|
|
16
|
install -m 700 "$project_root/scripts/ssh-wrapper.sh" "$local_bin_root/ssh"
|
|
|
17
|
install -m 755 "$project_root/scripts/scp-wrapper.sh" "$local_bin_root/scp"
|
|
|
18
|
install -m 755 "$project_root/scripts/sftp-wrapper.sh" "$local_bin_root/sftp"
|
|
|
19
|
|
|
|
20
|
rm -f "$ssh_root/scripts/ssh-wrapper.sh" "$ssh_root/scripts/scp-wrapper.sh" "$ssh_root/scripts/sftp-wrapper.sh"
|
|
|
21
|
rmdir --ignore-fail-on-non-empty "$ssh_root/scripts" 2>/dev/null || true
|
|
|
22
|
|
|
|
23
|
printf 'deployed SSH config to %s and wrappers to %s\n' "$ssh_root" "$local_bin_root"
|