2017-11-08 10:06:22 +00:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
SYSTEM=`uname -s`
|
|
|
|
if [ $SYSTEM = "FreeBSD" ] ; then
|
|
|
|
echo "blobstore.sh cannot run on FreeBSD currently."
|
|
|
|
exit 0
|
|
|
|
fi
|
|
|
|
|
|
|
|
set -xe
|
|
|
|
|
|
|
|
testdir=$(readlink -f $(dirname $0))
|
|
|
|
rootdir=$(readlink -f $testdir/../..)
|
|
|
|
source $rootdir/scripts/autotest_common.sh
|
|
|
|
timing_enter blobstore
|
|
|
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
# Nvme0 target configuration
|
|
|
|
$rootdir/scripts/gen_nvme.sh > $testdir/blobcli.conf
|
|
|
|
|
2018-01-29 22:33:02 +00:00
|
|
|
# generate random data file for import/export diff
|
|
|
|
dd if=/dev/urandom of=$testdir/test.pattern bs=1M count=1
|
|
|
|
|
|
|
|
cd $testdir
|
|
|
|
$rootdir/examples/blob/cli/blobcli -c $testdir/blobcli.conf -b Nvme0n1 -T $testdir/test.bs > $testdir/btest.out
|
|
|
|
cd -
|
|
|
|
|
|
|
|
# the tool leaves some trailing whitespaces that we need to strip out
|
|
|
|
sed -i 's/[[:space:]]*$//' $testdir/btest.out
|
|
|
|
|
|
|
|
# the test script will import the test pattern generated by dd and then export
|
|
|
|
# it to a file so we can compare and confirm basic read and write
|
|
|
|
$rootdir/test/app/match/match -v $testdir/btest.out.match
|
|
|
|
diff $testdir/test.pattern $testdir/test.pattern.blob
|
2017-11-08 10:06:22 +00:00
|
|
|
|
2018-01-29 22:33:02 +00:00
|
|
|
rm -rf $testdir/btest.out
|
2017-11-08 10:06:22 +00:00
|
|
|
rm -rf $testdir/blobcli.conf
|
2018-01-29 22:33:02 +00:00
|
|
|
rm -rf $testdir/*.blob
|
|
|
|
rm -rf $testdir/test.pattern
|
2017-11-08 10:06:22 +00:00
|
|
|
|
|
|
|
timing_exit blobstore
|