20 lines
740 B
Bash
Executable File
20 lines
740 B
Bash
Executable File
#!/usr/bin/env bash
|
|
#MISE description="Снапшот Vault в бакет бэкапов"
|
|
set -euo pipefail
|
|
|
|
BUCKET=$BACKUP_BUCKET
|
|
|
|
NAME="vault/$(date -u +%Y-%m-%dT%H-%M-%SZ).snap"
|
|
TMP=/tmp/vault-backup.snap
|
|
|
|
docker compose exec -T -e BAO_TOKEN="$VAULT_TOKEN" vault \
|
|
bao operator raft snapshot save "$TMP" >/dev/null
|
|
|
|
docker compose exec -T vault cat "$TMP" |
|
|
docker compose exec -T -e MC_HOST_local="http://${SILO_USER}:${SILO_PASSWORD}@localhost:9000" \
|
|
object-storage mc pipe --quiet "local/$BUCKET/$NAME" >/dev/null
|
|
docker compose exec -T vault rm -f "$TMP"
|
|
|
|
docker compose exec -T -e MC_HOST_local="http://${SILO_USER}:${SILO_PASSWORD}@localhost:9000" \
|
|
object-storage mc stat "local/$BUCKET/$NAME" | grep -E '^(Name|Size)'
|