From c6adb0d2f32f8e8f3974b8ea3049601bf01d6877 Mon Sep 17 00:00:00 2001 From: Steven Jenkins Date: Tue, 12 May 2009 17:22:49 +0000 Subject: [PATCH] tests-generate-dirpath-in-makefile-20090512 LICENSE IPL10 FIXES 124715 fix rmcell to not have hardcoded paths; instead, generate a dirpath shell script from makefile and use that --- src/tests/Makefile.in | 39 +++++++++++++++++++++++++++++++++++++-- src/tests/afs-rmcell.sh | 18 +++++++++++++++++- 2 files changed, 54 insertions(+), 3 deletions(-) diff --git a/src/tests/Makefile.in b/src/tests/Makefile.in index 03ebb18ce..ecd27008b 100644 --- a/src/tests/Makefile.in +++ b/src/tests/Makefile.in @@ -340,12 +340,12 @@ install: uninstall: all: run-tests OpenAFS/Dirpath.pm libxfiles.a libdumpscan.a $(TEST_PROGRAMS)\ - afsdump_scan afsdump_dirlist afsdump_extract dumptool + afsdump_scan afsdump_dirlist afsdump_extract dumptool OpenAFS/Dirpath.sh @chmod +x run-tests clean: -rm -f xf_errs.c xf_errs.h dumpscan_errs.c dumpscan_errs.h *.o \ - $(TARGETS) run-tests $(TEST_PROGRAMS) OpenAFS/Dirpath.pm + $(TARGETS) run-tests $(TEST_PROGRAMS) OpenAFS/Dirpath.pm OpenAFS/Dirpath.sh include ../config/Makefile.version @@ -404,5 +404,40 @@ OpenAFS/Dirpath.pm: Makefile @echo "" >>$@ @echo "1;" >>$@ +OpenAFS/Dirpath.sh: Makefile + @echo "Creating OpenAFS/Dirpath.sh" + @echo "# auto-generated by src/tests/Makefile" >>$@ + @echo "# source or '.' in this file in shell" >>$@ + @echo "# DO NOT EDIT" >>$@ + @echo " AFSCONFDIR=@afsconfdir@" >>$@ + @echo " VICEETCDIR=@viceetcdir@" >>$@ + @echo " AFSSRVBINDIR=@afssrvbindir@" >>$@ + @echo " AFSSRVSBINDIR=@afssrvsbindir@" >>$@ + @echo " AFSSRVLIBEXECDIR=@afssrvlibexecdir@" >>$@ + @echo " AFSDBDIR=@afsdbdir@" >>$@ + @echo " AFSLOGSDIR=@afslogsdir@" >>$@ + @echo " AFSLOCALDIR=@afslocaldir@" >>$@ + @echo " AFSBACKUPDIR=@afsbackupdir@" >>$@ + @echo " AFSBOSCONFIGDIR=@afsbosconfigdir@" >>$@ + @echo " OSTYPE=@MKAFS_OSTYPE@" >>$@ + @if test "${sysconfdir}/openafs/server" = "/usr/afs/etc" ; then \ + echo "# transarc paths" ;\ + echo " CACHEDIR=/usr/vice/cache" ;\ + echo " AFSDDIR=/usr/vice/etc" ;\ + echo " INITDIR=/usr/vice/etc" ; \ + echo " AFSKERNELDIR=/usr/vice/etc/modload" ;\ + echo " AFSWSBINDIR=/usr/afsws/bin" ;\ + else \ + echo "# modern paths" ;\ + echo " CACHEDIR=@localstatedir@/openafs/cache" ;\ + echo " AFSDDIR=@afssrvsbindir@" ;\ + echo " INITDIR=@sysconfdir@" ;\ + echo " AFSKERNELDIR=@afskerneldir@" ;\ + echo " AFSWSBINDIR=@afssrvbindir@" ;\ + fi >>$@ + @echo "export AFSCONFDIR VICEETCDIR AFSSRVBINDIR AFSSRVSBINDIR" >>$@ + @echo "export AFSSRVLIBEXECDIR AFSDBDIR AFSLOGSDIR AFSLOCALDIR" >>$@ + @echo "export AFSBACKUPDIR AFSBOSCONFIGDIR OSTYPE CACHEDIR AFSDDIR" >>$@ + @echo "export INITDIR AFSKERNELDIR AFSWSBINDIR" >>$@ .PHONY: all install clean realclean distclean mostlyclean install uninstall check diff --git a/src/tests/afs-rmcell.sh b/src/tests/afs-rmcell.sh index 53f59585c..d0b918d37 100755 --- a/src/tests/afs-rmcell.sh +++ b/src/tests/afs-rmcell.sh @@ -1,5 +1,21 @@ #!/bin/sh -/bin/rm -rf /usr/afs/db/prdb.DB0 /usr/afs/db/prdb.DBSYS1 /usr/afs/db/vldb.DB0 /usr/afs/db/vldb.DBSYS1 /usr/afs/local/BosConfig /usr/afs/etc/UserList /usr/afs/etc/ThisCell /usr/afs/etc/CellServDB + +source OpenAFS/Dirpath.sh + +# Remove database files +/bin/rm -rf ${AFSDBDIR}/prdb.DB0 ${AFSDBDIR}/prdb.DBSYS1 \ + ${AFSDBDIR}/vldb.DB0 ${AFSDBDIR}/vldb.DBSYS1 \ + ${AFSDBDIR}/kaserver.DB0 ${AFSDBDIR}/kaserver.DBSYS1 + +# Remove cell configuration (server-side) +/bin/rm -rf ${AFSCONFDIR}/ThisCell ${AFSCONFDIR}/CellServDB \ + ${AFSCONFDIR}/KeyFile ${AFSCONFDIR}/krb.conf ${AFSCONFDIR}/UserList + +# Remove remaining server configuration, logs, and local +/bin/rm -rf ${AFSBOSCONFIGDIR}/BosConfig ${AFSLOGSDIR}/logs/* \ + ${AFSLOCALDIR}/* + +# Remove data /bin/rm -rf /vicepa/AFSIDat /bin/rm -rf /vicepb/AFSIDat /bin/rm -rf /vicepa/V*.vol -- 2.39.5