[svn-commits] r26 - main
thich01 at ingres.com
thich01 at ingres.com
Mon Apr 28 12:24:54 PDT 2008
Author: thich01
Date: 2008-04-28 12:24:54 -0700 (Mon, 28 Apr 2008)
New Revision: 26
Added:
main/createdbms
Log:
Fixing #123
Copied: main/createdbms (from rev 24, main/testit)
===================================================================
--- main/createdbms (rev 0)
+++ main/createdbms 2008-04-28 19:24:54 UTC (rev 26)
@@ -0,0 +1,571 @@
+#!/bin/bash
+# >>>>>>>>>>>>>>>>>>>>NOTE<<<<<<<<<<<<<<<<<<
+# DO NOT TRY TO MAKE LOCAL UPDATES TO THIS FILE
+# LOCAL UPDATES WILL BE LOST WHEN THIS FILE IS
+# OVERLAYED BY VERSIONS EXTRACTED FROM PICCOLO
+# Source for this file is in piccolo ingres library
+# buildtools!tools!shell
+# >>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<
+#
+## fast install program
+##
+## 18-apr-95 (hanch04)
+## created.
+## 20-Nov-2006 (hanal04)
+## Added int_rpl.
+
+if [ -f set_env.sh ]
+then
+ . ./set_env.sh
+else
+ echo "Error, I cannot find the set_env.sh script"
+ echo "This is required to use testit"
+ echo "Please run testit from the root directory of the Ingres source"
+ exit 1
+fi
+
+# Change source root here if it differs from ${srcroot}
+srcroot=/devsrc
+REBUILD=true
+CLEAN=false
+INSTALL=true
+SETUP=true
+TEST=true
+self=`basename $0`
+bld=`basename $ING_ROOT`
+
+# Chuck - Here the script requires a specific directory hierarchy to work.
+# I've hard coded it now to what it would effectively be out of svn, but it
+# probably should be generic.
+#ING_LIB=`dirname $ING_ROOT`
+#lib=`basename $ING_LIB`
+ING_LIB=$ING_ROOT
+productname=ingres2006
+
+pjobs=1
+testlabel=
+ARCH=`uname -m`
+host=`uname -n`
+unamesr=`uname -sr`
+unames=`uname -s`
+unamem=`uname -m`
+case $unamesr in
+ Linux*)
+ case $ARCH in
+ #IA32 Linux
+ i*86) RPMARCH=i386
+ ;;
+ #IA64 Linux | AMD64 LINUX | S390 Linux
+ *) RPMARCH=$ARCH
+ ;;
+ esac
+ SUDO=sudo
+ ;;
+ *)
+ SUDO=doasroot
+ ;;
+esac
+
+#function usage()
+#{
+# echo "Usage: testit [-testonly|-setuponly|-instonly] [-norebuild] [-clean]"
+# echo " [-ingbuild] [-r <rootdir>] [ -j <piccolo_jobs> ]"
+# echo " [ -wt <label> ] installation_code"
+# trap - 0
+# exit 1
+#}
+
+function usage()
+{
+ echo "Usage: testit installation_code"
+ trap - 0
+ exit 1
+}
+
+function timestamp()
+{
+ case $1 in
+ begin) echo "Beginning $2 at `date`"
+ ;;
+ end) echo "Ending $2 at `date`"
+ ;;
+ *) date
+ ;;
+ esac
+}
+
+function err()
+{
+ echo "ERROR: $self failed at line $LINENO"
+ cd $dirsav
+ timestamp end
+ trap - 0
+ exit $sec
+}
+
+#
+# setup_tools - Unpack testing tools
+#
+function setup_tools()
+{
+ [ "$ING_TOOLS" ] || { echo "ING_TOOLS not set" ; return 1 ; }
+ [ -f "$ING_ROOT/release/tools.tar" ] ||
+ {
+ echo "ERROR: Cannot locate tools.tar"
+ err
+ }
+
+ # Clear out any reminence
+ if [ -d "$ING_TOOLS" ] ; then
+ rm -rf $ING_TOOLS/*
+ else
+ mkdir -p $ING_TOOLS
+ fi
+
+ trap err 1 ERR
+ # Unpack archive
+ pushd $ING_TOOLS
+ tar xf $ING_ROOT/release/tools.tar
+
+ popd
+
+}
+
+#
+# set_perms - Set permissions on QA tools
+#
+function set_perms()
+{
+ trap err 1 ERR
+
+ [ -f "$ING_TOOLS/bin/qasetuser" ] || return 1
+ [ -f "$ING_TOOLS/bin/qawtl" ] || return 1
+
+ # Set permisions
+ cd $ING_TOOLS && \
+ $SUDO chown root bin/qasetuser && \
+ $SUDO chmod 4755 bin/qasetuser && \
+ chmod 4755 bin/qawtl || return 1
+
+ return 0
+}
+
+# Main routine
+#while [ $# != 0 ]
+#do
+# case $1 in
+# -instonly )
+# TEST=false
+# SETUP=false
+# shift
+# ;;
+# -setuponly)
+# TEST=false
+# INSTALL=false
+# shift
+# ;;
+# -testonly)
+# INSTALL=false
+# SETUP=false
+# II_INSTALLATION=`ingprenv II_INSTALLATION`
+# shift
+# ;;
+# -norebuild)
+# REBUILD=false
+# shift
+# ;;
+# -clean)
+# CLEAN=true
+# shift
+# ;;
+# -r)
+# srcroot=$2
+# shift ; shift
+# ;;
+# -ingbuild)
+# INGBUILD=true
+# RPMARCH=""
+# shift
+# ;;
+# -j)
+# pjobs="$2"
+# if [ "$pjobs" -eq 0 ]; then
+# echo -e "Invalid argument:\n\t$1 $2"
+# usage
+# # exit 1
+# fi
+# shift ; shift
+# ;;
+# -wt)
+# testlabel=$2
+# shift ; shift
+# ;;
+# *)
+# case $1 in
+# [A-Z][A-Z,0-9])
+# II_INSTALLATION=$1
+# shift
+# ;;
+# *)
+# echo "$1 is an invalid installation ID"
+# usage
+# # exit 1
+# ;;
+# esac
+# ;;
+# esac
+#done
+
+TEST=false
+SETUP=false
+INGBUILD=true
+RPMARCH=""
+
+case $1 in
+ [A-Z][A-Z,0-9])
+ II_INSTALLATION=$1
+ ;;
+ *)
+ echo "$1 is an invalid installation ID"
+ usage
+ ;;
+esac
+
+[ -z "$II_INSTALLATION" ] &&
+{
+ echo "installation_code not specified"
+ usage
+ # exit 1
+}
+export II_INSTALLATION
+
+HOST=`hostname`
+[ -z "$ING_ROOT" ] &&
+{
+ echo "ING_ROOT must be set to run this script"
+ exit 1
+}
+
+set - `cat $ING_ROOT/build/version.rel`
+release=$2
+nptlbuild=`head -1 $ING_ROOT/build/version.rel |cut -d')' -f2`
+vers=`cat $ING_ROOT/build/version.rel | sed -e s:^.*\(:: -e s:/.*$::`
+buildno=`grep '^build' $ING_ROOT/src/tools/port/conf/VERS | cut -d= -f2`
+case $vers in
+ int.lnx|\
+ int.rpl)
+ if $INGBUILD; then
+ desc="pc-linux-ingbuild-i386"
+ else
+ desc="pc-linux-i386"
+ fi
+ ;;
+ a64.lnx)
+ if $INGBUILD; then
+ desc="linux-ingbuild-x86_64"
+ else
+ desc="linux-x86_64"
+ fi
+ ;;
+ i64.lnx)
+ if $INGBUILD; then
+ desc="linux-ingbuild-ia64"
+ else
+ desc="linux-ia64"
+ fi
+ ;;
+ int.w32)
+ desc="win-x86"
+ ;;
+ a64.win)
+ desc="win-x86_64"
+ ;;
+ i64.win)
+ desc="win-ia64"
+ ;;
+ su9.us5)
+ desc="sun-solaris-sparc-32-64bit"
+ ;;
+ a64.sol)
+ desc="sun-solaris-x86-32-64bit"
+ ;;
+ r64.us5)
+ desc="ibm-powerpc-32-64bit"
+ ;;
+ hp2.us5)
+ desc="hp-hpux-pa-risc-32-64bit"
+ ;;
+ i64.hpu)
+ desc="hp-hpux-ia64-32-64bit"
+ ;;
+ axp.osf)
+ desc="hp-tru64-5.1"
+ ;;
+ axm.vms)
+ desc="hp-vms-alpha"
+ ;;
+ i64.vms)
+ desc="hp-vms-ia64"
+ ;;
+ usl.us5)
+ desc="unixware-x86"
+ ;;
+ mg5.osx)
+ desc="apple-darwin-powerpc"
+ ;;
+esac
+desc=gpl-$desc
+# Append NPTL if we need to
+[ "$nptlbuild" = "NPTL" ] && desc="NPTL-${desc}"
+
+tardir=${productname}-$release-$buildno-$desc
+
+if [ ! -f $ING_ROOT/release/$tardir/ingres.tar ]
+then
+ echo "Creating installation tar file."
+ mksaveset
+fi
+
+if [ ! -f $ING_ROOT/release/tools.tar ]
+then
+ echo "Creating tools tar file."
+ pushd $ING_ROOT/release
+ tartools -a
+ tartools tools.tar
+ popd
+fi
+
+if [ ! -d "$ING_ROOT/install/$II_INSTALLATION" ]
+then
+ echo "Creating installation instance directory."
+ mkdir ${ING_ROOT}/install/${II_INSTALLATION}
+fi
+
+export II_SYSTEM=${ING_ROOT}/install/${II_INSTALLATION}
+
+export ING_TOOLS=$II_SYSTEM/tools
+export ING_TST=$ING_ROOT/ingtst
+export TST_OUTPUT=$II_SYSTEM/output
+if [ ! -d $TST_OUTPUT ]
+then
+ mkdir $TST_OUTPUT
+fi
+
+
+export TST_CFG=$ING_TST/suites/handoffqa
+export TST_LISTEXEC=$ING_TST/suites/handoffqa
+export TST_DOC=$ING_TST/suites/doc
+export TST_DCL=$ING_TST/suites/dcl
+export TST_SHELL=$ING_TST/suites/shell
+export TST_TESTENV=$ING_TST
+export TST_INIT=$ING_TST/basis/init
+export TST_DATA=$ING_TST/gcf/gcc/data
+export TST_STRESS=$ING_TST/stress
+export SEP_TIMEOUT=600
+export II_DATE_CENTURY_BOUNDARY=10
+export TST_TOOLS=$ING_TOOLS/bin
+export TOOLS_DIR=$ING_TOOLS
+export TST_TESTOOLS=$ING_TST/testtool
+export TST_SEP=$ING_TOOLS/files
+export PEDITOR=$TST_TOOLS/peditor
+export SEP_DIFF_SLEEP=10
+export REP_TST=$ING_TST
+
+if [ ! -f ${II_SYSTEM}/resp.txt ]
+then
+ echo "Creating resp.txt file."
+ cat << ! > $II_SYSTEM/resp.txt
+LOG_KBYTES=200000
+START_ON_BOOT=NO
+!
+fi
+
+[ -n "$RPMARCH" ] &&
+{
+ [ -d $ING_ROOT/rpm ] ||
+ {
+ echo "Cannot locate RPMS dir $ING_ROOT/rpm"
+ exit 1
+ }
+}
+
+[ -z "$II_SYSTEM" ] &&
+{
+ echo "II_SYSTEM must be set to run this script"
+ exit 1
+}
+
+[ -z "$ING_TOOLS" ] &&
+{
+ echo "ING_TOOLS must be set to run this script"
+ exit 1
+}
+
+[ -z "$ING_TST" ] &&
+{
+ echo "ING_TST must be set to run this script"
+ exit 1
+}
+
+INSTL=`echo $II_SYSTEM | sed s%$ING_ROOT%%g | sed s%/install/%%g`
+RPMLOC=$ING_ROOT/rpm
+export II_MANIFEST_DIR=$II_SYSTEM/ingres/install
+echo "Installation parameters:"
+echo "HOST=$HOST II_INSTALLATION=$II_INSTALLATION INSTALL=$INSTL"
+
+trap err 1 ERR
+
+if $INSTALL
+then
+ if [ "$RPMARCH" != "" ]
+ then
+ timestamp begin "RPM installation"
+ if [ ! -d $II_SYSTEM/rpm ]
+ then
+ mkdir -p $II_SYSTEM/rpm
+ cd $II_SYSTEM/rpm
+ else
+ cd $II_SYSTEM/rpm
+ fi
+
+ echo "path=`pwd`"
+ echo ""
+
+ if $CLEAN
+ then
+ [ -z "$II_INSTALLATION" ] &&
+ {
+ echo "II_INSTALLATION not specified, don't know which installation to remove"
+ usage
+ # exit 1
+ }
+ echo "Removing $II_INSTALLATION"
+ sudo ${srcroot}/bin/uninstall_ingres $II_INSTALLATION -y -c
+ fi
+
+ if $REBUILD
+ then
+ for rpm in $RPMLOC/$RPMARCH/*.rpm
+ do
+ [ "`basename $rpm|cut -d- -f2`" = "documentation" ] || \
+ [ "`basename $rpm|cut -d- -f3`" = "documentation" ] || \
+ [ "`basename $rpm|cut -d- -f2`" = "license" ] || \
+ [ "`basename $rpm|cut -d- -f3`" = "CATOSL" ] && continue
+ echo "Repackaging $rpm with II_INSTALLATION=$II_INSTALLATION"
+ $ING_ROOT/build/utility/iirpmrename $rpm $II_INSTALLATION
+ done
+ fi
+
+ echo rpm -Uvh --prefix=$II_SYSTEM *.rpm
+ sudo rpm -Uvh --prefix=$II_SYSTEM *.rpm || exit 1
+ timestamp end "RPM installation"
+ else
+ timestamp begin "Ingbuild installation"
+
+ case $unames in
+ HP-UX)
+ case $unamem in
+ ia64)
+ if [ "$SHLIB_PATH" ] ; then
+ SHLIB_PATH=$II_SYSTEM/ingres/lib/lp32:$SHLIB_PATH
+ else
+ SHLIB_PATH=/lib:/usr/lib:$II_SYSTEM/ingres/lib/lp32
+ fi
+ export SHLIB_PATH
+ if [ "$LD_LIBRARY_PATH" ] ; then
+ LD_LIBRARY_PATH=$II_SYSTEM/ingres/lib:$LD_LIBRARY_PATH
+ else
+ LD_LIBRARY_PATH=$II_SYSTEM/ingres/lib
+ fi
+ export LD_LIBRARY_PATH
+ ;;
+ *)
+ if [ "$SHLIB_PATH" ] ; then
+ SHLIB_PATH=$II_SYSTEM/ingres/lib:$SHLIB_PATH
+ else
+ SHLIB_PATH=/lib:/usr/lib:$II_SYSTEM/ingres/lib
+ fi
+ export SHLIB_PATH
+ if [ "$LD_LIBRARY_PATH" ] ; then
+ LD_LIBRARY_PATH=$II_SYSTEM/ingres/lib/lp64:$LD_LIBRARY_PATH
+ else
+ LD_LIBRARY_PATH=$II_SYSTEM/ingres/lib/lp64
+ fi
+ export LD_LIBRARY_PATH
+ ;;
+ esac
+ ;;
+ AIX)
+ if [ "$LIBPATH" ] ; then
+ LIBPATH=$II_SYSTEM/ingres/lib:$II_SYSTEM/ingres/lib/lp64:$LIBPATH
+ else
+ LIBPATH=/lib:/usr/lib:$II_SYSTEM/ingres/lib:$II_SYSTEM/ingres/lib/lp64
+ fi
+ export LIBPATH
+ ;;
+ *)
+ if [ "$LD_LIBRARY_PATH" ] ; then
+ LD_LIBRARY_PATH=$II_SYSTEM/ingres/lib:$LD_LIBRARY_PATH
+ else
+ LD_LIBRARY_PATH=/lib:/usr/lib:$II_SYSTEM/ingres/lib
+ fi
+ export LD_LIBRARY_PATH
+ if [ "$LD_LIBRARY_PATH_64" ] ; then
+ LD_LIBRARY_PATH_64=$II_SYSTEM/ingres/lib/lp64:$LD_LIBRARY_PATH_64
+ else
+ LD_LIBRARY_PATH_64=$II_SYSTEM/ingres/lib/lp64
+ fi
+ export LD_LIBRARY_PATH_64
+ ;;
+ esac
+
+ export II_DISTRIBUTION=$ING_ROOT/release/$tardir/ingres.tar
+ mkdir $II_SYSTEM/ingres
+ cd $II_SYSTEM/ingres
+ tar xf $II_DISTRIBUTION install
+ install/ingbuild -acceptlicense -exresponse -file=$II_SYSTEM/resp.txt $II_DISTRIBUTION
+
+# Chuck - this only works if it does not require root, hence the -b option.
+# Again, this does not seem to be required if rpm installs are used.
+# [ -f /etc/shadow -o /etc/security/passwd ] && \
+# doasroot $II_SYSTEM/ingres/bin/mkvalidpw
+
+ [ -f /etc/shadow -o /etc/security/passwd ] && \
+ $SUDO $II_SYSTEM/ingres/bin/mkvalidpw
+
+ timestamp end "Ingbuild installation"
+ fi
+fi
+
+#chmod 777 $II_SYSTEM
+
+if $SETUP
+then
+ timestamp begin "test setup"
+
+ # Check tools exist
+ [ -x "$ING_TOOLS/bin/sep" ] || setup_tools
+ set_perms ||
+ {
+ echo "Failed to set permissions on tools"
+ echo "Aborting"
+ exit 1
+ }
+
+
+ sh $TST_SHELL/tstsetup.sh
+
+ echo "You may begin using the $INSTL installation or ingstop"
+ timestamp end "test setup"
+
+fi # testonly
+
+if $TEST
+then
+ timestamp begin "handoffQA"
+ cd $TST_OUTPUT
+ qasetuser testenv sh ${srcroot}/hoqa
+ ingstop
+ timestamp end "handoffQA"
+
+fi
More information about the svn-commits
mailing list