#! /usr/bin/env bash # Copyright © 2011, 2012, 2014-15, 2018 Richard Kettlewell. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . set -e . ${srcdir:-.}/setup.sh setup mv ${WORKSPACE}/store1 ${WORKSPACE}/store3 echo "| Stores must be mount points normally" set +e STDERR=${WORKSPACE}/got/notmounted.txt RUN=store RSBACKUP_TODAY=1980-01-01 s ${RSBACKUP} --backup --store ${WORKSPACE}/store3 status=$? set -e if [ $status != 1 ]; then echo >&2 "FAILED: store mount check failed" exit 1 fi sed < ${WORKSPACE}/got/notmounted.txt > ${WORKSPACE}/got/notmounted-sed.txt "s,${WORKSPACE},,g" compare ${srcdir:-.}/expect/store/notmounted.txt ${WORKSPACE}/got/notmounted-sed.txt echo "| Create backup with overridden store" STDERR=${WORKSPACE}/got/overridden-stderr.txt RUN=store RSBACKUP_TODAY=1980-01-01 s ${RSBACKUP} --backup --unmounted-store ${WORKSPACE}/store3 --text ${WORKSPACE}/got/overridden.txt --html ${WORKSPACE}/got/overridden.html exists ${WORKSPACE}/store-pre.ran exists ${WORKSPACE}/store-post.ran compare ${WORKSPACE}/volume1 ${WORKSPACE}/store3/host1/volume1/1980-01-01 compare ${WORKSPACE}/volume2 ${WORKSPACE}/store3/host1/volume2/1980-01-01 absent ${WORKSPACE}/store1/host1/volume1 absent ${WORKSPACE}/store1/host1/volume2 absent ${WORKSPACE}/store2/host1/volume1 absent ${WORKSPACE}/store2/host1/volume2 compare ${srcdir:-.}/expect/store/overridden.txt ${WORKSPACE}/got/overridden.txt compare ${srcdir:-.}/expect/store/overridden.html ${WORKSPACE}/got/overridden.html sed < ${WORKSPACE}/got/overridden-stderr.txt > ${WORKSPACE}/got/overridden-stderr-sed.txt "s,${WORKSPACE},,g" compare ${srcdir:-.}/expect/store/overridden-stderr.txt ${WORKSPACE}/got/overridden-stderr-sed.txt echo "| Create backup with overridden duplicate store" cp -a ${WORKSPACE}/store3 ${WORKSPACE}/store1 rm -rf ${WORKSPACE}/store1/host1 STDERR=${WORKSPACE}/got/duplicate-stderr.txt RUN=store RSBACKUP_TODAY=1980-01-01 s ${RSBACKUP} --backup --unmounted-store ${WORKSPACE}/store3 --text ${WORKSPACE}/got/duplicate.txt --html ${WORKSPACE}/got/duplicate.html exists ${WORKSPACE}/store-pre.ran exists ${WORKSPACE}/store-post.ran compare ${WORKSPACE}/volume1 ${WORKSPACE}/store3/host1/volume1/1980-01-01 compare ${WORKSPACE}/volume2 ${WORKSPACE}/store3/host1/volume2/1980-01-01 absent ${WORKSPACE}/store1/host1/volume1 absent ${WORKSPACE}/store1/host1/volume2 absent ${WORKSPACE}/store2/host1/volume1 absent ${WORKSPACE}/store2/host1/volume2 sed < ${WORKSPACE}/got/duplicate-stderr.txt > ${WORKSPACE}/got/duplicate-stderr-sed.txt "s,${WORKSPACE},,g" compare ${srcdir:-.}/expect/store/duplicate.txt ${WORKSPACE}/got/duplicate.txt compare ${srcdir:-.}/expect/store/duplicate.html ${WORKSPACE}/got/duplicate.html compare ${srcdir:-.}/expect/store/duplicate-stderr.txt ${WORKSPACE}/got/duplicate-stderr-sed.txt cleanup