beautified script output

This commit is contained in:
Axel Kittenberger 2010-08-03 14:24:46 +00:00
parent 3f31d9596e
commit 55b966b43b
1 changed files with 23 additions and 18 deletions

View File

@ -2,41 +2,46 @@
# test the case of directory being cp -r'ed and touched. lsyncd 1.0 doesn't handle this case well.
set -e
CON="\E[47;34m"
COFF="\033[0m"
WORKSOURCE=$(mktemp -d)
WORKTARGET=$(mktemp -d)
PIDFILE=$(mktemp)
LOGFILE=$(mktemp)
# populate the filesystem.
echo -e "$CON* populating the filesystem$COFF"
mkdir -p "${WORKSOURCE}"/a/a
echo 'test' > "${WORKSOURCE}"/a/a/file
./lsyncd --logfile "${LOGFILE}" --pidfile "${PIDFILE}" "${WORKSOURCE}" "${WORKTARGET}"
echo -e "$CON* starting lsyncd$COFF"
./lsyncd --logfile "${LOGFILE}" --pidfile "${PIDFILE}" --no-daemon "${WORKSOURCE}" "${WORKTARGET}"&
# try to wait until lsyncd starts and rsyncs initial file, hope 4s is enough.
echo -e "$CON* waiting for lsyncd to start$COFF"
sleep 4s
# cp -r the directory, this sometimes succeeds, sometimes fails.
# cp -r the directory
echo -e "$CON* make a lot of copies$OFF"
for A in 1 2 3 4 5 6 7 8 9 10; do
cp -r "${WORKSOURCE}"/a "${WORKSOURCE}"/b${A}
echo 'test2' > "${WORKSOURCE}"/b${A}/a/another
done
# mkdir path while lsyncd is running
echo -e "$CON* mkdir double path$OFF"
mkdir -p "${WORKSOURCE}"/c/a
echo 'test3' > "${WORKSOURCE}"/c/a/file
# cp the dir while lsyncd is running.
# it's a race condition, do it 10 times.
echo -e "$CON* copy the other dir a few times$COFF"
for A in 1 2 3 4 5 6 7 8 9 10; do
cp -r "${WORKSOURCE}"/c "${WORKSOURCE}"/d${A}
echo 'test2' > "${WORKSOURCE}"/d${A}/a/another
done
# try to wait until lsyncd does the job.
sleep 10s
echo -e "$CON*waiting until lsyncd does the job.$COFF"
sleep 15s
echo -e "$CON*killing lsyncd"
LSYNCPID=$(cat "${PIDFILE}")
if ! kill "${LSYNCPID}"; then
cat "${LOGFILE}"
@ -46,14 +51,14 @@ if ! kill "${LSYNCPID}"; then
fi
sleep 1s
#echo "log file contents"
#cat "${LOGFILE}"
##this should be grep.
echo "log file contents"
cat "${LOGFILE}"
#this should be grep.
echo -e "$CON*differences$COFF"
diff -urN "${WORKSOURCE}" "${WORKTARGET}"
rm "${PIDFILE}"
rm "${LOGFILE}"
rm -rf "${WORKTARGET}"
rm -rf "${WORKSOURCE}"
#rm "${PIDFILE}"
#rm "${LOGFILE}"
#rm -rf "${WORKTARGET}"
#rm -rf "${WORKSOURCE}"