Assorted shell and Python scripts
1#!/usr/bin/env bash
2
3set -euxo pipefail
4
5if [ ! -f "${HOME}/.env_common" ]; then
6 echo "ERROR: .env_common not found"
7 exit 1
8else
9 source "${HOME}/.env_common"
10fi
11
12curl --retry 3 "${HC_PING_URL}/start"
13
14BORG_ARCHIVE=$(borg list ssh://root@hyperreal.carp-wyvern.ts.net/srv/borgbackup/hyperreal | tail -n 1 | awk '{print $1}')
15ARCHIVE_BASENAME=$(echo "$BORG_ARCHIVE" | cut -d "T" -f 1)
16TS_HOST=$(tailscale status --json | jq ".Self.HostName" | tr -d '"')
17
18if ! borg export-tar \
19 "ssh://root@hyperreal.carp-wyvern.ts.net/srv/borgbackup/hyperreal::${BORG_ARCHIVE}" \
20 "/naspool/hyperreal_backup/${ARCHIVE_BASENAME}.tar"; then
21 curl --retry 3 "${HC_PING_URL}/fail"
22fi
23
24find /naspool/hyperreal_backup \
25 -maxdepth 1 \
26 -type f \
27 -mtime +7 \
28 -exec rm -fv {} \; ||
29 curl --retry 3 "${HC_PING_URL}/fail"
30
31curl --retry 3 "$HC_PING_URL"
32
33# vim: ts=4 sts=4 sw=4 et ai ft=bash