diff -r 000000000000 -r 06885e558546 test/named-root.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/named-root.sh Fri Oct 03 12:26:22 2014 +0100 @@ -0,0 +1,53 @@ +#!/bin/sh +check_file() +{ + ../src/razor list-files | grep -x "$1" > /dev/null + if [ $? -ne 0 ]; then + echo $1: Not in database >&2 + ../src/razor list-files >&2 + exit 1 + fi + ../src/razor list-files c: | grep -x "$1" > /dev/null + if [ $? -ne 0 ]; then + echo $1: Not seen by named root list >&2 + ../src/razor list-files c: >&2 + exit 1 + fi + ../src/razor list-files "$1" | grep -x "$1" > /dev/null + if [ $? -ne 0 ]; then + echo $1: Not seen by patterned list >&2 + ../src/razor list-files "$1" >&2 + exit 1 + fi + pkgs=`../src/razor list-file-packages "$1"` + if [ -z "$pkgs" ]; then + echo $1: Not owned by any package >&2 + ../src/razor list-file-packages "$1" + exit 1 + fi + for nevra in "$pkgs"; do + name=`echo $nevra | sed 's/\-.*$//'` + ../src/razor list-package-files "$name" | grep -x "$1" > /dev/null + if [ $? -ne 0 ]; then + echo $1: Not in database for package $name >&2 + ../src/razor list-package-files "$name" + exit 1 + fi + done + if [ ! -e "$RAZOR_ROOT$1" ]; then + echo $1: Not in filesystem >&2 + exit 1 + fi +} +tmpdir=`mktemp -dt` || exit 1 +export RAZOR_ROOT="$tmpdir/x-" +mkdir -p "$tmpdir/x-/var/lib" "$tmpdir/x-c:" +export RAZOR_NO_ROOT_NAME_CHECKS=1 +../src/razor init || exit 1 +export YUM_URL="file://localhost/`pwd`" +../src/razor import-yum || exit 1 +../src/razor install --relocate /usr=c:/test zap || exit 1 +../src/razor install --relocate /usr=c:/test zip || exit 1 +check_file c:/test/bin/zap +check_file c:/test/bin/zip +rm -rf "$tmpdir"