spcd/bootstrap.sh

46 lines
849 B
Bash
Raw Normal View History

2024-03-25 18:59:12 +00:00
FILE="$(realpath "${BASH_SOURCE[0]}")"
ROOT="$(dirname "${FILE}")"
2024-03-25 19:49:12 +00:00
COMMANDS='cmd'
2024-03-25 11:53:37 +00:00
KEY_ALGORITHM='ed25519'
2024-03-25 14:47:24 +00:00
KEY_DIRECTORY='.ssh'
KEY_PATH="${KEY_DIRECTORY}/id_${KEY_ALGORITHM}"
2024-03-25 11:53:37 +00:00
KEY_PUBLIC='AAAAC3NzaC1lZDI1NTE5AAAAIPHCNcgHlQoiNTXfnUZYvHz9OZwYsmBCrSSV7a7Zche5'
PACKAGES=(
2024-04-08 09:45:40 +00:00
'openssh-client'
2024-03-25 11:53:37 +00:00
'python3'
'rsync'
'tree'
)
SERVER="$(basename ${GITHUB_SERVER_URL})"
2024-03-25 18:59:12 +00:00
TARGET='/usr/local/sbin'
# commands
2024-03-25 19:49:12 +00:00
cd "${ROOT}/${COMMANDS}" \
2024-03-25 18:59:12 +00:00
|| exit
for file in *.sh ; do
2024-03-25 19:52:27 +00:00
cp "${file}" "${TARGET}/${file%.sh}" \
2024-03-25 18:59:12 +00:00
|| exit
done
2024-03-25 11:53:37 +00:00
2024-03-23 08:39:00 +00:00
# ssh
2024-03-25 14:47:24 +00:00
cd \
|| exit
mkdir "${KEY_DIRECTORY}" \
2024-03-25 11:53:37 +00:00
|| exit
echo "${CD}" > "${KEY_PATH}" \
|| exit
2024-03-22 23:59:39 +00:00
unset CD
2024-03-25 11:53:37 +00:00
chmod '400' "${KEY_PATH}" \
|| exit
2024-03-25 14:42:26 +00:00
echo "${SERVER} ssh-${KEY_ALGORITHM} ${KEY_PUBLIC}" \
2024-03-25 14:47:24 +00:00
> "${KEY_DIRECTORY}/known_hosts" \
2024-03-25 11:53:37 +00:00
|| exit
2024-03-23 08:52:09 +00:00
2024-03-23 11:10:20 +00:00
# packages
2024-03-25 19:03:02 +00:00
apt-get install --yes "${PACKAGES[@]}" \
|| exit
# remove
rm --force --recursive "${ROOT}"