#!/bin/sh # # Copyright (C) 2000-2015 Kern Sibbald # License: BSD 2-Clause; see file LICENSE-FOSS # # # Run test-plugin-fd. Note, this plugin is for testing # new features and probably should not be run in normal # testing # TestName="test-plugin-test" JobName=TestPluginTest . scripts/functions scripts/cleanup scripts/copy-plugin-confs file=encrypt-bug.jpg rm -rf ${cwd}/tmp/* echo "${cwd}/build/src" >${cwd}/tmp/file-list # Build and install the test plugin cd ${cwd}/build/src/plugins/fd make make install-test-plugin cd ${cwd} start_test cat <${cwd}/tmp/bconcmds @output /dev/null messages @$out ${cwd}/tmp/log1.out label storage=File1 volume=TestVolume001 setdebug level=100 client=$CLIENT estimate job=$JobName level=Full @#setdebug level=150 client=$CLIENT @#setdebug level=150 storage=File1 run job=$JobName storage=File1 yes wait status client=$CLIENT messages quit END_OF_DATA run_bacula cat <${cwd}/tmp/bconcmds messages @# @# now do a restore @# @$out ${cwd}/tmp/log2.out setdebug level=50 client=$CLIENT restore where=${cwd}/tmp select all storage=File1 done yes wait setdebug level=0 client=$CLIENT messages quit END_OF_DATA run_bconsole stop_bacula exit 0 # ****FIXME**** test if the restore of the two files is OK # # Remove plugin so we can try the restore without the plugin # mv -f ${cwd}/bin/plugins/test-plugin-fd.so ${cwd}/bin/plugins/test-plugin-fd.sox cat <${cwd}/tmp/bconcmds @$out ${cwd}/tmp/log2.out @# remove plugin @exec "sh -c 'rm -f ${cwd}/bin/plugins/test-plugin-fd.so'" @# @# now do a restore without the plugin @# @$out ${cwd}/tmp/log2.out @#setdebug level=50 client=$CLIENT restore where=${cwd}/tmp select all storage=File1 done yes wait messages quit END_OF_DATA run_bacula -d50 run_bconsole check_for_zombie_jobs storage=File1 stop_bacula # # Restore plugin # mv -f ${cwd}/bin/plugins/test-plugin-fd.sox ${cwd}/bin/plugins/test-plugin-fd.so check_two_logs # # ****FIXME**** test that all three files are restored correctly # diff ${cwd}/${file} ${cwd}/tmp/${file} dstat=$? end_test