test/remove.sh
author J. Ali Harlow <ali@juiblex.co.uk>
Thu May 14 05:55:19 2009 +0100 (2009-05-14)
changeset 367 e45f50e940b6
child 369 f8c27fe9fe63
permissions -rwxr-xr-x
Order the installation and removal of packages correctly so scripts can run
ali@363
     1
#!/bin/sh
ali@363
     2
check_file()
ali@363
     3
{
ali@363
     4
    ../src/razor list-files | grep -x "$1" > /dev/null
ali@363
     5
    if [ $? -ne 0 ]; then
ali@363
     6
	echo $1: Not in database >&2
ali@363
     7
	../src/razor list-files >&2
ali@363
     8
	exit 1
ali@363
     9
    fi
ali@363
    10
    ../src/razor list-files "$1" | grep -x "$1" > /dev/null
ali@363
    11
    if [ $? -ne 0 ]; then
ali@363
    12
	echo $1: Not seen by patterned list >&2
ali@363
    13
	../src/razor list-files "$1" >&2
ali@363
    14
	exit 1
ali@363
    15
    fi
ali@363
    16
    pkgs=`../src/razor list-file-packages "$1"`
ali@363
    17
    if [ -z "$pkgs" ]; then
ali@363
    18
	echo $1: Not owned by any package >&2
ali@363
    19
	../src/razor list-file-packages "$1"
ali@363
    20
	exit 1
ali@363
    21
    fi
ali@363
    22
    for nevra in "$pkgs"; do
ali@363
    23
	name=`echo $nevra | sed 's/\-.*$//'`
ali@363
    24
	../src/razor list-package-files "$name" | grep -x "$1" > /dev/null
ali@363
    25
	if [ $? -ne 0 ]; then
ali@363
    26
	    echo $1: Not in database for package $name >&2
ali@363
    27
	    ../src/razor list-package-files "$name"
ali@363
    28
	    exit 1
ali@363
    29
	fi
ali@363
    30
    done
ali@363
    31
    if [ ! -e "$RAZOR_ROOT$1" ]; then 
ali@363
    32
	echo $1: Not in filesystem >&2
ali@363
    33
	exit 1
ali@363
    34
    fi
ali@363
    35
}
ali@363
    36
check_no_file()
ali@363
    37
{
ali@363
    38
    ../src/razor list-files | grep -x "$1" > /dev/null
ali@363
    39
    if [ $? -eq 0 ]; then
ali@363
    40
	echo $1: Still in database >&2
ali@363
    41
	exit 1
ali@363
    42
    fi
ali@363
    43
    if [ -e "$RAZOR_ROOT$1" ]; then 
ali@363
    44
	echo $1: Still in filesystem >&2
ali@363
    45
	exit 1
ali@363
    46
    fi
ali@363
    47
}
ali@363
    48
export RAZOR_ROOT=`mktemp -dt` || exit 1
ali@363
    49
../src/razor init || exit 1
ali@363
    50
export YUM_URL="file://localhost/`pwd`"
ali@363
    51
../src/razor import-yum || exit 1
ali@363
    52
../src/razor install zip || exit 1
ali@363
    53
../src/razor remove zip || exit 1
ali@363
    54
check_file /usr/bin/zap
ali@363
    55
check_no_file /usr/bin/zip
ali@363
    56
../src/razor install zsh || exit 1
ali@363
    57
../src/razor install zsh2 || exit 1
ali@363
    58
../src/razor remove zsh || exit 1
ali@363
    59
check_file /etc/zsh.conf
ali@363
    60
check_no_file /usr/bin/zsh
ali@363
    61
rm -rf "$RAZOR_ROOT"