#!/bin/bash export PATH=/4PROJECTS/bin:$PATH if [ ! -n "$2" ]; then echo "Missing Parameters " exit 0 fi UUID=$1 source /4server/sbin/helpers docker run $UUID BACKUP="/mnt/backup/$2" TEMPLATE="/mnt/db_images/$2" echo "TEMPLATE" docker exec "${1%}" /bin/bash -c "[ -f $TEMPLATE ]" if docker exec "${1%}" /bin/bash -c "[ -f $BACKUP ]"; then FILENAME="$BACKUP" elif docker exec "${1%}" /bin/bash -c "[ -f $TEMPLATE ]"; then FILENAME="$TEMPLATE" else echo "File not exists" exit 0 fi echo "Restoring $FILENAME to $1" ### DELETE DATABASE PGPASSWORD="$POSTGRES_ADMIN_PASSWORD" psql \ -h "$POSTGRES_HOST" -U "$POSTGRES_ADMIN_USER" -p "$POSTGRES_PORT" -d postgres \ -c "DROP DATABASE IF EXISTS \"$UUID\";" echo "deleting old restore artifacts" docker exec "${1%}" rm -rf /root/.local/ if [[ "$1" == *"_"* ]]; then echo "Neutralize DB" docker exec "${1%_}" odoo db --db_host beedb -w "${1%_}" -r "$1" load "$1" $FILENAME -f --neutralize else echo "No Neutralize DB" docker exec "${1%}" odoo db --db_host beedb -w "${1%_}" -r "$1" load "$1" $FILENAME -f fi docker exec "${1%}" cp -r /root/.local/. /var/lib/odoo/.local/ docker exec "${1%}" chown -R odoo:odoo /var/lib/odoo/.local/ ### transfer ownership PGPASSWORD="$POSTGRES_ADMIN_PASSWORD" psql \ -h "$POSTGRES_HOST" -U "$POSTGRES_ADMIN_USER" -p "$POSTGRES_PORT" -d postgres \ -c "ALTER DATABASE \"$UUID\" OWNER TO \"$UUID\";" docker restart "${1%}"