github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/postgresql/dataprotection/pg-basebackup-restore.sh (about) 1 set -e 2 set -o pipefail 3 export PATH="$PATH:$DP_DATASAFED_BIN_PATH" 4 export DATASAFED_BACKEND_BASE_PATH="$DP_BACKUP_BASE_PATH" 5 function remote_file_exists() { 6 local out=$(datasafed list $1) 7 if [ "${out}" == "$1" ]; then 8 echo "true" 9 return 10 fi 11 echo "false" 12 } 13 14 mkdir -p ${DATA_DIR}; 15 16 if [ $(remote_file_exists "${DP_BACKUP_NAME}.tar.gz") == "true" ]; then 17 datasafed pull "${DP_BACKUP_NAME}.tar.gz" - | gunzip | tar -xvf - -C "${DATA_DIR}/" 18 echo "done!"; 19 exit 0 20 fi 21 22 23 # NOTE: restore from an old version backup, will be removed in 0.8 24 if [ $(remote_file_exists "base.tar.gz") == "true" ]; then 25 datasafed pull "base.tar.gz" - | tar -xzvf - -C "${DATA_DIR}/" 26 elif [ $(remote_file_exists "base.tar") == "true" ]; then 27 datasafed pull "base.tar" - | tar -xvf - -C "${DATA_DIR}/" 28 fi 29 if [ $(remote_file_exists "pg_wal.tar.gz") == "true" ]; then 30 datasafed pull "pg_wal.tar.gz" - | tar -xzvf - -C "${DATA_DIR}/pg_wal/" 31 elif [ $(remote_file_exists "pg_wal.tar") == "true" ]; then 32 datasafed pull "pg_wal.tar" - | tar -xvf - -C "${DATA_DIR}/pg_wal/" 33 fi 34 echo "done!";