made master build environment to autoconf-based
added debian package creation scripts
This commit is contained in:
parent
f9ec998d96
commit
a14cecc8b0
30 changed files with 2653 additions and 317 deletions
|
@ -22,7 +22,7 @@
|
||||||
|
|
||||||
|
|
||||||
Author : $Author: maroy $
|
Author : $Author: maroy $
|
||||||
Version : $Revision: 1.2 $
|
Version : $Revision: 1.3 $
|
||||||
Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/README,v $
|
Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/README,v $
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
@ -34,6 +34,7 @@ The generic documentation start page is doc/index.html
|
||||||
|
|
||||||
For the impatient, do the following:
|
For the impatient, do the following:
|
||||||
|
|
||||||
|
./configure
|
||||||
make setup
|
make setup
|
||||||
make compile
|
make compile
|
||||||
|
|
||||||
|
|
80
livesupport/bin/autogen.sh
Executable file
80
livesupport/bin/autogen.sh
Executable file
|
@ -0,0 +1,80 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copyright (c) 2004 Media Development Loan Fund
|
||||||
|
#
|
||||||
|
# This file is part of the LiveSupport project.
|
||||||
|
# http://livesupport.campware.org/
|
||||||
|
# To report bugs, send an e-mail to bugs@campware.org
|
||||||
|
#
|
||||||
|
# LiveSupport is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# LiveSupport is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with LiveSupport; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Author : $Author: maroy $
|
||||||
|
# Version : $Revision: 1.1 $
|
||||||
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/autogen.sh,v $
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Run this to set up the build system: configure, makefiles, etc.
|
||||||
|
# (based on the version in enlightenment's cvs)
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
package="LiveSupport"
|
||||||
|
|
||||||
|
# assume we're in $basedir/bin
|
||||||
|
reldir=`dirname $0`/..
|
||||||
|
basedir=`cd $reldir; pwd;`
|
||||||
|
test -z "$basedir" && basedir=.
|
||||||
|
|
||||||
|
bindir=$basedir/bin
|
||||||
|
etcdir=$basedir/etc
|
||||||
|
tmpdir=$basedir/tmp
|
||||||
|
|
||||||
|
cd "$tmpdir"
|
||||||
|
DIE=0
|
||||||
|
|
||||||
|
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
|
||||||
|
echo
|
||||||
|
echo "You must have autoconf installed to compile $package."
|
||||||
|
echo "Download the appropriate package for your distribution,"
|
||||||
|
echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
|
||||||
|
DIE=1
|
||||||
|
}
|
||||||
|
|
||||||
|
if test "$DIE" -eq 1; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -z "$*"; then
|
||||||
|
echo "I am going to run ./configure with no arguments - if you wish "
|
||||||
|
echo "to pass any to it, please specify them on the $0 command line."
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Generating configuration files for $package, please wait...."
|
||||||
|
|
||||||
|
configure_ac=${etcdir}/configure.ac
|
||||||
|
configure=${tmpdir}/configure
|
||||||
|
aclocal_m4=${tmpdir}/aclocal.m4
|
||||||
|
|
||||||
|
if [ -f ${etcdir}/acinclude.m4 ]; then
|
||||||
|
# run aclocal in etc, as it's blind, only sees files in the current directory
|
||||||
|
ACLOCAL_FLAGS="--output=${aclocal_m4}"
|
||||||
|
echo " aclocal $ACLOCAL_FLAGS"
|
||||||
|
cd ${etcdir} && aclocal $ACLOCAL_FLAGS ; cd ${tmpdir}
|
||||||
|
fi
|
||||||
|
echo " autoconf -I ${tmpdir} -o ${configure} ${configure_ac}"
|
||||||
|
autoconf -I ${tmpdir} -o ${configure} ${configure_ac}
|
||||||
|
|
||||||
|
${configure} "$@" && echo
|
191
livesupport/bin/copyInstall.sh
Executable file
191
livesupport/bin/copyInstall.sh
Executable file
|
@ -0,0 +1,191 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copyright (c) 2004 Media Development Loan Fund
|
||||||
|
#
|
||||||
|
# This file is part of the LiveSupport project.
|
||||||
|
# http://livesupport.campware.org/
|
||||||
|
# To report bugs, send an e-mail to bugs@campware.org
|
||||||
|
#
|
||||||
|
# LiveSupport is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# LiveSupport is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with LiveSupport; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Author : $Author: maroy $
|
||||||
|
# Version : $Revision: 1.1 $
|
||||||
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/Attic/copyInstall.sh,v $
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# This script installs LiveSupport files to their installation location.
|
||||||
|
#
|
||||||
|
# Invoke as:
|
||||||
|
# ./bin/copyInstall.sh
|
||||||
|
#
|
||||||
|
# To get usage help, try the -h option
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Determine directories, files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
reldir=`dirname $0`/..
|
||||||
|
basedir=`cd $reldir; pwd;`
|
||||||
|
bindir=$basedir/bin
|
||||||
|
etcdir=$basedir/etc
|
||||||
|
docdir=$basedir/doc
|
||||||
|
tmpdir=$basedir/tmp
|
||||||
|
toolsdir=$basedir/tools
|
||||||
|
modules_dir=$basedir/modules
|
||||||
|
products_dir=$basedir/products
|
||||||
|
|
||||||
|
usrdir=`cd $basedir/usr; pwd;`
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Print the usage information for this script.
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
printUsage()
|
||||||
|
{
|
||||||
|
echo "LiveSupport install copy script.";
|
||||||
|
echo "parameters";
|
||||||
|
echo "";
|
||||||
|
echo " -d, --directory The installation directory, required.";
|
||||||
|
echo " -h, --help Print this message and exit.";
|
||||||
|
echo "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Process command line parameters
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
CMD=${0##*/}
|
||||||
|
|
||||||
|
opts=$(getopt -o d:h -l directory:,help -n $CMD -- "$@") || exit 1
|
||||||
|
eval set -- "$opts"
|
||||||
|
while true; do
|
||||||
|
case "$1" in
|
||||||
|
-d|--directory)
|
||||||
|
installdir=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-h|--help)
|
||||||
|
printUsage;
|
||||||
|
exit 0;;
|
||||||
|
--)
|
||||||
|
shift;
|
||||||
|
break;;
|
||||||
|
*)
|
||||||
|
echo "Unrecognized option $1.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "x$installdir" == "x" ]; then
|
||||||
|
echo "Required parameter install directory not specified.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "Installing LiveSupport files.";
|
||||||
|
echo "";
|
||||||
|
echo "Using the following installation parameters:";
|
||||||
|
echo "";
|
||||||
|
echo " installation directory: $installdir";
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# The details of installation
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
install_bin=$installdir/bin
|
||||||
|
install_etc=$installdir/etc
|
||||||
|
install_lib=$installdir/lib
|
||||||
|
install_tmp=$installdir/tmp
|
||||||
|
install_var=$installdir/var
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Create the installation directory structure
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Copying files..."
|
||||||
|
|
||||||
|
mkdir -p $installdir
|
||||||
|
mkdir -p $install_bin
|
||||||
|
mkdir -p $install_etc
|
||||||
|
mkdir -p $install_lib
|
||||||
|
mkdir -p $install_tmp
|
||||||
|
mkdir -p $install_var
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copy the PHP files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
mkdir $install_var/getid3
|
||||||
|
cp -pPR $modules_dir/getid3/var $install_var/getid3
|
||||||
|
|
||||||
|
mkdir $install_var/alib
|
||||||
|
cp -pPR $modules_dir/alib/var $install_var/alib
|
||||||
|
|
||||||
|
mkdir $install_var/storageServer
|
||||||
|
cp -pPR $modules_dir/storageServer/var $install_var/storageServer
|
||||||
|
|
||||||
|
mkdir $install_var/archiveServer
|
||||||
|
cp -pPR $modules_dir/archiveServer/var $install_var/archiveServer
|
||||||
|
|
||||||
|
mkdir $install_var/htmlUI
|
||||||
|
cp -pPR $modules_dir/htmlUI/var $install_var/htmlUI
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copy libraries
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
cp -pPR $usrdir/lib/* $install_lib
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copy scheduler related files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
cp -pPR $products_dir/scheduler/tmp/scheduler $install_bin
|
||||||
|
cp -pPR $products_dir/scheduler/bin/scheduler.sh $install_bin
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copy gLiveSupport related files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
cp -pPR $products_dir/gLiveSupport/tmp/gLiveSupport $install_bin
|
||||||
|
cp -pPR $products_dir/gLiveSupport/bin/gLiveSupport.sh $install_bin
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copy post-installation configuration related files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
cp -pPR $bindir/postInstallScheduler.sh $install_bin
|
||||||
|
cp -pPR $bindir/postInstallGLiveSupport.sh $install_bin
|
||||||
|
cp -pPR $products_dir/scheduler/etc/scheduler.xml.template $install_etc
|
||||||
|
cp -pPR $products_dir/scheduler/etc/odbcinst_template $install_etc
|
||||||
|
cp -pPR $products_dir/scheduler/etc/odbcinst_debian_template $install_etc
|
||||||
|
cp -pPR $products_dir/scheduler/etc/odbc_template $install_etc
|
||||||
|
cp -pPR $products_dir/gLiveSupport/etc/gLiveSupport.xml.template $install_etc
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Clean up remnants of the CVS system
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
rm -rf `find $install_var -type d -name CVS`
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Say goodbye
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Done."
|
||||||
|
|
251
livesupport/bin/createDebianPackages.sh
Executable file
251
livesupport/bin/createDebianPackages.sh
Executable file
|
@ -0,0 +1,251 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copyright (c) 2004 Media Development Loan Fund
|
||||||
|
#
|
||||||
|
# This file is part of the LiveSupport project.
|
||||||
|
# http://livesupport.campware.org/
|
||||||
|
# To report bugs, send an e-mail to bugs@campware.org
|
||||||
|
#
|
||||||
|
# LiveSupport is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# LiveSupport is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with LiveSupport; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Author : $Author: maroy $
|
||||||
|
# Version : $Revision: 1.1 $
|
||||||
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/createDebianPackages.sh,v $
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# This script creates Debian packages from LiveSupport tarballs.
|
||||||
|
# To create the tarballs first, see the dist.sh script.
|
||||||
|
#
|
||||||
|
# Invoke as:
|
||||||
|
# ./bin/createDebianPackages.sh
|
||||||
|
#
|
||||||
|
# To get usage help, try the -h option
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Determine directories, files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
reldir=`dirname $0`/..
|
||||||
|
basedir=`cd $reldir; pwd;`
|
||||||
|
bindir=$basedir/bin
|
||||||
|
etcdir=$basedir/etc
|
||||||
|
docdir=$basedir/doc
|
||||||
|
tmpdir=$basedir/tmp
|
||||||
|
|
||||||
|
usrdir=`cd $basedir/usr; pwd;`
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Print the usage information for this script.
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
printUsage()
|
||||||
|
{
|
||||||
|
echo "LiveSupport debian source package creation script";
|
||||||
|
echo "parameters";
|
||||||
|
echo "";
|
||||||
|
echo " -d, --directory Place to look for the livesupport source";
|
||||||
|
echo " tarballs [default: current directory]";
|
||||||
|
echo " -m, --maintainer The name and e-mail address of the package";
|
||||||
|
echo " maintainer.";
|
||||||
|
echo " -o, --output-directory the output directory for the files";
|
||||||
|
echo " [default: current directory]";
|
||||||
|
echo " -v, --version The version number of the created packages.";
|
||||||
|
echo " -h, --help Print this message and exit.";
|
||||||
|
echo "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Process command line parameters
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
CMD=${0##*/}
|
||||||
|
|
||||||
|
opts=$(getopt -o d:hm:o:v: -l directory:,help,maintainer:,output-directory,version: -n $CMD -- "$@") || exit 1
|
||||||
|
eval set -- "$opts"
|
||||||
|
while true; do
|
||||||
|
case "$1" in
|
||||||
|
-d|--directory)
|
||||||
|
directory=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-h|--help)
|
||||||
|
printUsage;
|
||||||
|
exit 0;;
|
||||||
|
-m|--maintainer)
|
||||||
|
maintainer=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-o|--output-directory)
|
||||||
|
outdir=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-v|--version)
|
||||||
|
version=$2;
|
||||||
|
shift; shift;;
|
||||||
|
--)
|
||||||
|
shift;
|
||||||
|
break;;
|
||||||
|
*)
|
||||||
|
echo "Unrecognized option $1.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "x$maintainer" == "x" ]; then
|
||||||
|
echo "Required parameter maintainer not specified.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$version" == "x" ]; then
|
||||||
|
echo "Required parameter version not specified.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$directory" == "x" ]; then
|
||||||
|
directory=`pwd`;
|
||||||
|
else
|
||||||
|
directory=`cd $directory; pwd;`
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$outdir" == "x" ]; then
|
||||||
|
outdir=`pwd`;
|
||||||
|
else
|
||||||
|
outdir=`cd $outdir; pwd;`
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "Creating Debian source packages for LiveSupport.";
|
||||||
|
echo "";
|
||||||
|
echo "Using the following parameters:";
|
||||||
|
echo "";
|
||||||
|
echo " tarball directory: $directory";
|
||||||
|
echo " maintainer: $maintainer";
|
||||||
|
echo " package version number: $version";
|
||||||
|
echo " output directory: $outdir";
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# More definitions
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
tarball=$directory/livesupport-$version.tar.bz2
|
||||||
|
tarball_libs=$directory/livesupport-libraries-$version.tar.bz2
|
||||||
|
|
||||||
|
if [ ! -f $tarball ]; then
|
||||||
|
echo "source tarball $tarball not found in directory $directory";
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f $tarball_libs ]; then
|
||||||
|
echo "source tarball $tarball_libs not found in directory $directory";
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# TODO: maybe read debianVersion as a command line parameter
|
||||||
|
debianVersion=1
|
||||||
|
packageName=livesupport-$version
|
||||||
|
packageNameOrig=$packageName.orig
|
||||||
|
workdir=$tmpdir/debianize
|
||||||
|
fullVersion=$version-$debianVersion
|
||||||
|
diffGz=livesupport_$fullVersion.diff.gz
|
||||||
|
origTarGz=livesupport_$fullVersion.orig.tar.gz
|
||||||
|
dsc=livesupport_$fullVersion.dsc
|
||||||
|
|
||||||
|
replace_sed_string="s/ls_version/$version/; \
|
||||||
|
s/ls_debianVersion/$debianVersion/; \
|
||||||
|
s/ls_maintainer/$maintainer/;"
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Create the environment
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
rm -rf $workdir
|
||||||
|
mkdir -p $workdir
|
||||||
|
cd $workdir
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Untar the source tarballs
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Extracting source tarballs...";
|
||||||
|
|
||||||
|
# untar first, and rename as livesupport-$version.orig
|
||||||
|
tar xfj $tarball
|
||||||
|
tar xfj $tarball_libs
|
||||||
|
mv $packageName $packageNameOrig
|
||||||
|
|
||||||
|
# untar again, and leave it as livesupport-$version
|
||||||
|
tar xfj $tarball
|
||||||
|
tar xfj $tarball_libs
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Debianize the livesupport-$version sources
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Debianizing sources...";
|
||||||
|
|
||||||
|
cp -pPR $etcdir/debian $packageName
|
||||||
|
|
||||||
|
# get rid of the remnants of the CVS system
|
||||||
|
rm -rf `find $packageName -name CVS -type d`
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Create a debianized source package.
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Creating debian source package...";
|
||||||
|
|
||||||
|
diff -Naur $packageNameOrig $packageName | gzip -9 > $diffGz
|
||||||
|
|
||||||
|
# create the original source tarball
|
||||||
|
tar cfz $origTarGz $packageNameOrig
|
||||||
|
|
||||||
|
# customize the dsc file
|
||||||
|
cat $etcdir/livesupport.dsc.template | sed -e "$replace_sed_string" > $dsc
|
||||||
|
|
||||||
|
# append with checksums, sizes and source file names
|
||||||
|
md5sum=`md5sum $origTarGz | cut -d" " -f1`
|
||||||
|
size=`find . -name $origTarGz -printf "%s"`
|
||||||
|
echo " $md5sum $size $origTarGz" >> $dsc
|
||||||
|
|
||||||
|
md5sum=`md5sum $diffGz | cut -d" " -f1`
|
||||||
|
size=`find . -name $diffGz -printf "%s"`
|
||||||
|
echo " $md5sum $size $diffGz" >> $dsc
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copy the resulting files to the target directory
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Moving debian source package files to target directory...";
|
||||||
|
|
||||||
|
mv -f $origTarGz $diffGz $dsc $outdir
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Clean up
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Cleaning up...";
|
||||||
|
|
||||||
|
cd $basedir
|
||||||
|
#rm -rf $workdir
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Say goodbye
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Done."
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
# Author : $Author: maroy $
|
# Author : $Author: maroy $
|
||||||
# Version : $Revision: 1.4 $
|
# Version : $Revision: 1.5 $
|
||||||
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/dist.sh,v $
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/dist.sh,v $
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
@ -32,23 +32,9 @@
|
||||||
# livesupport-libraries-<version>.tar.bz2 - dependent libraries
|
# livesupport-libraries-<version>.tar.bz2 - dependent libraries
|
||||||
#
|
#
|
||||||
# Invoke as:
|
# Invoke as:
|
||||||
# ./bin/dist.sh <version.number>
|
# ./bin/dist.sh -v <version.number>
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
if [ "x$1" == "x" ]; then
|
|
||||||
echo "Please provide a version number as the first paramter.";
|
|
||||||
exit 0;
|
|
||||||
fi
|
|
||||||
|
|
||||||
version=$1
|
|
||||||
tarball=livesupport-$version.tar.bz2
|
|
||||||
tarball_libs=livesupport-libraries-$version.tar.bz2
|
|
||||||
|
|
||||||
echo "WARNING! make sure to run this script on a freshly checked-out copy";
|
|
||||||
echo " of LiveSupport, with NO generated files!";
|
|
||||||
echo "";
|
|
||||||
echo "Creating $tarball and $tarball_libs";
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
# Determine directories, files
|
# Determine directories, files
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
@ -64,6 +50,80 @@ products_dir=$basedir/products
|
||||||
|
|
||||||
usrdir=`cd $basedir/usr; pwd;`
|
usrdir=`cd $basedir/usr; pwd;`
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Print the usage information for this script.
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
printUsage()
|
||||||
|
{
|
||||||
|
echo "LiveSupport install script.";
|
||||||
|
echo "parameters";
|
||||||
|
echo "";
|
||||||
|
echo " -d, --directory Place the tarballs in the specified directory.";
|
||||||
|
echo " [default: current directory]";
|
||||||
|
echo " -h, --help Print this message and exit.";
|
||||||
|
echo " -v, --version The version number of the created packages.";
|
||||||
|
echo "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Process command line parameters
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
CMD=${0##*/}
|
||||||
|
|
||||||
|
opts=$(getopt -o d:hv: -l directory:,help,version: -n $CMD -- "$@") || exit 1
|
||||||
|
eval set -- "$opts"
|
||||||
|
while true; do
|
||||||
|
case "$1" in
|
||||||
|
-d|--directory)
|
||||||
|
directory=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-h|--help)
|
||||||
|
printUsage;
|
||||||
|
exit 0;;
|
||||||
|
-v|--version)
|
||||||
|
version=$2;
|
||||||
|
shift; shift;;
|
||||||
|
--)
|
||||||
|
shift;
|
||||||
|
break;;
|
||||||
|
*)
|
||||||
|
echo "Unrecognized option $1.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "x$version" == "x" ]; then
|
||||||
|
echo "Required parameter version not specified.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$directory" == "x" ]; then
|
||||||
|
directory=`pwd`;
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "Creating tarballs for LiveSupport.";
|
||||||
|
echo "";
|
||||||
|
echo "Using the following parameters:";
|
||||||
|
echo "";
|
||||||
|
echo " output directory: $directory";
|
||||||
|
echo " package version number: $version";
|
||||||
|
echo ""
|
||||||
|
echo "WARNING! make sure to run this script on a freshly checked-out copy";
|
||||||
|
echo " of LiveSupport, with NO generated files!";
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# More definitions
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
tarball=$directory/livesupport-$version.tar.bz2
|
||||||
|
tarball_libs=$directory/livesupport-libraries-$version.tar.bz2
|
||||||
|
|
||||||
ls_tmpdir=$tmpdir/livesupport-$version
|
ls_tmpdir=$tmpdir/livesupport-$version
|
||||||
tools_tmpdir=$ls_tmpdir/tools
|
tools_tmpdir=$ls_tmpdir/tools
|
||||||
modules_tmpdir=$ls_tmpdir/modules
|
modules_tmpdir=$ls_tmpdir/modules
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
# Author : $Author: maroy $
|
# Author : $Author: maroy $
|
||||||
# Version : $Revision: 1.8 $
|
# Version : $Revision: 1.9 $
|
||||||
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/Attic/install.sh,v $
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/Attic/install.sh,v $
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
@ -49,8 +49,6 @@ products_dir=$basedir/products
|
||||||
|
|
||||||
usrdir=`cd $basedir/usr; pwd;`
|
usrdir=`cd $basedir/usr; pwd;`
|
||||||
|
|
||||||
installlog=/tmp/livesupport_install.log
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
# Print the usage information for this script.
|
# Print the usage information for this script.
|
||||||
|
@ -70,6 +68,8 @@ printUsage()
|
||||||
echo " -p, --port The port of the apache web server [default: 80]"
|
echo " -p, --port The port of the apache web server [default: 80]"
|
||||||
echo " -P, --scheduler-port The port of the scheduler daemon to install"
|
echo " -P, --scheduler-port The port of the scheduler daemon to install"
|
||||||
echo " [default: 3344]";
|
echo " [default: 3344]";
|
||||||
|
echo " -r, --www-root The root directory for web documents served";
|
||||||
|
echo " by apache [default: /var/www]";
|
||||||
echo " -s, --dbserver The name of the database server host.";
|
echo " -s, --dbserver The name of the database server host.";
|
||||||
echo " [default: localhost]";
|
echo " [default: localhost]";
|
||||||
echo " -u, --dbuser The name of the database user to access the"
|
echo " -u, --dbuser The name of the database user to access the"
|
||||||
|
@ -86,7 +86,7 @@ printUsage()
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
CMD=${0##*/}
|
CMD=${0##*/}
|
||||||
|
|
||||||
opts=$(getopt -o d:D:g:H:hp:P:s:u:w: -l apache-group:,database:,dbserver:,dbuser:,dbpassword:,directory:,host:,help,port:,scheduler-port -n $CMD -- "$@") || exit 1
|
opts=$(getopt -o d:D:g:H:hp:P:r:s:u:w: -l apache-group:,database:,dbserver:,dbuser:,dbpassword:,directory:,host:,help,port:,scheduler-port:,www-root: -n $CMD -- "$@") || exit 1
|
||||||
eval set -- "$opts"
|
eval set -- "$opts"
|
||||||
while true; do
|
while true; do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
|
@ -111,6 +111,9 @@ while true; do
|
||||||
-P|--scheduler-port)
|
-P|--scheduler-port)
|
||||||
scheduler_port=$2;
|
scheduler_port=$2;
|
||||||
shift; shift;;
|
shift; shift;;
|
||||||
|
-r|--www-root)
|
||||||
|
www_root=$2;
|
||||||
|
shift; shift;;
|
||||||
-s|--dbserver)
|
-s|--dbserver)
|
||||||
dbserver=$2;
|
dbserver=$2;
|
||||||
shift; shift;;
|
shift; shift;;
|
||||||
|
@ -168,6 +171,10 @@ if [ "x$apache_group" == "x" ]; then
|
||||||
apache_group=apache;
|
apache_group=apache;
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ "x$www_root" == "x" ]; then
|
||||||
|
www_root=/var/www
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
echo "Installing LiveSupport.";
|
echo "Installing LiveSupport.";
|
||||||
echo "";
|
echo "";
|
||||||
|
@ -182,305 +189,42 @@ echo " database: $database";
|
||||||
echo " database user: $dbuser";
|
echo " database user: $dbuser";
|
||||||
echo " database user password: $dbpassword";
|
echo " database user password: $dbpassword";
|
||||||
echo " apache daemon group: $apache_group";
|
echo " apache daemon group: $apache_group";
|
||||||
|
echo " apache document root: $www_root";
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# check for the apache group to be a real group
|
|
||||||
group_tmp_file=/tmp/ls_group_check.$$
|
#-------------------------------------------------------------------------------
|
||||||
touch $group_tmp_file
|
# Do pre-install checks
|
||||||
test_result=`chgrp $apache_group $group_tmp_file 2> /dev/null`
|
#-------------------------------------------------------------------------------
|
||||||
if [ $? != 0 ]; then
|
$bindir/preInstall.sh --apache-group $apache_group || exit 1;
|
||||||
rm -f $group_tmp_file;
|
|
||||||
echo "Unable to use apache deamon group $apache_group.";
|
|
||||||
echo "Please check if $apache_group is a correct user group.";
|
|
||||||
exit 1;
|
|
||||||
fi
|
|
||||||
rm -f $group_tmp_file;
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
# The details of installation
|
# Copy the files
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
ls_php_host=$hostname
|
$bindir/copyInstall.sh --directory $installdir || exit 1;
|
||||||
ls_php_port=$http_port
|
|
||||||
ls_php_urlPrefix=livesupport
|
|
||||||
|
|
||||||
ls_alib_xmlRpcPrefix="xmlrpc/xrLocStor.php"
|
|
||||||
ls_storage_xmlRpcPrefix="xmlrpc/xrLocStor.php"
|
|
||||||
|
|
||||||
ls_dbserver=$dbserver
|
|
||||||
ls_dbuser=$dbuser
|
|
||||||
ls_dbpassword=$dbpassword
|
|
||||||
ls_database=$database
|
|
||||||
|
|
||||||
ls_scheduler_host=$hostname
|
|
||||||
ls_scheduler_port=$scheduler_port
|
|
||||||
ls_scheduler_urlPrefix=
|
|
||||||
ls_scheduler_xmlRpcPrefix=RC2
|
|
||||||
|
|
||||||
|
|
||||||
postgres_user=postgres
|
|
||||||
|
|
||||||
install_bin=$installdir/bin
|
|
||||||
install_etc=$installdir/etc
|
|
||||||
install_lib=$installdir/lib
|
|
||||||
install_tmp=$installdir/tmp
|
|
||||||
install_var=$installdir/var
|
|
||||||
|
|
||||||
|
|
||||||
# replace / characters with a \/ sequence, for sed below
|
|
||||||
# the sed statement is really "s/\//\\\\\//g", but needs escaping because of
|
|
||||||
# bash, hence the extra '\' characters
|
|
||||||
installdir_s=`echo $installdir | sed -e "s/\//\\\\\\\\\//g"`
|
|
||||||
ls_storage_xmlRpcPrefix_s=`echo $ls_storage_xmlRpcPrefix | \
|
|
||||||
sed -e "s/\//\\\\\\\\\//g"`
|
|
||||||
ls_alib_xmlRpcPrefix_s=`echo $ls_alib_xmlRpcPrefix | sed -e "s/\//\\\\\\\\\//g"`
|
|
||||||
ls_php_urlPrefix_s=`echo $ls_php_urlPrefix | sed -e "s/\//\\\\\\\\\//g"`
|
|
||||||
ls_scheduler_urlPrefix_s=`echo $ls_scheduler_urlPrefix | \
|
|
||||||
sed -e "s/\//\\\\\\\\\//g"`
|
|
||||||
ls_scheduler_xmlRpcPrefix_s=`echo $ls_scheduler_xmlRpcPrefix | \
|
|
||||||
sed -e "s/\//\\\\\\\\\//g"`
|
|
||||||
|
|
||||||
replace_sed_string="s/ls_install_dir/$installdir_s/; \
|
|
||||||
s/ls_dbuser/$ls_dbuser/; \
|
|
||||||
s/ls_dbpassword/$ls_dbpassword/; \
|
|
||||||
s/ls_dbserver/$ls_dbserver/; \
|
|
||||||
s/ls_database/$ls_database/; \
|
|
||||||
s/ls_storageUrlPath/\/$ls_php_urlPrefix_s\/storageServer\/var/; \
|
|
||||||
s/ls_php_urlPrefix/$ls_php_urlPrefix_s/; \
|
|
||||||
s/ls_storage_xmlRpcPrefix/$ls_storage_xmlRpcPrefix_s/; \
|
|
||||||
s/ls_alib_xmlRpcPrefix/$ls_alib_xmlRpcPrefix_s/; \
|
|
||||||
s/ls_php_host/$ls_php_host/; \
|
|
||||||
s/ls_php_port/$ls_php_port/; \
|
|
||||||
s/ls_archiveUrlPath/\/$ls_php_urlPrefix_s\/archiveServer\/var/; \
|
|
||||||
s/ls_scheduler_urlPrefix/$ls_scheduler_urlPrefix_s/; \
|
|
||||||
s/ls_scheduler_xmlRpcPrefix/$ls_scheduler_xmlRpcPrefix_s/; \
|
|
||||||
s/ls_scheduler_host/$ls_scheduler_host/; \
|
|
||||||
s/ls_scheduler_port/$ls_scheduler_port/;"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
# Function to check for the existence of an executable on the PATH
|
# Do post-install setup
|
||||||
#
|
|
||||||
# @param $1 the name of the exectuable
|
|
||||||
# @return 0 if the executable exists on the PATH, non-0 otherwise
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
check_exe() {
|
$bindir/postInstallScheduler.sh --directory $installdir \
|
||||||
if [ -x "`which $1 2> /dev/null`" ]; then
|
--database $database \
|
||||||
echo "Exectuable $1 found...";
|
--apache-group $apache_group \
|
||||||
return 0;
|
--host $hostname \
|
||||||
else
|
--port $http_port \
|
||||||
echo "Exectuable $1 not found...";
|
--scheduler-port $scheduler_port \
|
||||||
return 1;
|
--dbserver $dbserver \
|
||||||
fi
|
--dbuser $dbuser \
|
||||||
}
|
--dbpassword $dbpassword \
|
||||||
|
--www-root $www_root \
|
||||||
|
|| exit 1;
|
||||||
|
|
||||||
|
$bindir/postInstallGLiveSupport.sh --directory $installdir \
|
||||||
#-------------------------------------------------------------------------------
|
--host $hostname \
|
||||||
# Function to check for a PEAR module
|
--port $http_port \
|
||||||
#
|
--scheduler-port $scheduler_port \
|
||||||
# @param $1 the name of the PEAR module
|
|| exit 1;
|
||||||
# @return 0 if the module is available, non-0 otherwise
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
check_pear_module() {
|
|
||||||
test_result=`pear info $1`
|
|
||||||
if [ $? = 0 ]; then
|
|
||||||
echo "PEAR module $1 found...";
|
|
||||||
return 0;
|
|
||||||
else
|
|
||||||
echo "PEAR module $1 not found...";
|
|
||||||
return 1;
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Check to see if this script is being run as root
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
if [ `whoami` != "root" ]; then
|
|
||||||
echo "Please run this script as root.";
|
|
||||||
exit ;
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Check for required tools
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
echo "Checking for required tools..."
|
|
||||||
|
|
||||||
check_exe "sed" || exit 1;
|
|
||||||
check_exe "psql" || exit 1;
|
|
||||||
check_exe "php" || exit 1;
|
|
||||||
check_exe "pear" || exit 1;
|
|
||||||
check_exe "odbcinst" || exit 1;
|
|
||||||
|
|
||||||
check_pear_module "DB" || exit 1;
|
|
||||||
check_pear_module "Calendar" || exit 1;
|
|
||||||
check_pear_module "File" || exit 1;
|
|
||||||
check_pear_module "File_Find" || exit 1;
|
|
||||||
check_pear_module "HTML_Common" || exit 1;
|
|
||||||
check_pear_module "HTML_QuickForm" || exit 1;
|
|
||||||
check_pear_module "XML_Beautifier" || exit 1;
|
|
||||||
check_pear_module "XML_Parser" || exit 1;
|
|
||||||
check_pear_module "XML_RPC" || exit 1;
|
|
||||||
check_pear_module "XML_Serializer" || exit 1;
|
|
||||||
check_pear_module "XML_Util" || exit 1;
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Create the necessary database user and database itself
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
echo "Creating database and database user...";
|
|
||||||
|
|
||||||
# FIXME: the below might not work for remote databases
|
|
||||||
|
|
||||||
su - $postgres_user -c "echo \"CREATE USER $ls_dbuser \
|
|
||||||
ENCRYPTED PASSWORD '$ls_dbpassword' \
|
|
||||||
CREATEDB NOCREATEUSER;\" \
|
|
||||||
| psql -h $ls_dbserver template1" \
|
|
||||||
|| echo "Couldn't create database user $ls_dbuser.";
|
|
||||||
|
|
||||||
su - $postgres_user -c "echo \"CREATE DATABASE \\\"$ls_database\\\" \
|
|
||||||
OWNER $ls_dbuser ENCODING 'utf-8';\" \
|
|
||||||
| psql -h $ls_dbserver template1" \
|
|
||||||
|| echo "Couldn't create database $ls_database.";
|
|
||||||
|
|
||||||
|
|
||||||
# TODO: check for the success of these operations somehow
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Create the ODBC data source and driver
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
echo "Creating ODBC data source and driver...";
|
|
||||||
|
|
||||||
odbcinst_template=$products_dir/scheduler/etc/odbcinst_template
|
|
||||||
odbc_template=$products_dir/scheduler/etc/odbc_template
|
|
||||||
odbc_template_tmp=/tmp/odbc_template.$$
|
|
||||||
|
|
||||||
# check for an existing PostgreSQL ODBC driver, and only install if necessary
|
|
||||||
odbcinst_res=`odbcinst -q -d | grep "\[PostgreSQL\]"`
|
|
||||||
if [ "x$odbcinst_res" == "x" ]; then
|
|
||||||
echo "Registering ODBC PostgreSQL driver...";
|
|
||||||
odbcinst -i -d -v -f $odbcinst_template || exit 1;
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Registering LiveSupport ODBC data source...";
|
|
||||||
cat $odbc_template | sed -e "$replace_sed_string" > $odbc_template_tmp
|
|
||||||
odbcinst -i -s -l -f $odbc_template_tmp || exit 1;
|
|
||||||
rm -f $odbc_template_tmp
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Create the installation directory structure
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
echo "Copying files..."
|
|
||||||
|
|
||||||
mkdir -p $installdir
|
|
||||||
mkdir -p $install_bin
|
|
||||||
mkdir -p $install_etc
|
|
||||||
mkdir -p $install_lib
|
|
||||||
mkdir -p $install_tmp
|
|
||||||
mkdir -p $install_var
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Copy the PHP files
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
mkdir $install_var/getid3
|
|
||||||
cp -pPR $modules_dir/getid3/var $install_var/getid3
|
|
||||||
|
|
||||||
mkdir $install_var/alib
|
|
||||||
cp -pPR $modules_dir/alib/var $install_var/alib
|
|
||||||
|
|
||||||
mkdir $install_var/storageServer
|
|
||||||
cp -pPR $modules_dir/storageServer/var $install_var/storageServer
|
|
||||||
|
|
||||||
mkdir $install_var/archiveServer
|
|
||||||
cp -pPR $modules_dir/archiveServer/var $install_var/archiveServer
|
|
||||||
|
|
||||||
mkdir $install_var/htmlUI
|
|
||||||
cp -pPR $modules_dir/htmlUI/var $install_var/htmlUI
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Copy scheduler related files
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
cp -pPR $usrdir/lib/* $install_lib
|
|
||||||
cp -pPR $products_dir/scheduler/tmp/scheduler $install_bin
|
|
||||||
cp -pPR $products_dir/scheduler/bin/scheduler.sh $install_bin
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Clean up remnants of the CVS system
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
rm -rf `find $install_var -type d -name CVS`
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Customize the configuration files with the appropriate values
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
echo "Customizing configuration files..."
|
|
||||||
|
|
||||||
cat $install_var/storageServer/var/conf.php.template \
|
|
||||||
| sed -e "$replace_sed_string" \
|
|
||||||
> $install_var/storageServer/var/conf.php
|
|
||||||
|
|
||||||
cat $install_var/archiveServer/var/conf.php.template \
|
|
||||||
| sed -e "$replace_sed_string" \
|
|
||||||
> $install_var/archiveServer/var/conf.php
|
|
||||||
|
|
||||||
cat $products_dir/scheduler/etc/scheduler.xml.template \
|
|
||||||
| sed -e "$replace_sed_string" \
|
|
||||||
> $install_etc/scheduler.xml
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Setup directory permissions
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
echo "Setting up directory permissions..."
|
|
||||||
|
|
||||||
chgrp $apache_group $install_var/archiveServer/var/stor
|
|
||||||
chgrp $apache_group $install_var/archiveServer/var/access
|
|
||||||
chgrp $apache_group $install_var/archiveServer/var/trans
|
|
||||||
chgrp $apache_group $install_var/archiveServer/var/stor/buffer
|
|
||||||
|
|
||||||
chmod g+sw $install_var/archiveServer/var/stor
|
|
||||||
chmod g+sw $install_var/archiveServer/var/access
|
|
||||||
chmod g+sw $install_var/archiveServer/var/trans
|
|
||||||
chmod g+sw $install_var/archiveServer/var/stor/buffer
|
|
||||||
|
|
||||||
chgrp $apache_group $install_var/storageServer/var/stor
|
|
||||||
chgrp $apache_group $install_var/storageServer/var/access
|
|
||||||
chgrp $apache_group $install_var/storageServer/var/trans
|
|
||||||
chgrp $apache_group $install_var/storageServer/var/stor/buffer
|
|
||||||
|
|
||||||
chmod g+sw $install_var/storageServer/var/stor
|
|
||||||
chmod g+sw $install_var/storageServer/var/access
|
|
||||||
chmod g+sw $install_var/storageServer/var/trans
|
|
||||||
chmod g+sw $install_var/storageServer/var/stor/buffer
|
|
||||||
|
|
||||||
chgrp $apache_group $install_var/htmlUI/var/templates_c
|
|
||||||
chgrp $apache_group $install_var/htmlUI/var/html/img
|
|
||||||
|
|
||||||
chmod g+sw $install_var/htmlUI/var/templates_c
|
|
||||||
chmod g+sw $install_var/htmlUI/var/html/img
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
# Initialize the database
|
|
||||||
#-------------------------------------------------------------------------------
|
|
||||||
echo "Initializing database...";
|
|
||||||
|
|
||||||
# create PHP-related database tables
|
|
||||||
cd $install_var/storageServer/var/install
|
|
||||||
php -q install.php || exit 1;
|
|
||||||
cd -
|
|
||||||
|
|
||||||
# create scheduler-related database tables
|
|
||||||
cd $installdir
|
|
||||||
./bin/scheduler.sh install || exit 1;
|
|
||||||
cd -
|
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
|
220
livesupport/bin/postInstallGLiveSupport.sh
Executable file
220
livesupport/bin/postInstallGLiveSupport.sh
Executable file
|
@ -0,0 +1,220 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copyright (c) 2004 Media Development Loan Fund
|
||||||
|
#
|
||||||
|
# This file is part of the LiveSupport project.
|
||||||
|
# http://livesupport.campware.org/
|
||||||
|
# To report bugs, send an e-mail to bugs@campware.org
|
||||||
|
#
|
||||||
|
# LiveSupport is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# LiveSupport is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with LiveSupport; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Author : $Author: maroy $
|
||||||
|
# Version : $Revision: 1.1 $
|
||||||
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/Attic/postInstallGLiveSupport.sh,v $
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# This script makes post-installation steps for GLiveSupport.
|
||||||
|
#
|
||||||
|
# Invoke as:
|
||||||
|
# ./bin/postInstallGLiveSupport.sh
|
||||||
|
#
|
||||||
|
# To get usage help, try the -h option
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Determine directories, files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
reldir=`dirname $0`/..
|
||||||
|
basedir=`cd $reldir; pwd;`
|
||||||
|
bindir=$basedir/bin
|
||||||
|
etcdir=$basedir/etc
|
||||||
|
docdir=$basedir/doc
|
||||||
|
tmpdir=$basedir/tmp
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Print the usage information for this script.
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
printUsage()
|
||||||
|
{
|
||||||
|
echo "GLiveSupport post-install script.";
|
||||||
|
echo "parameters";
|
||||||
|
echo "";
|
||||||
|
echo " -d, --directory The installation directory, required.";
|
||||||
|
echo " -H, --host The fully qualified host name of the system";
|
||||||
|
echo " [default: guess].";
|
||||||
|
echo " -p, --port The port of the apache web server [default: 80]"
|
||||||
|
echo " -P, --scheduler-port The port of the scheduler daemon to install"
|
||||||
|
echo " [default: 3344]";
|
||||||
|
echo " -h, --help Print this message and exit.";
|
||||||
|
echo "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Process command line parameters
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
CMD=${0##*/}
|
||||||
|
|
||||||
|
opts=$(getopt -o d:H:hp:P: -l directory:,host:,help,port:,scheduler-port: -n $CMD -- "$@") || exit 1
|
||||||
|
eval set -- "$opts"
|
||||||
|
while true; do
|
||||||
|
case "$1" in
|
||||||
|
-d|--directory)
|
||||||
|
installdir=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-H|--host)
|
||||||
|
hostname=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-h|--help)
|
||||||
|
printUsage;
|
||||||
|
exit 0;;
|
||||||
|
-p|--port)
|
||||||
|
http_port=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-P|--scheduler-port)
|
||||||
|
scheduler_port=$2;
|
||||||
|
shift; shift;;
|
||||||
|
--)
|
||||||
|
shift;
|
||||||
|
break;;
|
||||||
|
*)
|
||||||
|
echo "Unrecognized option $1.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "x$installdir" == "x" ]; then
|
||||||
|
echo "Required parameter install directory not specified.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$hostname" == "x" ]; then
|
||||||
|
hostname=`hostname -f`;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$http_port" == "x" ]; then
|
||||||
|
http_port=80;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$scheduler_port" == "x" ]; then
|
||||||
|
scheduler_port=3344;
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "Making post-install steps for GLiveSupport.";
|
||||||
|
echo "";
|
||||||
|
echo "Using the following installation parameters:";
|
||||||
|
echo "";
|
||||||
|
echo " installation directory: $installdir";
|
||||||
|
echo " host name: $hostname";
|
||||||
|
echo " web server port: $http_port";
|
||||||
|
echo " scheduler port: $scheduler_port";
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# The details of installation
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
ls_php_host=$hostname
|
||||||
|
ls_php_port=$http_port
|
||||||
|
ls_php_urlPrefix=livesupport
|
||||||
|
|
||||||
|
ls_alib_xmlRpcPrefix="xmlrpc/xrLocStor.php"
|
||||||
|
ls_storage_xmlRpcPrefix="xmlrpc/xrLocStor.php"
|
||||||
|
|
||||||
|
ls_scheduler_host=$hostname
|
||||||
|
ls_scheduler_port=$scheduler_port
|
||||||
|
ls_scheduler_urlPrefix=
|
||||||
|
ls_scheduler_xmlRpcPrefix=RC2
|
||||||
|
|
||||||
|
|
||||||
|
install_bin=$installdir/bin
|
||||||
|
install_etc=$installdir/etc
|
||||||
|
install_lib=$installdir/lib
|
||||||
|
install_tmp=$installdir/tmp
|
||||||
|
install_var=$installdir/var
|
||||||
|
|
||||||
|
|
||||||
|
# replace / characters with a \/ sequence, for sed below
|
||||||
|
# the sed statement is really "s/\//\\\\\//g", but needs escaping because of
|
||||||
|
# bash, hence the extra '\' characters
|
||||||
|
installdir_s=`echo $installdir | sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
ls_storage_xmlRpcPrefix_s=`echo $ls_storage_xmlRpcPrefix | \
|
||||||
|
sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
ls_alib_xmlRpcPrefix_s=`echo $ls_alib_xmlRpcPrefix | sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
ls_php_urlPrefix_s=`echo $ls_php_urlPrefix | sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
ls_scheduler_urlPrefix_s=`echo $ls_scheduler_urlPrefix | \
|
||||||
|
sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
ls_scheduler_xmlRpcPrefix_s=`echo $ls_scheduler_xmlRpcPrefix | \
|
||||||
|
sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
|
||||||
|
replace_sed_string="s/ls_install_dir/$installdir_s/; \
|
||||||
|
s/ls_storageUrlPath/\/$ls_php_urlPrefix_s\/storageServer\/var/; \
|
||||||
|
s/ls_php_urlPrefix/$ls_php_urlPrefix_s/; \
|
||||||
|
s/ls_storage_xmlRpcPrefix/$ls_storage_xmlRpcPrefix_s/; \
|
||||||
|
s/ls_alib_xmlRpcPrefix/$ls_alib_xmlRpcPrefix_s/; \
|
||||||
|
s/ls_php_host/$ls_php_host/; \
|
||||||
|
s/ls_php_port/$ls_php_port/; \
|
||||||
|
s/ls_archiveUrlPath/\/$ls_php_urlPrefix_s\/archiveServer\/var/; \
|
||||||
|
s/ls_scheduler_urlPrefix/$ls_scheduler_urlPrefix_s/; \
|
||||||
|
s/ls_scheduler_xmlRpcPrefix/$ls_scheduler_xmlRpcPrefix_s/; \
|
||||||
|
s/ls_scheduler_host/$ls_scheduler_host/; \
|
||||||
|
s/ls_scheduler_port/$ls_scheduler_port/;"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Function to check for the existence of an executable on the PATH
|
||||||
|
#
|
||||||
|
# @param $1 the name of the exectuable
|
||||||
|
# @return 0 if the executable exists on the PATH, non-0 otherwise
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
check_exe() {
|
||||||
|
if [ -x "`which $1 2> /dev/null`" ]; then
|
||||||
|
echo "Exectuable $1 found...";
|
||||||
|
return 0;
|
||||||
|
else
|
||||||
|
echo "Exectuable $1 not found...";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Check for required tools
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Checking for required tools..."
|
||||||
|
|
||||||
|
check_exe "sed" || exit 1;
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Customize the configuration files with the appropriate values
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Customizing configuration files..."
|
||||||
|
|
||||||
|
cat $install_etc/gLiveSupport.xml.template \
|
||||||
|
| sed -e "$replace_sed_string" \
|
||||||
|
> $install_etc/gLiveSupport.xml
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Say goodbye
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Done."
|
||||||
|
|
445
livesupport/bin/postInstallScheduler.sh
Executable file
445
livesupport/bin/postInstallScheduler.sh
Executable file
|
@ -0,0 +1,445 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copyright (c) 2004 Media Development Loan Fund
|
||||||
|
#
|
||||||
|
# This file is part of the LiveSupport project.
|
||||||
|
# http://livesupport.campware.org/
|
||||||
|
# To report bugs, send an e-mail to bugs@campware.org
|
||||||
|
#
|
||||||
|
# LiveSupport is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# LiveSupport is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with LiveSupport; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Author : $Author: maroy $
|
||||||
|
# Version : $Revision: 1.1 $
|
||||||
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/Attic/postInstallScheduler.sh,v $
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# This script makes post-installation steps for the LiveSupport scheduler.
|
||||||
|
#
|
||||||
|
# Invoke as:
|
||||||
|
# ./bin/postInstallScheduler.sh
|
||||||
|
#
|
||||||
|
# To get usage help, try the -h option
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Determine directories, files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
reldir=`dirname $0`/..
|
||||||
|
basedir=`cd $reldir; pwd;`
|
||||||
|
bindir=$basedir/bin
|
||||||
|
etcdir=$basedir/etc
|
||||||
|
docdir=$basedir/doc
|
||||||
|
tmpdir=$basedir/tmp
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Print the usage information for this script.
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
printUsage()
|
||||||
|
{
|
||||||
|
echo "LiveSupport scheduler post-install script.";
|
||||||
|
echo "parameters";
|
||||||
|
echo "";
|
||||||
|
echo " -d, --directory The installation directory, required.";
|
||||||
|
echo " -D, --database The name of the LiveSupport database.";
|
||||||
|
echo " [default: LiveSupport]";
|
||||||
|
echo " -g, --apache-group The group the apache daemon runs as.";
|
||||||
|
echo " [default: apache]";
|
||||||
|
echo " -H, --host The fully qualified host name of the system";
|
||||||
|
echo " [default: guess].";
|
||||||
|
echo " -p, --port The port of the apache web server [default: 80]"
|
||||||
|
echo " -P, --scheduler-port The port of the scheduler daemon to install"
|
||||||
|
echo " [default: 3344]";
|
||||||
|
echo " -r, --www-root The root directory for web documents served";
|
||||||
|
echo " by apache [default: /var/www]";
|
||||||
|
echo " -s, --dbserver The name of the database server host.";
|
||||||
|
echo " [default: localhost]";
|
||||||
|
echo " -u, --dbuser The name of the database user to access the"
|
||||||
|
echo " database. [default: livesupport]";
|
||||||
|
echo " -w, --dbpassword The database user password.";
|
||||||
|
echo " [default: livesupport]";
|
||||||
|
echo " -h, --help Print this message and exit.";
|
||||||
|
echo "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Process command line parameters
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
CMD=${0##*/}
|
||||||
|
|
||||||
|
opts=$(getopt -o d:D:g:H:hp:P:r:s:u:w: -l apache-group:,database:,dbserver:,dbuser:,dbpassword:,directory:,host:,help,port:,scheduler-port:,www-root: -n $CMD -- "$@") || exit 1
|
||||||
|
eval set -- "$opts"
|
||||||
|
while true; do
|
||||||
|
case "$1" in
|
||||||
|
-d|--directory)
|
||||||
|
installdir=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-D|--database)
|
||||||
|
database=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-g|--apache-group)
|
||||||
|
apache_group=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-H|--host)
|
||||||
|
hostname=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-h|--help)
|
||||||
|
printUsage;
|
||||||
|
exit 0;;
|
||||||
|
-p|--port)
|
||||||
|
http_port=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-P|--scheduler-port)
|
||||||
|
scheduler_port=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-r|--www-root)
|
||||||
|
www_root=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-s|--dbserver)
|
||||||
|
dbserver=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-u|--dbuser)
|
||||||
|
dbuser=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-w|--dbpassword)
|
||||||
|
dbpassword=$2;
|
||||||
|
shift; shift;;
|
||||||
|
--)
|
||||||
|
shift;
|
||||||
|
break;;
|
||||||
|
*)
|
||||||
|
echo "Unrecognized option $1.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "x$installdir" == "x" ]; then
|
||||||
|
echo "Required parameter install directory not specified.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$hostname" == "x" ]; then
|
||||||
|
hostname=`hostname -f`;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$http_port" == "x" ]; then
|
||||||
|
http_port=80;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$scheduler_port" == "x" ]; then
|
||||||
|
scheduler_port=3344;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$dbserver" == "x" ]; then
|
||||||
|
dbserver=localhost;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$database" == "x" ]; then
|
||||||
|
database=LiveSupport;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$dbuser" == "x" ]; then
|
||||||
|
dbuser=livesupport;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$dbpassword" == "x" ]; then
|
||||||
|
dbpassword=livesupport;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$apache_group" == "x" ]; then
|
||||||
|
apache_group=apache;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$www_root" == "x" ]; then
|
||||||
|
www_root=/var/www
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "Making post-install steps for the LiveSupport scheduler.";
|
||||||
|
echo "";
|
||||||
|
echo "Using the following installation parameters:";
|
||||||
|
echo "";
|
||||||
|
echo " installation directory: $installdir";
|
||||||
|
echo " host name: $hostname";
|
||||||
|
echo " web server port: $http_port";
|
||||||
|
echo " scheduler port: $scheduler_port";
|
||||||
|
echo " database server: $dbserver";
|
||||||
|
echo " database: $database";
|
||||||
|
echo " database user: $dbuser";
|
||||||
|
echo " database user password: $dbpassword";
|
||||||
|
echo " apache daemon group: $apache_group";
|
||||||
|
echo " apache document root: $www_root";
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# The details of installation
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
ls_php_host=$hostname
|
||||||
|
ls_php_port=$http_port
|
||||||
|
ls_php_urlPrefix=livesupport
|
||||||
|
|
||||||
|
ls_alib_xmlRpcPrefix="xmlrpc/xrLocStor.php"
|
||||||
|
ls_storage_xmlRpcPrefix="xmlrpc/xrLocStor.php"
|
||||||
|
|
||||||
|
ls_dbserver=$dbserver
|
||||||
|
ls_dbuser=$dbuser
|
||||||
|
ls_dbpassword=$dbpassword
|
||||||
|
ls_database=$database
|
||||||
|
|
||||||
|
ls_scheduler_host=$hostname
|
||||||
|
ls_scheduler_port=$scheduler_port
|
||||||
|
ls_scheduler_urlPrefix=
|
||||||
|
ls_scheduler_xmlRpcPrefix=RC2
|
||||||
|
|
||||||
|
|
||||||
|
postgres_user=postgres
|
||||||
|
|
||||||
|
install_bin=$installdir/bin
|
||||||
|
install_etc=$installdir/etc
|
||||||
|
install_lib=$installdir/lib
|
||||||
|
install_tmp=$installdir/tmp
|
||||||
|
install_var=$installdir/var
|
||||||
|
|
||||||
|
|
||||||
|
# replace / characters with a \/ sequence, for sed below
|
||||||
|
# the sed statement is really "s/\//\\\\\//g", but needs escaping because of
|
||||||
|
# bash, hence the extra '\' characters
|
||||||
|
installdir_s=`echo $installdir | sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
ls_storage_xmlRpcPrefix_s=`echo $ls_storage_xmlRpcPrefix | \
|
||||||
|
sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
ls_alib_xmlRpcPrefix_s=`echo $ls_alib_xmlRpcPrefix | sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
ls_php_urlPrefix_s=`echo $ls_php_urlPrefix | sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
ls_scheduler_urlPrefix_s=`echo $ls_scheduler_urlPrefix | \
|
||||||
|
sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
ls_scheduler_xmlRpcPrefix_s=`echo $ls_scheduler_xmlRpcPrefix | \
|
||||||
|
sed -e "s/\//\\\\\\\\\//g"`
|
||||||
|
|
||||||
|
replace_sed_string="s/ls_install_dir/$installdir_s/; \
|
||||||
|
s/ls_dbuser/$ls_dbuser/; \
|
||||||
|
s/ls_dbpassword/$ls_dbpassword/; \
|
||||||
|
s/ls_dbserver/$ls_dbserver/; \
|
||||||
|
s/ls_database/$ls_database/; \
|
||||||
|
s/ls_storageUrlPath/\/$ls_php_urlPrefix_s\/storageServer\/var/; \
|
||||||
|
s/ls_php_urlPrefix/$ls_php_urlPrefix_s/; \
|
||||||
|
s/ls_storage_xmlRpcPrefix/$ls_storage_xmlRpcPrefix_s/; \
|
||||||
|
s/ls_alib_xmlRpcPrefix/$ls_alib_xmlRpcPrefix_s/; \
|
||||||
|
s/ls_php_host/$ls_php_host/; \
|
||||||
|
s/ls_php_port/$ls_php_port/; \
|
||||||
|
s/ls_archiveUrlPath/\/$ls_php_urlPrefix_s\/archiveServer\/var/; \
|
||||||
|
s/ls_scheduler_urlPrefix/$ls_scheduler_urlPrefix_s/; \
|
||||||
|
s/ls_scheduler_xmlRpcPrefix/$ls_scheduler_xmlRpcPrefix_s/; \
|
||||||
|
s/ls_scheduler_host/$ls_scheduler_host/; \
|
||||||
|
s/ls_scheduler_port/$ls_scheduler_port/;"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Function to check for the existence of an executable on the PATH
|
||||||
|
#
|
||||||
|
# @param $1 the name of the exectuable
|
||||||
|
# @return 0 if the executable exists on the PATH, non-0 otherwise
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
check_exe() {
|
||||||
|
if [ -x "`which $1 2> /dev/null`" ]; then
|
||||||
|
echo "Exectuable $1 found...";
|
||||||
|
return 0;
|
||||||
|
else
|
||||||
|
echo "Exectuable $1 not found...";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Check to see if this script is being run as root
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
if [ `whoami` != "root" ]; then
|
||||||
|
echo "Please run this script as root.";
|
||||||
|
exit ;
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Check for required tools
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Checking for required tools..."
|
||||||
|
|
||||||
|
check_exe "sed" || exit 1;
|
||||||
|
check_exe "psql" || exit 1;
|
||||||
|
check_exe "php" || exit 1;
|
||||||
|
check_exe "pear" || exit 1;
|
||||||
|
check_exe "odbcinst" || exit 1;
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Check for the apache group to be a real group
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
group_tmp_file=/tmp/ls_group_check.$$
|
||||||
|
touch $group_tmp_file
|
||||||
|
test_result=`chgrp $apache_group $group_tmp_file 2> /dev/null`
|
||||||
|
if [ $? != 0 ]; then
|
||||||
|
rm -f $group_tmp_file;
|
||||||
|
echo "Unable to use apache deamon group $apache_group.";
|
||||||
|
echo "Please check if $apache_group is a correct user group.";
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
rm -f $group_tmp_file;
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Create the necessary database user and database itself
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Creating database and database user...";
|
||||||
|
|
||||||
|
# FIXME: the below might not work for remote databases
|
||||||
|
|
||||||
|
if [ "x$ls_dbserver" == "xlocalhost" ]; then
|
||||||
|
su - $postgres_user -c "echo \"CREATE USER $ls_dbuser \
|
||||||
|
ENCRYPTED PASSWORD '$ls_dbpassword' \
|
||||||
|
CREATEDB NOCREATEUSER;\" \
|
||||||
|
| psql template1" \
|
||||||
|
|| echo "Couldn't create database user $ls_dbuser.";
|
||||||
|
|
||||||
|
su - $postgres_user -c "echo \"CREATE DATABASE \\\"$ls_database\\\" \
|
||||||
|
OWNER $ls_dbuser ENCODING 'utf-8';\" \
|
||||||
|
| psql template1" \
|
||||||
|
|| echo "Couldn't create database $ls_database.";
|
||||||
|
else
|
||||||
|
echo "Unable to automatically create database user and table for";
|
||||||
|
echo "remote database $ls_dbserver.";
|
||||||
|
echo "Make sure to create database user $ls_dbuser with password";
|
||||||
|
echo "$ls_dbpassword on database server at $ls_dbserver.";
|
||||||
|
echo "Also create a database called $ld_database, owned by this user.";
|
||||||
|
echo "";
|
||||||
|
echo "The easiest way to achieve this is by issuing the following SQL";
|
||||||
|
echo "commands to PostgreSQL:";
|
||||||
|
echo "CREATE USER $ls_dbuser";
|
||||||
|
echo " ENCRYPTED PASSWORD '$ls_dbpassword'";
|
||||||
|
echo " CREATEDB NOCREATEUSER;";
|
||||||
|
echo "CREATE DATABASE \"$ls_database\"";
|
||||||
|
echo " OWNER $ls_dbuser ENCODING 'utf-8';";
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# TODO: check for the success of these operations somehow
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Create the ODBC data source and driver
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Creating ODBC data source and driver...";
|
||||||
|
|
||||||
|
odbcinst_template=$install_etc/odbcinst_template
|
||||||
|
odbc_template=$install_etc/odbc_template
|
||||||
|
odbc_template_tmp=/tmp/odbc_template.$$
|
||||||
|
|
||||||
|
# check for an existing PostgreSQL ODBC driver, and only install if necessary
|
||||||
|
odbcinst_res=`odbcinst -q -d | grep "\[PostgreSQL\]"`
|
||||||
|
if [ "x$odbcinst_res" == "x" ]; then
|
||||||
|
echo "Registering ODBC PostgreSQL driver...";
|
||||||
|
odbcinst -i -d -v -f $odbcinst_template || exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Registering LiveSupport ODBC data source...";
|
||||||
|
cat $odbc_template | sed -e "$replace_sed_string" > $odbc_template_tmp
|
||||||
|
odbcinst -i -s -l -f $odbc_template_tmp || exit 1;
|
||||||
|
rm -f $odbc_template_tmp
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Customize the configuration files with the appropriate values
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Customizing configuration files..."
|
||||||
|
|
||||||
|
cat $install_var/storageServer/var/conf.php.template \
|
||||||
|
| sed -e "$replace_sed_string" \
|
||||||
|
> $install_var/storageServer/var/conf.php
|
||||||
|
|
||||||
|
cat $install_var/archiveServer/var/conf.php.template \
|
||||||
|
| sed -e "$replace_sed_string" \
|
||||||
|
> $install_var/archiveServer/var/conf.php
|
||||||
|
|
||||||
|
cat $install_etc/scheduler.xml.template \
|
||||||
|
| sed -e "$replace_sed_string" \
|
||||||
|
> $install_etc/scheduler.xml
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Setup directory permissions
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Setting up directory permissions..."
|
||||||
|
|
||||||
|
chgrp $apache_group $install_var/archiveServer/var/stor
|
||||||
|
chgrp $apache_group $install_var/archiveServer/var/access
|
||||||
|
chgrp $apache_group $install_var/archiveServer/var/trans
|
||||||
|
chgrp $apache_group $install_var/archiveServer/var/stor/buffer
|
||||||
|
|
||||||
|
chmod g+sw $install_var/archiveServer/var/stor
|
||||||
|
chmod g+sw $install_var/archiveServer/var/access
|
||||||
|
chmod g+sw $install_var/archiveServer/var/trans
|
||||||
|
chmod g+sw $install_var/archiveServer/var/stor/buffer
|
||||||
|
|
||||||
|
chgrp $apache_group $install_var/storageServer/var/stor
|
||||||
|
chgrp $apache_group $install_var/storageServer/var/access
|
||||||
|
chgrp $apache_group $install_var/storageServer/var/trans
|
||||||
|
chgrp $apache_group $install_var/storageServer/var/stor/buffer
|
||||||
|
|
||||||
|
chmod g+sw $install_var/storageServer/var/stor
|
||||||
|
chmod g+sw $install_var/storageServer/var/access
|
||||||
|
chmod g+sw $install_var/storageServer/var/trans
|
||||||
|
chmod g+sw $install_var/storageServer/var/stor/buffer
|
||||||
|
|
||||||
|
chgrp $apache_group $install_var/htmlUI/var/templates_c
|
||||||
|
chgrp $apache_group $install_var/htmlUI/var/html/img
|
||||||
|
|
||||||
|
chmod g+sw $install_var/htmlUI/var/templates_c
|
||||||
|
chmod g+sw $install_var/htmlUI/var/html/img
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Create symlinks
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Creating symlinks...";
|
||||||
|
|
||||||
|
# create symlink for the PHP pages in apache's document root
|
||||||
|
rm -f $www_root/livesupport
|
||||||
|
ln -s $install_var $www_root/livesupport
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Initialize the database
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Initializing database...";
|
||||||
|
|
||||||
|
# create PHP-related database tables
|
||||||
|
cd $install_var/storageServer/var/install
|
||||||
|
php -q install.php || exit 1;
|
||||||
|
cd -
|
||||||
|
|
||||||
|
# create scheduler-related database tables
|
||||||
|
cd $installdir
|
||||||
|
$bindir/scheduler.sh install || exit 1;
|
||||||
|
cd -
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Say goodbye
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Done."
|
||||||
|
|
264
livesupport/bin/postUninstall.sh
Executable file
264
livesupport/bin/postUninstall.sh
Executable file
|
@ -0,0 +1,264 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copyright (c) 2004 Media Development Loan Fund
|
||||||
|
#
|
||||||
|
# This file is part of the LiveSupport project.
|
||||||
|
# http://livesupport.campware.org/
|
||||||
|
# To report bugs, send an e-mail to bugs@campware.org
|
||||||
|
#
|
||||||
|
# LiveSupport is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# LiveSupport is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with LiveSupport; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Author : $Author: maroy $
|
||||||
|
# Version : $Revision: 1.1 $
|
||||||
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/postUninstall.sh,v $
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# This script makes post-uninstallation steps for LiveSupport.
|
||||||
|
#
|
||||||
|
# Invoke as:
|
||||||
|
# ./bin/postUninstall.sh
|
||||||
|
#
|
||||||
|
# To get usage help, try the -h option
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Determine directories, files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
reldir=`dirname $0`/..
|
||||||
|
basedir=`cd $reldir; pwd;`
|
||||||
|
bindir=$basedir/bin
|
||||||
|
etcdir=$basedir/etc
|
||||||
|
docdir=$basedir/doc
|
||||||
|
tmpdir=$basedir/tmp
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Print the usage information for this script.
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
printUsage()
|
||||||
|
{
|
||||||
|
echo "LiveSupport post-uninstall script.";
|
||||||
|
echo "parameters";
|
||||||
|
echo "";
|
||||||
|
echo " -d, --directory The installation directory, required.";
|
||||||
|
echo " -D, --database The name of the LiveSupport database.";
|
||||||
|
echo " [default: LiveSupport]";
|
||||||
|
echo " -r, --www-root The root directory for web documents served";
|
||||||
|
echo " by apache [default: /var/www]";
|
||||||
|
echo " -s, --dbserver The name of the database server host.";
|
||||||
|
echo " [default: localhost]";
|
||||||
|
echo " -u, --dbuser The name of the database user to access the"
|
||||||
|
echo " database. [default: livesupport]";
|
||||||
|
echo " -h, --help Print this message and exit.";
|
||||||
|
echo "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Process command line parameters
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
CMD=${0##*/}
|
||||||
|
|
||||||
|
opts=$(getopt -o d:D:hr:s:u: -l database:,dbserver:,dbuser:,directory:,help,www-root: -n $CMD -- "$@") || exit 1
|
||||||
|
eval set -- "$opts"
|
||||||
|
while true; do
|
||||||
|
case "$1" in
|
||||||
|
-d|--directory)
|
||||||
|
installdir=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-D|--database)
|
||||||
|
database=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-h|--help)
|
||||||
|
printUsage;
|
||||||
|
exit 0;;
|
||||||
|
-r|--www-root)
|
||||||
|
www_root=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-s|--dbserver)
|
||||||
|
dbserver=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-u|--dbuser)
|
||||||
|
dbuser=$2;
|
||||||
|
shift; shift;;
|
||||||
|
--)
|
||||||
|
shift;
|
||||||
|
break;;
|
||||||
|
*)
|
||||||
|
echo "Unrecognized option $1.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "x$installdir" == "x" ]; then
|
||||||
|
echo "Required parameter install directory not specified.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$dbserver" == "x" ]; then
|
||||||
|
dbserver=localhost;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$database" == "x" ]; then
|
||||||
|
database=LiveSupport;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$dbuser" == "x" ]; then
|
||||||
|
dbuser=livesupport;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$www_root" == "x" ]; then
|
||||||
|
www_root=/var/www
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "Making post-uninstall steps for LiveSupport.";
|
||||||
|
echo "";
|
||||||
|
echo "Using the following installation parameters:";
|
||||||
|
echo "";
|
||||||
|
echo " installation directory: $installdir";
|
||||||
|
echo " database server: $dbserver";
|
||||||
|
echo " database: $database";
|
||||||
|
echo " database user: $dbuser";
|
||||||
|
echo " apache document root: $www_root";
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# The details of installation
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
ls_dbserver=$dbserver
|
||||||
|
ls_dbuser=$dbuser
|
||||||
|
ls_database=$database
|
||||||
|
|
||||||
|
|
||||||
|
postgres_user=postgres
|
||||||
|
|
||||||
|
install_bin=$installdir/bin
|
||||||
|
install_etc=$installdir/etc
|
||||||
|
install_lib=$installdir/lib
|
||||||
|
install_tmp=$installdir/tmp
|
||||||
|
install_var=$installdir/var
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Function to check for the existence of an executable on the PATH
|
||||||
|
#
|
||||||
|
# @param $1 the name of the exectuable
|
||||||
|
# @return 0 if the executable exists on the PATH, non-0 otherwise
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
check_exe() {
|
||||||
|
if [ -x "`which $1 2> /dev/null`" ]; then
|
||||||
|
echo "Exectuable $1 found...";
|
||||||
|
return 0;
|
||||||
|
else
|
||||||
|
echo "Exectuable $1 not found...";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Check to see if this script is being run as root
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
if [ `whoami` != "root" ]; then
|
||||||
|
echo "Please run this script as root.";
|
||||||
|
exit ;
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Check for required tools
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Checking for required tools..."
|
||||||
|
|
||||||
|
check_exe "psql" || exit 1;
|
||||||
|
check_exe "odbcinst" || exit 1;
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Remove symlinks
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Removing symlinks...";
|
||||||
|
|
||||||
|
# remove symlink for the PHP pages in apache's document root
|
||||||
|
rm -f $www_root/livesupport
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Delete data files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Deleting data files...";
|
||||||
|
|
||||||
|
rm -rf $installdir/var/htmlUI/var/html/img/*
|
||||||
|
rm -rf $installdir/var/htmlUI/var/templates_c/*
|
||||||
|
rm -rf $installdir/var/storageServer/var/stor/*
|
||||||
|
rm -rf $installdir/var/storageServer/var/access/*
|
||||||
|
rm -rf $installdir/var/storageServer/var/trans/*
|
||||||
|
rm -rf $installdir/var/archiveServer/var/stor/*
|
||||||
|
rm -rf $installdir/var/archiveServer/var/access/*
|
||||||
|
rm -rf $installdir/var/archiveServer/var/trans/*
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Remove the ODBC data source and driver
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Removing ODBC data source and driver...";
|
||||||
|
|
||||||
|
echo "Removing LiveSupport ODBC data source...";
|
||||||
|
odbcinst -u -s -l -n $ls_database || exit 1;
|
||||||
|
|
||||||
|
echo "De-registering ODBC PostgreSQL driver...";
|
||||||
|
odbcinst -u -d -v -n PostgreSQL || exit 1;
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Remove the database user and the database itself
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Removing database and database user...";
|
||||||
|
|
||||||
|
if [ "x$ls_dbserver" == "xlocalhost" ]; then
|
||||||
|
su - $postgres_user -c "echo \"DROP DATABASE \\\"$ls_database\\\" \"\
|
||||||
|
| psql template1" \
|
||||||
|
|| echo "Couldn't drop database $ls_database.";
|
||||||
|
|
||||||
|
su - $postgres_user -c "echo \"DROP USER $ls_dbuser \"\
|
||||||
|
| psql template1" \
|
||||||
|
|| echo "Couldn't drop database user $ls_dbuser.";
|
||||||
|
|
||||||
|
else
|
||||||
|
echo "Unable to automatically drop database user and table for";
|
||||||
|
echo "remote database $ls_dbserver.";
|
||||||
|
echo "Make sure to drop database user $ls_dbuser on database server";
|
||||||
|
echo "at $ls_dbserver.";
|
||||||
|
echo "Also drop the database called $ld_database, owned by this user.";
|
||||||
|
echo "";
|
||||||
|
echo "The easiest way to achieve this is by issuing the following SQL";
|
||||||
|
echo "commands to PostgreSQL:";
|
||||||
|
echo "DROP DATABASE \"$ls_database\";";
|
||||||
|
echo "DROP USER $ls_dbuser;";
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# TODO: check for the success of these operations somehow
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Say goodbye
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Done."
|
||||||
|
|
184
livesupport/bin/preInstall.sh
Executable file
184
livesupport/bin/preInstall.sh
Executable file
|
@ -0,0 +1,184 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copyright (c) 2004 Media Development Loan Fund
|
||||||
|
#
|
||||||
|
# This file is part of the LiveSupport project.
|
||||||
|
# http://livesupport.campware.org/
|
||||||
|
# To report bugs, send an e-mail to bugs@campware.org
|
||||||
|
#
|
||||||
|
# LiveSupport is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# LiveSupport is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with LiveSupport; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Author : $Author: maroy $
|
||||||
|
# Version : $Revision: 1.1 $
|
||||||
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/bin/preInstall.sh,v $
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# This script makes pre-install steps and checks for LiveSupport.
|
||||||
|
#
|
||||||
|
# Invoke as:
|
||||||
|
# ./bin/preInstall.sh
|
||||||
|
#
|
||||||
|
# To get usage help, try the -h option
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Determine directories, files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
reldir=`dirname $0`/..
|
||||||
|
basedir=`cd $reldir; pwd;`
|
||||||
|
bindir=$basedir/bin
|
||||||
|
etcdir=$basedir/etc
|
||||||
|
docdir=$basedir/doc
|
||||||
|
tmpdir=$basedir/tmp
|
||||||
|
toolsdir=$basedir/tools
|
||||||
|
modules_dir=$basedir/modules
|
||||||
|
products_dir=$basedir/products
|
||||||
|
|
||||||
|
usrdir=`cd $basedir/usr; pwd;`
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Print the usage information for this script.
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
printUsage()
|
||||||
|
{
|
||||||
|
echo "LiveSupport pre-install script.";
|
||||||
|
echo "parameters";
|
||||||
|
echo "";
|
||||||
|
echo " -g, --apache-group The group the apache daemon runs as.";
|
||||||
|
echo " [default: apache]";
|
||||||
|
echo " -h, --help Print this message and exit.";
|
||||||
|
echo "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Process command line parameters
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
CMD=${0##*/}
|
||||||
|
|
||||||
|
opts=$(getopt -o g:h -l apache-group:,help -n $CMD -- "$@") || exit 1
|
||||||
|
eval set -- "$opts"
|
||||||
|
while true; do
|
||||||
|
case "$1" in
|
||||||
|
-g|--apache-group)
|
||||||
|
apache_group=$2;
|
||||||
|
shift; shift;;
|
||||||
|
-h|--help)
|
||||||
|
printUsage;
|
||||||
|
exit 0;;
|
||||||
|
--)
|
||||||
|
shift;
|
||||||
|
break;;
|
||||||
|
*)
|
||||||
|
echo "Unrecognized option $1.";
|
||||||
|
printUsage;
|
||||||
|
exit 1;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "x$apache_group" == "x" ]; then
|
||||||
|
apache_group=apache;
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "Making pre-install steps for LiveSupport.";
|
||||||
|
echo "";
|
||||||
|
echo "Using the following installation parameters:";
|
||||||
|
echo "";
|
||||||
|
echo " apache daemon group: $apache_group";
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Check for the apache group to be a real group
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
group_tmp_file=/tmp/ls_group_check.$$
|
||||||
|
touch $group_tmp_file
|
||||||
|
test_result=`chgrp $apache_group $group_tmp_file 2> /dev/null`
|
||||||
|
if [ $? != 0 ]; then
|
||||||
|
rm -f $group_tmp_file;
|
||||||
|
echo "Unable to use apache deamon group $apache_group.";
|
||||||
|
echo "Please check if $apache_group is a correct user group.";
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
rm -f $group_tmp_file;
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Function to check for the existence of an executable on the PATH
|
||||||
|
#
|
||||||
|
# @param $1 the name of the exectuable
|
||||||
|
# @return 0 if the executable exists on the PATH, non-0 otherwise
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
check_exe() {
|
||||||
|
if [ -x "`which $1 2> /dev/null`" ]; then
|
||||||
|
echo "Exectuable $1 found...";
|
||||||
|
return 0;
|
||||||
|
else
|
||||||
|
echo "Exectuable $1 not found...";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Function to check for a PEAR module
|
||||||
|
#
|
||||||
|
# @param $1 the name of the PEAR module
|
||||||
|
# @return 0 if the module is available, non-0 otherwise
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
check_pear_module() {
|
||||||
|
test_result=`pear info $1`
|
||||||
|
if [ $? = 0 ]; then
|
||||||
|
echo "PEAR module $1 found...";
|
||||||
|
return 0;
|
||||||
|
else
|
||||||
|
echo "PEAR module $1 not found...";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Check for required tools
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Checking for required tools..."
|
||||||
|
|
||||||
|
check_exe "sed" || exit 1;
|
||||||
|
check_exe "psql" || exit 1;
|
||||||
|
check_exe "php" || exit 1;
|
||||||
|
check_exe "pear" || exit 1;
|
||||||
|
check_exe "odbcinst" || exit 1;
|
||||||
|
|
||||||
|
check_pear_module "DB" || exit 1;
|
||||||
|
check_pear_module "Calendar" || exit 1;
|
||||||
|
check_pear_module "File" || exit 1;
|
||||||
|
check_pear_module "File_Find" || exit 1;
|
||||||
|
check_pear_module "HTML_Common" || exit 1;
|
||||||
|
check_pear_module "HTML_QuickForm" || exit 1;
|
||||||
|
check_pear_module "XML_Beautifier" || exit 1;
|
||||||
|
check_pear_module "XML_Parser" || exit 1;
|
||||||
|
check_pear_module "XML_RPC" || exit 1;
|
||||||
|
check_pear_module "XML_Serializer" || exit 1;
|
||||||
|
check_pear_module "XML_Util" || exit 1;
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Say goodbye
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
echo "Done."
|
||||||
|
|
|
@ -21,8 +21,8 @@
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
# Author : $Author: maroy $
|
# Author : $Author: maroy $
|
||||||
# Version : $Revision: 1.29 $
|
# Version : $Revision: 1.1 $
|
||||||
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/Attic/Makefile,v $
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/etc/Makefile.in,v $
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
@ -42,10 +42,12 @@ FLAWFINDER = flawfinder
|
||||||
# Basic directory and file definitions
|
# Basic directory and file definitions
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
BASE_DIR = .
|
BASE_DIR = .
|
||||||
|
BIN_DIR = ${BASE_DIR}/bin
|
||||||
DOC_DIR = ${BASE_DIR}/doc
|
DOC_DIR = ${BASE_DIR}/doc
|
||||||
DOXYGEN_DIR = ${DOC_DIR}/doxygen
|
DOXYGEN_DIR = ${DOC_DIR}/doxygen
|
||||||
COVERAGE_DIR = ${DOC_DIR}/coverage
|
COVERAGE_DIR = ${DOC_DIR}/coverage
|
||||||
ETC_DIR = ${BASE_DIR}/etc
|
ETC_DIR = ${BASE_DIR}/etc
|
||||||
|
TMP_DIR = ${BASE_DIR}/tmp
|
||||||
|
|
||||||
DOXYGEN_CONFIG = ${ETC_DIR}/doxygen.config
|
DOXYGEN_CONFIG = ${ETC_DIR}/doxygen.config
|
||||||
XMLRPC-DOXYGEN_CONFIG = ${ETC_DIR}/xmlrpc-doxygen.config
|
XMLRPC-DOXYGEN_CONFIG = ${ETC_DIR}/xmlrpc-doxygen.config
|
||||||
|
@ -155,12 +157,16 @@ flawfinder:
|
||||||
clean:
|
clean:
|
||||||
${RMDIR} ${DOXYGEN_DIR}/html
|
${RMDIR} ${DOXYGEN_DIR}/html
|
||||||
${RMDIR} ${COVERAGE_DIR}/*
|
${RMDIR} ${COVERAGE_DIR}/*
|
||||||
|
${RM} ${TMP_DIR}/*.stamp
|
||||||
|
|
||||||
setup: tools_setup doxytag_setup modules_setup products_setup
|
setup: ${TMP_DIR}/setup.stamp
|
||||||
|
${TMP_DIR}/setup.stamp: tools_setup doxytag_setup modules_setup products_setup
|
||||||
|
touch ${TMP_DIR}/setup.stamp
|
||||||
|
|
||||||
recompile: distclean modules_setup products_setup compile
|
recompile: distclean modules_setup products_setup compile
|
||||||
|
|
||||||
tools_setup:
|
tools_setup: ${TMP_DIR}/tools_setup.stamp
|
||||||
|
${TMP_DIR}/tools_setup.stamp:
|
||||||
${BOOST_DIR}/${BOOST_VERSION}/bin/install.sh
|
${BOOST_DIR}/${BOOST_VERSION}/bin/install.sh
|
||||||
${CXXUNIT_DIR}/${CXXUNIT_VERSION}/bin/install.sh
|
${CXXUNIT_DIR}/${CXXUNIT_VERSION}/bin/install.sh
|
||||||
${LIBODBCXX_DIR}/${LIBODBCXX_VERSION}/bin/install.sh
|
${LIBODBCXX_DIR}/${LIBODBCXX_VERSION}/bin/install.sh
|
||||||
|
@ -173,11 +179,15 @@ tools_setup:
|
||||||
${ICU_DIR}/${ICU_VERSION}/bin/install.sh
|
${ICU_DIR}/${ICU_VERSION}/bin/install.sh
|
||||||
${CURL_DIR}/${CURL_VERSION}/bin/install.sh
|
${CURL_DIR}/${CURL_VERSION}/bin/install.sh
|
||||||
${TAGLIB_DIR}/${TAGLIB_VERSION}/bin/install.sh
|
${TAGLIB_DIR}/${TAGLIB_VERSION}/bin/install.sh
|
||||||
|
touch ${TMP_DIR}/tools_setup.stamp
|
||||||
|
|
||||||
doxytag_setup:
|
doxytag_setup: ${TMP_DIR}/doxytag_setup.stamp
|
||||||
|
${TMP_DIR}/doxytag_setup.stamp:
|
||||||
${DOXYTAG} -t ${TAGFILE} ${EXTERNAL_DOC_PAGES}
|
${DOXYTAG} -t ${TAGFILE} ${EXTERNAL_DOC_PAGES}
|
||||||
|
touch ${TMP_DIR}/doxytag_setup.stamp
|
||||||
|
|
||||||
modules_setup:
|
modules_setup: ${TMP_DIR}/modules_setup.stamp
|
||||||
|
${TMP_DIR}/modules_setup.stamp:
|
||||||
${CORE_DIR}/bin/autogen.sh
|
${CORE_DIR}/bin/autogen.sh
|
||||||
${AUTHENTICATION_DIR}/bin/autogen.sh
|
${AUTHENTICATION_DIR}/bin/autogen.sh
|
||||||
${DB_DIR}/bin/autogen.sh
|
${DB_DIR}/bin/autogen.sh
|
||||||
|
@ -188,10 +198,13 @@ modules_setup:
|
||||||
${WIDGETS_DIR}/bin/autogen.sh
|
${WIDGETS_DIR}/bin/autogen.sh
|
||||||
# -${MAKE} -C ${STORAGE_SERVER_DIR} dir_setup
|
# -${MAKE} -C ${STORAGE_SERVER_DIR} dir_setup
|
||||||
-${MAKE} -C ${STORAGE_SERVER_DIR} all
|
-${MAKE} -C ${STORAGE_SERVER_DIR} all
|
||||||
|
touch ${TMP_DIR}/modules_setup.stamp
|
||||||
|
|
||||||
products_setup:
|
products_setup: ${TMP_DIR}/products_setup.stamp
|
||||||
|
${TMP_DIR}/products_setup.stamp:
|
||||||
${SCHEDULER_DIR}/bin/autogen.sh
|
${SCHEDULER_DIR}/bin/autogen.sh
|
||||||
${GLIVESUPPORT_DIR}/bin/autogen.sh
|
${GLIVESUPPORT_DIR}/bin/autogen.sh
|
||||||
|
touch ${TMP_DIR}/products_setup.stamp
|
||||||
|
|
||||||
distclean:
|
distclean:
|
||||||
${MAKE} -C ${CORE_DIR} distclean
|
${MAKE} -C ${CORE_DIR} distclean
|
||||||
|
@ -218,7 +231,8 @@ depclean:
|
||||||
${MAKE} -C ${GLIVESUPPORT_DIR} depclean
|
${MAKE} -C ${GLIVESUPPORT_DIR} depclean
|
||||||
-${MAKE} -C ${STORAGE_SERVER_DIR} depclean
|
-${MAKE} -C ${STORAGE_SERVER_DIR} depclean
|
||||||
|
|
||||||
compile:
|
compile: ${TMP_DIR}/compile.stamp
|
||||||
|
${TMP_DIR}/compile.stamp:
|
||||||
${MAKE} -C ${CORE_DIR} all
|
${MAKE} -C ${CORE_DIR} all
|
||||||
${MAKE} -C ${AUTHENTICATION_DIR} all
|
${MAKE} -C ${AUTHENTICATION_DIR} all
|
||||||
${MAKE} -C ${DB_DIR} all
|
${MAKE} -C ${DB_DIR} all
|
||||||
|
@ -229,6 +243,7 @@ compile:
|
||||||
${MAKE} -C ${WIDGETS_DIR} all
|
${MAKE} -C ${WIDGETS_DIR} all
|
||||||
${MAKE} -C ${SCHEDULER_DIR} all
|
${MAKE} -C ${SCHEDULER_DIR} all
|
||||||
${MAKE} -C ${GLIVESUPPORT_DIR} all
|
${MAKE} -C ${GLIVESUPPORT_DIR} all
|
||||||
|
touch ${TMP_DIR}/compile.stamp
|
||||||
|
|
||||||
check:
|
check:
|
||||||
-${MAKE} -C ${CORE_DIR} check
|
-${MAKE} -C ${CORE_DIR} check
|
||||||
|
@ -243,3 +258,20 @@ check:
|
||||||
# -${MAKE} -C ${GLIVESUPPORT_DIR} check
|
# -${MAKE} -C ${GLIVESUPPORT_DIR} check
|
||||||
# -${MAKE} -C ${STORAGE_SERVER_DIR} check
|
# -${MAKE} -C ${STORAGE_SERVER_DIR} check
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Installation related targets
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
.PHONY: install
|
||||||
|
|
||||||
|
INSTALL_COPY_EXE = ${BIN_DIR}/copyInstall.sh
|
||||||
|
ifeq (${prefix},)
|
||||||
|
INSTALL_PREFIX = @prefix@
|
||||||
|
else
|
||||||
|
INSTALL_PREFIX = ${prefix}
|
||||||
|
endif
|
||||||
|
APACHE_GROUP = @apache_group@
|
||||||
|
|
||||||
|
install: setup compile
|
||||||
|
${INSTALL_COPY_EXE} --directory ${INSTALL_PREFIX}
|
||||||
|
|
55
livesupport/etc/configure.ac
Normal file
55
livesupport/etc/configure.ac
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
dnl-----------------------------------------------------------------------------
|
||||||
|
dnl Copyright (c) 2004 Media Development Loan Fund
|
||||||
|
dnl
|
||||||
|
dnl This file is part of the LiveSupport project.
|
||||||
|
dnl http://livesupport.campware.org/
|
||||||
|
dnl To report bugs, send an e-mail to bugs@campware.org
|
||||||
|
dnl
|
||||||
|
dnl LiveSupport is free software; you can redistribute it and/or modify
|
||||||
|
dnl it under the terms of the GNU General Public License as published by
|
||||||
|
dnl the Free Software Foundation; either version 2 of the License, or
|
||||||
|
dnl (at your option) any later version.
|
||||||
|
dnl
|
||||||
|
dnl LiveSupport is distributed in the hope that it will be useful,
|
||||||
|
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
dnl GNU General Public License for more details.
|
||||||
|
dnl
|
||||||
|
dnl You should have received a copy of the GNU General Public License
|
||||||
|
dnl along with LiveSupport; if not, write to the Free Software
|
||||||
|
dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
dnl
|
||||||
|
dnl
|
||||||
|
dnl Author : $Author: maroy $
|
||||||
|
dnl Version : $Revision: 1.1 $
|
||||||
|
dnl Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/etc/configure.ac,v $
|
||||||
|
dnl-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
dnl-----------------------------------------------------------------------------
|
||||||
|
dnl NOTE: Run all configure related scripts from the tmp directory of the
|
||||||
|
dnl project.
|
||||||
|
dnl This is due to the fact that configure spreads a lot of trash around,
|
||||||
|
dnl like atom4te cache directories, config.* files, etc. into the directory
|
||||||
|
dnl it is being run from. We clearly don't want these in our base directory.
|
||||||
|
dnl-----------------------------------------------------------------------------
|
||||||
|
AC_INIT(LiveSupport, 0.9, bugs@campware.org)
|
||||||
|
AC_PREREQ(2.59)
|
||||||
|
AC_COPYRIGHT([Copyright (c) 2004 Media Development Loan Fund under the GNU GPL])
|
||||||
|
AC_REVISION($Revision: 1.1 $)
|
||||||
|
|
||||||
|
AC_CONFIG_SRCDIR(../products/scheduler/src/main.cxx)
|
||||||
|
|
||||||
|
AC_PROG_CXX()
|
||||||
|
|
||||||
|
AC_ARG_WITH([apache-group],
|
||||||
|
[ --with-apache-group specify the system group the apache daemon runs as
|
||||||
|
defaults to: [apache]],
|
||||||
|
CONFIG_APACHE_GROUP=${withval}, CONFIG_APACHE_GROUP="apache")
|
||||||
|
|
||||||
|
apache_group=${CONFIG_APACHE_GROUP}
|
||||||
|
AC_MSG_RESULT([using apache daemon group: ${apache_group}])
|
||||||
|
AC_SUBST(apache_group)
|
||||||
|
|
||||||
|
AC_CONFIG_FILES(../Makefile:../etc/Makefile.in)
|
||||||
|
|
||||||
|
AC_OUTPUT()
|
6
livesupport/etc/debian/README.Debian
Normal file
6
livesupport/etc/debian/README.Debian
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
livesupport for Debian
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
First debian package of LiveSupport.
|
||||||
|
|
||||||
|
-- Akos Maroy <maroy@campware.org>, Tue, 19 Apr 2005 07:40:13 -0400
|
6
livesupport/etc/debian/changelog
Normal file
6
livesupport/etc/debian/changelog
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
livesupport (0.9.1-1) unstable; urgency=low
|
||||||
|
|
||||||
|
* Initial Release.
|
||||||
|
|
||||||
|
-- Akos Maroy <maroy@campware.org> Tue, 19 Apr 2005 07:40:13 -0400
|
||||||
|
|
1
livesupport/etc/debian/compat
Normal file
1
livesupport/etc/debian/compat
Normal file
|
@ -0,0 +1 @@
|
||||||
|
4
|
66
livesupport/etc/debian/control
Normal file
66
livesupport/etc/debian/control
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
Source: livesupport
|
||||||
|
Section: unknown
|
||||||
|
Priority: optional
|
||||||
|
Maintainer: Akos Maroy <maroy@campware.org>
|
||||||
|
Build-Depends: debhelper (>= 4.0.0),
|
||||||
|
binutils (>= 2.13),
|
||||||
|
gcc (>= 3.3),
|
||||||
|
g++ (>= 3.3),
|
||||||
|
make (>= 3.80).
|
||||||
|
automake1.7,
|
||||||
|
autoconf (>= 2.59),
|
||||||
|
libtool,
|
||||||
|
pkgconfig (>= 0.15),
|
||||||
|
patch (>= 2.5.9),
|
||||||
|
doxygen,
|
||||||
|
tar,
|
||||||
|
gzip,
|
||||||
|
bzip2,
|
||||||
|
curl,
|
||||||
|
unixodbc-dev (>= 2.2),
|
||||||
|
x-window-system-dev,
|
||||||
|
libfontconfig1-dev,
|
||||||
|
libpng12-dev,
|
||||||
|
libjpeg62-dev,
|
||||||
|
libssl-dev,
|
||||||
|
libxml2-dev
|
||||||
|
Standards-Version: 3.6.1
|
||||||
|
|
||||||
|
Package: livesupport-libs
|
||||||
|
Architecture: any
|
||||||
|
Depends: ${shlibs:Depends},
|
||||||
|
unixodbc (>= 2.2),
|
||||||
|
x-window-system,
|
||||||
|
libfontconfig1,
|
||||||
|
libpng12-0,
|
||||||
|
libjpeg62,
|
||||||
|
libssl0.9.7,
|
||||||
|
libxml2
|
||||||
|
Description: A radio program automation and support tool.
|
||||||
|
This package contains the libraries used by LiveSupport.
|
||||||
|
|
||||||
|
Package: livesupport-station
|
||||||
|
Architecture: any
|
||||||
|
Depends: ${shlibs:Depends},
|
||||||
|
livesupport-libs (${dpkg:Version}),
|
||||||
|
sed,
|
||||||
|
odbc-postgresql,
|
||||||
|
apache | apache2,
|
||||||
|
php4,
|
||||||
|
php4-domxml,
|
||||||
|
php4-pear,
|
||||||
|
php4-pgsql,
|
||||||
|
libapache-mod-php4 | libapache2-mod-php4,
|
||||||
|
postgresql (>= 7.4),
|
||||||
|
postgresql-client (>=7.4)
|
||||||
|
Description: A radio program automation and support tool.
|
||||||
|
This package contains the server components of LiveSupport.
|
||||||
|
This includes a scheluer deamon, and web-based server components.
|
||||||
|
|
||||||
|
Package: livesupport-studio
|
||||||
|
Architecture: any
|
||||||
|
Depends: ${shlibs:Depends},
|
||||||
|
livesupport-libs (${dpkg:Version}),
|
||||||
|
sed
|
||||||
|
Description: A radio program automation and support tool.
|
||||||
|
This package contains the GUI client components of LiveSupport.
|
25
livesupport/etc/debian/copyright
Normal file
25
livesupport/etc/debian/copyright
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
This package was debianized by Akos Maroy <maroy@campware.org> on
|
||||||
|
Tue, 19 Apr 2005 07:40:13 -0400.
|
||||||
|
|
||||||
|
It was downloaded from http://livesupport.campware.org/
|
||||||
|
|
||||||
|
Copyright:
|
||||||
|
|
||||||
|
Upstream Author(s): Media Developmnet Loan Fund, http://www.mdlf.org/
|
||||||
|
|
||||||
|
License:
|
||||||
|
|
||||||
|
LiveSupport is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
LiveSupport is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with LiveSupport; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
|
1
livesupport/etc/debian/dirs
Normal file
1
livesupport/etc/debian/dirs
Normal file
|
@ -0,0 +1 @@
|
||||||
|
opt/livesupport
|
3
livesupport/etc/debian/livesupport-station.conffiles
Normal file
3
livesupport/etc/debian/livesupport-station.conffiles
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
/opt/livesupport/var/storageServer/var/conf.php
|
||||||
|
/opt/livesupport/var/archiveServer/var/conf.php
|
||||||
|
/opt/livesupport/etc/scheduler.xml
|
51
livesupport/etc/debian/livesupport-station.init.d
Normal file
51
livesupport/etc/debian/livesupport-station.init.d
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
#
|
||||||
|
|
||||||
|
LIVESUPPORT_DIR=/opt/livesupport
|
||||||
|
LIVESUPPORT_BIN=$LIVESUPPORT_DIR/bin
|
||||||
|
LIVESUPPORT_ETC=$LIVESUPPORT_DIR/etc
|
||||||
|
LIVESUPPORT_LIB=$LIVESUPPORT_DIR/lib
|
||||||
|
|
||||||
|
PATH=/sbin:/bin:/usr/sbin:/usr/bin:$LIVESUPPORT_BIN
|
||||||
|
LD_LIBRARY_PATH=$LIVESUPPORT_LIB:$LD_LIBRARY_PATH
|
||||||
|
DAEMON=$LIVESUPPORT_BIN/scheduler
|
||||||
|
NAME=livesupport-scheduler
|
||||||
|
DESC="livesupport scheduler"
|
||||||
|
|
||||||
|
test -x $DAEMON || exit 0
|
||||||
|
|
||||||
|
export PATH
|
||||||
|
export LD_LIBRARY_PATH
|
||||||
|
|
||||||
|
DAEMON_OPTS="-c $LIVESUPPORT_ETC/scheduler.xml"
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
start)
|
||||||
|
echo -n "Starting $DESC: "
|
||||||
|
$DAEMON -c $LIVESUPPORT_ETC/scheduler.xml start > /dev/null
|
||||||
|
echo "$NAME."
|
||||||
|
;;
|
||||||
|
stop)
|
||||||
|
echo -n "Stopping $DESC: "
|
||||||
|
$DAEMON -c $LIVESUPPORT_ETC/scheduler.xml stop > /dev/null
|
||||||
|
echo "$NAME."
|
||||||
|
;;
|
||||||
|
restart|force-reload)
|
||||||
|
echo -n "Restarting $DESC: "
|
||||||
|
$DAEMON -c $LIVESUPPORT_ETC/scheduler.xml stop > /dev/null
|
||||||
|
sleep 1
|
||||||
|
$DAEMON -c $LIVESUPPORT_ETC/scheduler.xml start > /dev/null
|
||||||
|
echo "$NAME."
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
N=/etc/init.d/$NAME
|
||||||
|
echo "Usage: $N {start|stop|restart|force-reload|kill}" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
59
livesupport/etc/debian/livesupport-station.postinst
Normal file
59
livesupport/etc/debian/livesupport-station.postinst
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
#! /bin/sh
|
||||||
|
# postinst script for livesupport
|
||||||
|
#
|
||||||
|
# see: dh_installdeb(1)
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# summary of how this script can be called:
|
||||||
|
# * <postinst> `configure' <most-recently-configured-version>
|
||||||
|
# * <old-postinst> `abort-upgrade' <new version>
|
||||||
|
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||||
|
# <new-version>
|
||||||
|
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||||
|
# <failed-install-package> <version> `removing'
|
||||||
|
# <conflicting-package> <version>
|
||||||
|
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||||
|
# the debian-policy package
|
||||||
|
#
|
||||||
|
|
||||||
|
installdir=/opt/livesupport
|
||||||
|
apache_group=www-data
|
||||||
|
apache_docroot=/var/www
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
configure)
|
||||||
|
# replace the odbcinst.ini template with the debian-specific version
|
||||||
|
cp -f $installdir/etc/odbcinst_debian_template \
|
||||||
|
$installdir/etc/odbcinst_template
|
||||||
|
# do post-installation configuration
|
||||||
|
$installdir/bin/postInstallScheduler.sh --directory $installdir \
|
||||||
|
--apache-group $apache_group \
|
||||||
|
--www-root $apache_docroot
|
||||||
|
# register and start the livesupport scheduler deamon
|
||||||
|
update-rc.d livesupport-station defaults 40
|
||||||
|
if command -v invoke-rc.d >/dev/null 2>&1 ; then
|
||||||
|
invoke-rc.d livesupport-station start
|
||||||
|
else
|
||||||
|
/etc/init.d/livesupport-station start
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
|
||||||
|
abort-upgrade|abort-remove|abort-deconfigure)
|
||||||
|
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "postinst called with unknown argument \`$1'" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# dh_installdeb will replace this with shell code automatically
|
||||||
|
# generated by other debhelper scripts.
|
||||||
|
|
||||||
|
#DEBHELPER#
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
129
livesupport/etc/debian/livesupport-station.postrm
Normal file
129
livesupport/etc/debian/livesupport-station.postrm
Normal file
|
@ -0,0 +1,129 @@
|
||||||
|
#! /bin/sh
|
||||||
|
# postrm script for livesupport
|
||||||
|
#
|
||||||
|
# see: dh_installdeb(1)
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# summary of how this script can be called:
|
||||||
|
# * <postrm> `remove'
|
||||||
|
# * <postrm> `purge'
|
||||||
|
# * <old-postrm> `upgrade' <new-version>
|
||||||
|
# * <new-postrm> `failed-upgrade' <old-version>
|
||||||
|
# * <new-postrm> `abort-install'
|
||||||
|
# * <new-postrm> `abort-install' <old-version>
|
||||||
|
# * <new-postrm> `abort-upgrade' <old-version>
|
||||||
|
# * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version>
|
||||||
|
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||||
|
# the debian-policy package
|
||||||
|
|
||||||
|
installdir=/opt/livesupport
|
||||||
|
apache_docroot=/var/www
|
||||||
|
|
||||||
|
postgres_user=postgres
|
||||||
|
|
||||||
|
ls_dbserver=localhost
|
||||||
|
ls_database=LiveSupport
|
||||||
|
ls_dbuser=livesupport
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Function to check for the existence of an executable on the PATH
|
||||||
|
#
|
||||||
|
# @param $1 the name of the exectuable
|
||||||
|
# @return 0 if the executable exists on the PATH, non-0 otherwise
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
check_exe() {
|
||||||
|
if [ -x "`which $1 2> /dev/null`" ]; then
|
||||||
|
echo "Exectuable $1 found...";
|
||||||
|
return 0;
|
||||||
|
else
|
||||||
|
echo "Exectuable $1 not found...";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
remove|upgrade|failed-upgrade|abort-install|abort-upgrade)
|
||||||
|
# remove the init script by hand
|
||||||
|
# this is an ugly hack, dpkg should remove it!
|
||||||
|
rm -f /etc/init.d/livesupport-station
|
||||||
|
|
||||||
|
# remove the livesupport scheduler daemon as a service
|
||||||
|
update-rc.d livesupport-station remove
|
||||||
|
|
||||||
|
# remove the symlink to the livesupport web pages
|
||||||
|
rm -f $apache_docroot/livesupport
|
||||||
|
|
||||||
|
;;
|
||||||
|
|
||||||
|
purge|disappear)
|
||||||
|
echo "Checking for required tools..."
|
||||||
|
|
||||||
|
check_exe "psql" || exit 1;
|
||||||
|
check_exe "odbcinst" || exit 1;
|
||||||
|
|
||||||
|
|
||||||
|
echo "Deleting data files...";
|
||||||
|
|
||||||
|
rm -rf $installdir/etc/scheduler.xml
|
||||||
|
rm -rf $installdir/var/htmlUI/var/html/img/*
|
||||||
|
rm -rf $installdir/var/htmlUI/var/templates_c/*
|
||||||
|
rm -rf $installdir/var/storageServer/var/stor/*
|
||||||
|
rm -rf $installdir/var/storageServer/var/access/*
|
||||||
|
rm -rf $installdir/var/storageServer/var/trans/*
|
||||||
|
rm -rf $installdir/var/archiveServer/var/stor/*
|
||||||
|
rm -rf $installdir/var/archiveServer/var/access/*
|
||||||
|
rm -rf $installdir/var/archiveServer/var/trans/*
|
||||||
|
|
||||||
|
|
||||||
|
echo "Removing ODBC data source and driver...";
|
||||||
|
|
||||||
|
echo "Removing LiveSupport ODBC data source...";
|
||||||
|
odbcinst -u -s -l -n $ls_database || exit 1;
|
||||||
|
|
||||||
|
echo "De-registering ODBC PostgreSQL driver...";
|
||||||
|
odbcinst -u -d -v -n PostgreSQL || exit 1;
|
||||||
|
|
||||||
|
|
||||||
|
echo "Removing database and database user...";
|
||||||
|
|
||||||
|
if [ "x$ls_dbserver" == "xlocalhost" ]; then
|
||||||
|
su - $postgres_user -c \
|
||||||
|
"echo \"DROP DATABASE \\\"$ls_database\\\" \"\
|
||||||
|
| psql template1" \
|
||||||
|
|| echo "Couldn't drop database $ls_database.";
|
||||||
|
|
||||||
|
su - $postgres_user -c "echo \"DROP USER $ls_dbuser \"\
|
||||||
|
| psql template1" \
|
||||||
|
|| echo "Couldn't drop database user $ls_dbuser.";
|
||||||
|
|
||||||
|
else
|
||||||
|
echo "Unable to automatically drop database user and table for";
|
||||||
|
echo "remote database $ls_dbserver.";
|
||||||
|
echo "Make sure to drop database user $ls_dbuser on database";
|
||||||
|
echo "server at $ls_dbserver.";
|
||||||
|
echo "Also drop the database called $ld_database.";
|
||||||
|
echo "";
|
||||||
|
echo "The easiest way to achieve this is by issuing the";
|
||||||
|
echo "following SQL commands to PostgreSQL:";
|
||||||
|
echo "DROP DATABASE \"$ls_database\";";
|
||||||
|
echo "DROP USER $ls_dbuser;";
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "postrm called with unknown argument \`$1'" >&2
|
||||||
|
exit 1
|
||||||
|
|
||||||
|
esac
|
||||||
|
|
||||||
|
# dh_installdeb will replace this with shell code automatically
|
||||||
|
# generated by other debhelper scripts.
|
||||||
|
|
||||||
|
#DEBHELPER#
|
||||||
|
|
||||||
|
exit 0
|
133
livesupport/etc/debian/livesupport-station.preinst
Normal file
133
livesupport/etc/debian/livesupport-station.preinst
Normal file
|
@ -0,0 +1,133 @@
|
||||||
|
#! /bin/sh
|
||||||
|
# preinst script for livesupport
|
||||||
|
#
|
||||||
|
# see: dh_installdeb(1)
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# summary of how this script can be called:
|
||||||
|
# * <new-preinst> `install'
|
||||||
|
# * <new-preinst> `install' <old-version>
|
||||||
|
# * <new-preinst> `upgrade' <old-version>
|
||||||
|
# * <old-preinst> `abort-upgrade' <new-version>
|
||||||
|
#
|
||||||
|
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||||
|
# the debian-policy package
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Function to check for a group to be available, and the ability
|
||||||
|
# to set files to belong into that group
|
||||||
|
#
|
||||||
|
# @param $1 the group to check
|
||||||
|
# @return 0 if the groups id OK, non-0 otherwise
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
check_group_permission() {
|
||||||
|
group_tmp_file=/tmp/ls_group_check.$$
|
||||||
|
touch $group_tmp_file
|
||||||
|
test_result=`chgrp $1 $group_tmp_file 2> /dev/null`
|
||||||
|
if [ $? != 0 ]; then
|
||||||
|
rm -f $group_tmp_file;
|
||||||
|
echo "Unable to use apache deamon group $1.";
|
||||||
|
echo "Please check if $1 is a correct user group.";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
rm -f $group_tmp_file;
|
||||||
|
echo "Apache daemon group $1 OK.";
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Function to check for the existence of an executable on the PATH
|
||||||
|
#
|
||||||
|
# @param $1 the name of the exectuable
|
||||||
|
# @return 0 if the executable exists on the PATH, non-0 otherwise
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
check_exe() {
|
||||||
|
if [ -x "`which $1 2> /dev/null`" ]; then
|
||||||
|
echo "Exectuable $1 found...";
|
||||||
|
return 0;
|
||||||
|
else
|
||||||
|
echo "Exectuable $1 not found...";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Function to check for a PEAR module
|
||||||
|
#
|
||||||
|
# @param $1 the name of the PEAR module
|
||||||
|
# @return 0 if the module is available, non-0 otherwise
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
check_pear_module() {
|
||||||
|
test_result=`pear info $1`
|
||||||
|
if [ $? = 0 ]; then
|
||||||
|
echo "PEAR module $1 found...";
|
||||||
|
return 0;
|
||||||
|
else
|
||||||
|
echo "PEAR module $1 not found...";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Variables
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
apache_group=www-data
|
||||||
|
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
install|upgrade)
|
||||||
|
echo "Checking for required tools..."
|
||||||
|
|
||||||
|
check_exe "sed" || exit 1;
|
||||||
|
check_exe "psql" || exit 1;
|
||||||
|
check_exe "php" || exit 1;
|
||||||
|
check_exe "pear" || exit 1;
|
||||||
|
check_exe "odbcinst" || exit 1;
|
||||||
|
|
||||||
|
check_pear_module "DB" || exit 1;
|
||||||
|
check_pear_module "Calendar" || exit 1;
|
||||||
|
check_pear_module "File" || exit 1;
|
||||||
|
check_pear_module "File_Find" || exit 1;
|
||||||
|
check_pear_module "HTML_Common" || exit 1;
|
||||||
|
check_pear_module "HTML_QuickForm" || exit 1;
|
||||||
|
check_pear_module "XML_Beautifier" || exit 1;
|
||||||
|
check_pear_module "XML_Parser" || exit 1;
|
||||||
|
check_pear_module "XML_RPC" || exit 1;
|
||||||
|
check_pear_module "XML_Serializer" || exit 1;
|
||||||
|
check_pear_module "XML_Util" || exit 1;
|
||||||
|
|
||||||
|
echo "Checking for validity of apache daemon group $apache_group...";
|
||||||
|
check_group_permission $apache_group || exit 1;
|
||||||
|
|
||||||
|
if [ "$1" = "upgrade" ]; then
|
||||||
|
if command -v invoke-rc.d >/dev/null 2>&1 ; then
|
||||||
|
invoke-rc.d livesupport-station stop
|
||||||
|
invoke-rc.d livesupport-station kill
|
||||||
|
else
|
||||||
|
/etc/init.d/livesupport-station stop
|
||||||
|
/etc/init.d/livesupport-station kill
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
|
||||||
|
abort-upgrade)
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "preinst called with unknown argument \`$1'" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# dh_installdeb will replace this with shell code automatically
|
||||||
|
# generated by other debhelper scripts.
|
||||||
|
|
||||||
|
#DEBHELPER#
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
46
livesupport/etc/debian/livesupport-station.prerm
Normal file
46
livesupport/etc/debian/livesupport-station.prerm
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
#! /bin/sh
|
||||||
|
# prerm script for livesupport
|
||||||
|
#
|
||||||
|
# see: dh_installdeb(1)
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# summary of how this script can be called:
|
||||||
|
# * <prerm> `remove'
|
||||||
|
# * <old-prerm> `upgrade' <new-version>
|
||||||
|
# * <new-prerm> `failed-upgrade' <old-version>
|
||||||
|
# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
|
||||||
|
# * <deconfigured's-prerm> `deconfigure' `in-favour'
|
||||||
|
# <package-being-installed> <version> `removing'
|
||||||
|
# <conflicting-package> <version>
|
||||||
|
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||||
|
# the debian-policy package
|
||||||
|
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
remove|upgrade|deconfigure)
|
||||||
|
# stop and remove the livesupport scheduler daemon
|
||||||
|
if command -v invoke-rc.d >/dev/null 2>&1 ; then
|
||||||
|
invoke-rc.d livesupport-station stop
|
||||||
|
invoke-rc.d livesupport-station kill
|
||||||
|
else
|
||||||
|
/etc/init.d/livesupport-station stop
|
||||||
|
/etc/init.d/livesupport-station kill
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
failed-upgrade)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "prerm called with unknown argument \`$1'" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# dh_installdeb will replace this with shell code automatically
|
||||||
|
# generated by other debhelper scripts.
|
||||||
|
|
||||||
|
#DEBHELPER#
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
1
livesupport/etc/debian/livesupport-studio.conffiles
Normal file
1
livesupport/etc/debian/livesupport-studio.conffiles
Normal file
|
@ -0,0 +1 @@
|
||||||
|
/opt/livesupport/etc/gLiveSupport.xml
|
47
livesupport/etc/debian/livesupport-studio.postinst
Normal file
47
livesupport/etc/debian/livesupport-studio.postinst
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
#! /bin/sh
|
||||||
|
# postinst script for livesupport
|
||||||
|
#
|
||||||
|
# see: dh_installdeb(1)
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# summary of how this script can be called:
|
||||||
|
# * <postinst> `configure' <most-recently-configured-version>
|
||||||
|
# * <old-postinst> `abort-upgrade' <new version>
|
||||||
|
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||||
|
# <new-version>
|
||||||
|
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||||
|
# <failed-install-package> <version> `removing'
|
||||||
|
# <conflicting-package> <version>
|
||||||
|
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||||
|
# the debian-policy package
|
||||||
|
#
|
||||||
|
|
||||||
|
installdir=/opt/livesupport
|
||||||
|
apache_group=www-data
|
||||||
|
apache_docroot=/var/www
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
configure)
|
||||||
|
# do post-installation configuration
|
||||||
|
$installdir/bin/postInstallGLiveSupport.sh --directory $installdir
|
||||||
|
;;
|
||||||
|
|
||||||
|
abort-upgrade|abort-remove|abort-deconfigure)
|
||||||
|
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "postinst called with unknown argument \`$1'" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# dh_installdeb will replace this with shell code automatically
|
||||||
|
# generated by other debhelper scripts.
|
||||||
|
|
||||||
|
#DEBHELPER#
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
145
livesupport/etc/debian/rules
Executable file
145
livesupport/etc/debian/rules
Executable file
|
@ -0,0 +1,145 @@
|
||||||
|
#!/usr/bin/make -f
|
||||||
|
# -*- makefile -*-
|
||||||
|
# Sample debian/rules that uses debhelper.
|
||||||
|
#
|
||||||
|
# This file was originally written by Joey Hess and Craig Small.
|
||||||
|
# As a special exception, when this file is copied by dh-make into a
|
||||||
|
# dh-make output file, you may use that output file without restriction.
|
||||||
|
# This special exception was added by Craig Small in version 0.37 of dh-make.
|
||||||
|
|
||||||
|
# Uncomment this to turn on verbose mode.
|
||||||
|
#export DH_VERBOSE=1
|
||||||
|
|
||||||
|
# This has to be exported to make some magic below work.
|
||||||
|
export DH_OPTIONS
|
||||||
|
|
||||||
|
# These are used for cross-compiling and for saving the configure script
|
||||||
|
# from having to guess our platform (since we know it already)
|
||||||
|
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
|
||||||
|
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
|
||||||
|
|
||||||
|
|
||||||
|
CFLAGS = -Wall -g
|
||||||
|
|
||||||
|
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
|
||||||
|
CFLAGS += -O0
|
||||||
|
else
|
||||||
|
CFLAGS += -O2
|
||||||
|
endif
|
||||||
|
|
||||||
|
config.status: configure
|
||||||
|
dh_testdir
|
||||||
|
# Add here commands to configure the package.
|
||||||
|
CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/opt/livesupport --with-apache-group=www-data
|
||||||
|
|
||||||
|
|
||||||
|
build: build-arch
|
||||||
|
|
||||||
|
build-arch: build-arch-stamp
|
||||||
|
build-arch-stamp: config.status
|
||||||
|
|
||||||
|
# Add here commands to compile the arch part of the package.
|
||||||
|
$(MAKE) setup compile
|
||||||
|
touch build-arch-stamp
|
||||||
|
|
||||||
|
clean:
|
||||||
|
dh_testdir
|
||||||
|
dh_testroot
|
||||||
|
rm -f build-arch-stamp #CONFIGURE-STAMP#
|
||||||
|
|
||||||
|
# Add here commands to clean up after the build process.
|
||||||
|
-$(MAKE) distclean clean
|
||||||
|
|
||||||
|
dh_clean
|
||||||
|
|
||||||
|
install: install-arch
|
||||||
|
|
||||||
|
install-arch:
|
||||||
|
dh_testdir
|
||||||
|
dh_testroot
|
||||||
|
dh_clean -k -s
|
||||||
|
dh_installdirs -s
|
||||||
|
|
||||||
|
# this will install everything into debian/livesupport
|
||||||
|
$(MAKE) install prefix=$(CURDIR)/debian/livesupport/opt/livesupport
|
||||||
|
|
||||||
|
# copy the template config files into their final places
|
||||||
|
# so as to please the conffiles file, and the debian packager
|
||||||
|
# that such a file really exist
|
||||||
|
cp -f $(CURDIR)/debian/livesupport/opt/livesupport/etc/scheduler.xml.template \
|
||||||
|
$(CURDIR)/debian/livesupport/opt/livesupport/etc/scheduler.xml
|
||||||
|
cp -f $(CURDIR)/debian/livesupport/opt/livesupport/etc/gLiveSupport.xml.template \
|
||||||
|
$(CURDIR)/debian/livesupport/opt/livesupport/etc/gLiveSupport.xml
|
||||||
|
|
||||||
|
# now separate the libraries into debian/livesupport-libs
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-libs
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-libs/opt/livesupport
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-libs/opt/livesupport/tmp
|
||||||
|
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/lib \
|
||||||
|
$(CURDIR)/debian/livesupport-libs/opt/livesupport
|
||||||
|
|
||||||
|
# now separate the station (server) files into debian/livesupport-station
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-station
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-station/opt/livesupport
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-station/opt/livesupport/bin
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-station/opt/livesupport/etc
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-station/opt/livesupport/tmp
|
||||||
|
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/bin/scheduler \
|
||||||
|
$(CURDIR)/debian/livesupport/opt/livesupport/bin/scheduler.sh \
|
||||||
|
$(CURDIR)/debian/livesupport/opt/livesupport/bin/postInstallScheduler.sh \
|
||||||
|
$(CURDIR)/debian/livesupport-station/opt/livesupport/bin
|
||||||
|
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/etc/scheduler.xml* \
|
||||||
|
$(CURDIR)/debian/livesupport/opt/livesupport/etc/odbc* \
|
||||||
|
$(CURDIR)/debian/livesupport-station/opt/livesupport/etc
|
||||||
|
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/var \
|
||||||
|
$(CURDIR)/debian/livesupport-station/opt/livesupport
|
||||||
|
|
||||||
|
# now separate the studio (client) files into debian/livesupport-studio
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-studio
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-studio/opt/livesupport
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-studio/opt/livesupport/bin
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-studio/opt/livesupport/etc
|
||||||
|
mkdir -p $(CURDIR)/debian/livesupport-studio/opt/livesupport/tmp
|
||||||
|
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/bin/gLiveSupport \
|
||||||
|
$(CURDIR)/debian/livesupport/opt/livesupport/bin/gLiveSupport.sh \
|
||||||
|
$(CURDIR)/debian/livesupport/opt/livesupport/bin/postInstallGLiveSupport.sh \
|
||||||
|
$(CURDIR)/debian/livesupport-studio/opt/livesupport/bin
|
||||||
|
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/etc/gLiveSupport.xml* \
|
||||||
|
$(CURDIR)/debian/livesupport-studio/opt/livesupport/etc
|
||||||
|
|
||||||
|
|
||||||
|
dh_install -s
|
||||||
|
|
||||||
|
binary-common:
|
||||||
|
dh_testdir
|
||||||
|
dh_testroot
|
||||||
|
# dh_installchangelogs
|
||||||
|
# dh_installdocs
|
||||||
|
# dh_installexamples
|
||||||
|
# dh_installmenu
|
||||||
|
# dh_installdebconf
|
||||||
|
# dh_installlogrotate
|
||||||
|
# dh_installemacsen
|
||||||
|
# dh_installpam
|
||||||
|
# dh_installmime
|
||||||
|
dh_installinit
|
||||||
|
# dh_installcron
|
||||||
|
# dh_installinfo
|
||||||
|
# dh_installman
|
||||||
|
dh_link
|
||||||
|
dh_strip
|
||||||
|
dh_compress
|
||||||
|
dh_fixperms
|
||||||
|
dh_makeshlibs
|
||||||
|
dh_installdeb
|
||||||
|
dh_shlibdeps
|
||||||
|
dh_gencontrol
|
||||||
|
dh_md5sums
|
||||||
|
dh_builddeb
|
||||||
|
|
||||||
|
# Build architecture dependant packages using the common target.
|
||||||
|
binary-arch: build-arch install-arch
|
||||||
|
$(MAKE) -f debian/rules DH_OPTIONS=-a binary-common
|
||||||
|
|
||||||
|
binary: binary-arch
|
||||||
|
.PHONY: build clean binary-arch binary install install-arch
|
30
livesupport/etc/livesupport.dsc.template
Normal file
30
livesupport/etc/livesupport.dsc.template
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
Format: 1.0
|
||||||
|
Source: livesupport
|
||||||
|
Version: ls_version-ls_debianVersion
|
||||||
|
Binary: livesupport-libs, libesupport-station, livesupport-studio
|
||||||
|
Maintainer: ls_maintainer
|
||||||
|
Architecture: any
|
||||||
|
Standards-Version: 3.6.1
|
||||||
|
Build-Depends: debhelper (>= 4.0.0),
|
||||||
|
binutils (>= 2.13),
|
||||||
|
gcc (>= 3.3),
|
||||||
|
g++ (>= 3.3),
|
||||||
|
make (>= 3.80).
|
||||||
|
automake1.7,
|
||||||
|
autoconf (>= 2.59),
|
||||||
|
libtool,
|
||||||
|
pkgconfig (>= 0.15),
|
||||||
|
patch (>= 2.5.9),
|
||||||
|
doxygen,
|
||||||
|
tar,
|
||||||
|
gzip,
|
||||||
|
bzip2,
|
||||||
|
curl,
|
||||||
|
unixodbc-dev (>= 2.2),
|
||||||
|
x-window-system-dev,
|
||||||
|
libfontconfig1-dev,
|
||||||
|
libpng12-dev,
|
||||||
|
libjpeg62-dev,
|
||||||
|
libssl-dev,
|
||||||
|
libxml2-dev
|
||||||
|
Files:
|
55
livesupport/products/gLiveSupport/bin/gLiveSupport.sh
Executable file
55
livesupport/products/gLiveSupport/bin/gLiveSupport.sh
Executable file
|
@ -0,0 +1,55 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Copyright (c) 2004 Media Development Loan Fund
|
||||||
|
#
|
||||||
|
# This file is part of the LiveSupport project.
|
||||||
|
# http://livesupport.campware.org/
|
||||||
|
# To report bugs, send an e-mail to bugs@campware.org
|
||||||
|
#
|
||||||
|
# LiveSupport is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# LiveSupport is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with LiveSupport; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Author : $Author: maroy $
|
||||||
|
# Version : $Revision: 1.1 $
|
||||||
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/products/gLiveSupport/bin/gLiveSupport.sh,v $
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# System V runlevel style invoke script for the LiveSupport Scheduler
|
||||||
|
# This script is only used in the LiveSupport development environment
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Determine directories, files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
reldir=`dirname $0`/..
|
||||||
|
basedir=`cd $reldir; pwd;`
|
||||||
|
bindir=$basedir/bin
|
||||||
|
etcdir=$basedir/etc
|
||||||
|
libdir=$basedir/lib
|
||||||
|
tmpdir=$basedir/tmp
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Set up the environment
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
export LD_LIBRARY_PATH=$libdir:$LD_LIBRARY_PATH
|
||||||
|
gLiveSupport_exe=$bindir/gLiveSupport
|
||||||
|
config_file=$etcdir/gLiveSupport.xml
|
||||||
|
|
||||||
|
echo "using configuration file: $config_file";
|
||||||
|
|
||||||
|
$gLiveSupport_exe -c $config_file
|
|
@ -0,0 +1,5 @@
|
||||||
|
[PostgreSQL]
|
||||||
|
Description = PostgreSQL driver
|
||||||
|
Driver = /usr/lib/odbc/psqlodbc.so
|
||||||
|
Setup = /usr/lib/odbc/libodbcpsqlS.so
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue