test/relocate.sh
author J. Ali Harlow <ali@juiblex.co.uk>
Thu Feb 09 20:45:27 2012 +0000 (2012-02-09)
changeset 418 33b825d3128d
child 456 bae5adee8c8c
permissions -rwxr-xr-x
Add transaction barriers
These allow packages to be installed and removed which have scripts
that depend on each other when atomic transactions are involved.
Note that yum supports pre, but not other requires flags. post will
need similar support to the post scripts themselves pulling in the
requires flags from the rpms. Likewise preun and postun will need
similar handling to those scrips since the requires flags will need
to be stored in the razor database.
ali@351
     1
#!/bin/sh
ali@351
     2
check_file()
ali@351
     3
{
ali@351
     4
    ../src/razor list-files | grep -x "$1" > /dev/null
ali@351
     5
    if [ $? -ne 0 ]; then
ali@351
     6
	echo $1: Not in database >&2
ali@351
     7
	exit 1
ali@351
     8
    fi
ali@351
     9
    if [ ! -e "$RAZOR_ROOT$1" ]; then 
ali@351
    10
	echo $1: Not in filesystem >&2
ali@351
    11
	exit 1
ali@351
    12
    fi
ali@351
    13
}
ali@351
    14
export RAZOR_ROOT=`mktemp -dt` || exit 1
ali@351
    15
../src/razor init || exit 1
ali@351
    16
export YUM_URL="file://localhost/`pwd`"
ali@351
    17
../src/razor import-yum || exit 1
ali@351
    18
../src/razor install zap || exit 1
ali@351
    19
../src/razor install --relocate /usr=/opt --relocate /etc=/opt/etc zsh || exit 1
ali@351
    20
check_file /etc/zsh.conf
ali@351
    21
check_file /usr/bin/zap
ali@351
    22
check_file /opt/bin/zip
ali@351
    23
check_file /opt/bin/zsh
ali@351
    24
rm -rf "$RAZOR_ROOT"