From: Andreas Schneider Date: Wed, 21 Oct 2020 17:14:32 +0000 (+0200) Subject: testprogs: Fix and improve upgradeprovision-oldrelease test X-Git-Tag: talloc-2.3.2~186 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1432d225b0426e366649cde4837eff58ee95b0c8;p=thirdparty%2Fsamba.git testprogs: Fix and improve upgradeprovision-oldrelease test This fixes running `make test` in a release tarball! BUG: https://bugzilla.samba.org/show_bug.cgi?id=14542 Signed-off-by: Andreas Schneider Reviewed-by: Alexander Bokovoy Autobuild-User(master): Andreas Schneider Autobuild-Date(master): Thu Oct 22 17:28:39 UTC 2020 on sn-devel-184 --- diff --git a/testprogs/blackbox/upgradeprovision-oldrelease.sh b/testprogs/blackbox/upgradeprovision-oldrelease.sh index 208baa54a02..5b095fca05e 100755 --- a/testprogs/blackbox/upgradeprovision-oldrelease.sh +++ b/testprogs/blackbox/upgradeprovision-oldrelease.sh @@ -11,37 +11,113 @@ PREFIX_ABS="$1" RELEASE="$2" shift 2 +failed=0 + . `dirname $0`/subunit.sh +. `dirname $0`/common_test_fns.inc -release_dir=`dirname $0`/../../source4/selftest/provisions/${RELEASE} +release_dir="$SRCDIR_ABS/source4/selftest/provisions/${RELEASE}" LDBDEL_BIN=ldbdel if [ -x "$BINDIR/ldbdel" ]; then LDBDEL_BIN=$BINDIR/ldbdel fi +samba_tdbrestore="tdbrestore" +if [ -x "$BINDIR/tdbrestore" ]; then + samba_tdbrestore="$BINDIR/tdbrestore" +fi + +samba_undump="$SRCDIR_ABS/source4/selftest/provisions/undump.sh" +if [ ! -x $samba_undump ] || [ ! -d $release_dir ]; then + subunit_start_test "${RELEASE}" + subunit_skip_test "${RELEASE}" < $PREFIX_ABS/${RELEASE}_upgrade/etc/smb.conf - - cp -a $release_dir/private/*.keytab $PREFIX_ABS/${RELEASE}_upgrade_full/private/ - cp -a $release_dir/sysvol $PREFIX_ABS/${RELEASE}_upgrade_full/ - mkdir $PREFIX_ABS/${RELEASE}_upgrade_full/etc/ - cat $release_dir/etc/smb.conf.template | \ - sed "s|@@PREFIX@@|$PREFIX_ABS/${RELEASE}_upgrade_full|g" \ - > $PREFIX_ABS/${RELEASE}_upgrade_full/etc/smb.conf + $samba_undump $release_dir $PREFIX_ABS/${RELEASE}_upgrade $samba_tdbrestore + $samba_undump $release_dir $PREFIX_ABS/${RELEASE}_upgrade_full $samba_tdbrestore + + cp -a $release_dir/private/*.keytab $PREFIX_ABS/${RELEASE}_upgrade/private/ + cp -a $release_dir/sysvol $PREFIX_ABS/${RELEASE}_upgrade/ + mkdir $PREFIX_ABS/${RELEASE}_upgrade/etc/ + sed -e "s|@@PREFIX@@|$PREFIX_ABS/${RELEASE}_upgrade|g" $release_dir/etc/smb.conf.template \ + > $PREFIX_ABS/${RELEASE}_upgrade/etc/smb.conf + + cp -a $release_dir/private/*.keytab $PREFIX_ABS/${RELEASE}_upgrade_full/private/ + cp -a $release_dir/sysvol $PREFIX_ABS/${RELEASE}_upgrade_full/ + mkdir $PREFIX_ABS/${RELEASE}_upgrade_full/etc/ + sed -e "s|@@PREFIX@@|$PREFIX_ABS/${RELEASE}_upgrade_full|g" $release_dir/etc/smb.conf.template \ + > $PREFIX_ABS/${RELEASE}_upgrade_full/etc/smb.conf } remove_dns_user() { @@ -122,116 +198,28 @@ ldapcmp_full_sd() { $PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX_ABS/${RELEASE}_upgrade_reference/private/sam.ldb tdb://$PREFIX_ABS/${RELEASE}_upgrade_full/private/sam.ldb --two --sd --skip-missing-dn } -if [ -d $PREFIX_ABS/${RELEASE}_upgrade ]; then - rm -fr $PREFIX_ABS/${RELEASE}_upgrade -fi - -if [ -d $PREFIX_ABS/${RELEASE}_upgrade_full ]; then - rm -fr $PREFIX_ABS/${RELEASE}_upgrade_full -fi - -if [ -d $PREFIX_ABS/${RELEASE}_upgrade_reference ]; then - rm -fr $PREFIX_ABS/${RELEASE}_upgrade_reference -fi - -if [ -d $release_dir ]; then - testit $RELEASE undump - testit "remove_dns_user" remove_dns_user - testit "upgradeprovision" upgradeprovision - testit "upgradeprovision_full" upgradeprovision_full - testit "reindex" reindex - testit_expect_failure "dbcheck" dbcheck - testit_expect_failure "dbcheck_full" dbcheck_full - testit "dbcheck_clean" dbcheck_clean - testit "dbcheck_full_clean" dbcheck_full_clean - testit "dbcheck_full_clean_well_known_acls" dbcheck_full_clean_well_known_acls - testit "referenceprovision" referenceprovision - testit "samba_upgradedns" samba_upgradedns - testit "ldapcmp" ldapcmp - testit "ldapcmp_sd" ldapcmp_sd - testit "ldapcmp_full_sd" ldapcmp_full_sd -else - subunit_start_test "${RELEASE}" - subunit_skip_test "${RELEASE}" <