ops: add dr workstation readiness check
This commit is contained in:
Executable
+41
@@ -0,0 +1,41 @@
|
||||
#!/bin/bash
|
||||
# DR-Workstation Quartals-Smoke
|
||||
#
|
||||
# Prueft Git-Read, Hetzner-SSH und Borg-Repo-Erreichbarkeit vom Operator-PC.
|
||||
# Speichert keine Passphrase. Borg fragt interaktiv nach der Repo-Passphrase.
|
||||
set -euo pipefail
|
||||
|
||||
GITHUB_KEY="${GITHUB_KEY:-$HOME/.ssh/dr-readonly}"
|
||||
HETZNER_KEY="${HETZNER_KEY:-$HOME/.ssh/dr-hetzner}"
|
||||
GITHUB_REPO="${GITHUB_REPO:-git@github.com:michaelkaleschke-spec/homelab-infra.git}"
|
||||
BORG_REPO="${BORG_REPO:-ssh://u565255@u565255.your-storagebox.de/./hetzner_borg_appdata_critical}"
|
||||
|
||||
echo "=== Tooling ==="
|
||||
command -v ssh
|
||||
command -v git
|
||||
command -v borg
|
||||
borg --version
|
||||
echo
|
||||
|
||||
echo "=== Key files ==="
|
||||
test -r "$GITHUB_KEY" || { echo "Missing GitHub key: $GITHUB_KEY" >&2; exit 1; }
|
||||
test -r "$HETZNER_KEY" || { echo "Missing Hetzner key: $HETZNER_KEY" >&2; exit 1; }
|
||||
ls -l "$GITHUB_KEY" "$HETZNER_KEY"
|
||||
echo
|
||||
|
||||
echo "=== GitHub Deploy-Key ==="
|
||||
GIT_SSH_COMMAND="ssh -i $GITHUB_KEY -o IdentitiesOnly=yes -o BatchMode=yes" \
|
||||
git ls-remote "$GITHUB_REPO" HEAD
|
||||
echo
|
||||
|
||||
echo "=== Hetzner SSH-Login ==="
|
||||
ssh -i "$HETZNER_KEY" -o IdentitiesOnly=yes -o BatchMode=yes -p 23 \
|
||||
u565255@u565255.your-storagebox.de "ls" | head -5
|
||||
echo
|
||||
|
||||
echo "=== Borg-Repo ==="
|
||||
export BORG_RSH="ssh -i $HETZNER_KEY -o IdentitiesOnly=yes -p 23"
|
||||
borg info "$BORG_REPO" | head -12
|
||||
echo
|
||||
|
||||
echo "DR-Smoke OK ($(date '+%F %T'))"
|
||||
Reference in New Issue
Block a user