diff --git a/backend/Restore.php b/backend/Restore.php
index e092d929a..e1071ba9e 100644
--- a/backend/Restore.php
+++ b/backend/Restore.php
@@ -1,5 +1,4 @@
gb =& $gb;
$this->token = null;
- $this->logFile = $CC_CONFIG['bufferDir'].'/'.ACCESS_TYPE.'.log';
+ $this->logFile = $CC_CONFIG['bufferDir'].'/'.$this->ACCESS_TYPE.'.log';
if ($this->loglevel == 'debug') {
$this->addLogItem("-I- ".date("Ymd-H:i:s")." construct\n");
}
diff --git a/backend/StoredFile.php b/backend/StoredFile.php
index 975c9161c..28de8b0dd 100644
--- a/backend/StoredFile.php
+++ b/backend/StoredFile.php
@@ -504,7 +504,8 @@ class StoredFile {
$storedFile->name = isset($p_values['filename']) ? $p_values['filename'] : $p_values["filepath"];
// NOTE: POSTGRES-SPECIFIC KEYWORD "DEFAULT" BEING USED, WOULD BE "NULL" IN MYSQL
- $storedFile->id = isset($p_values['id']) && is_integer($p_values['id'])?"'".$p_values['id']."'":'DEFAULT';
+ $storedFile->id = isset($p_values['id']) && is_integer($p_values['id'])?(int)$p_values['id']:null;
+ $sqlId = !is_null($storedFile->id)?"'".$storedFile->id."'":'DEFAULT';
$storedFile->ftype = isset($p_values['filetype']) ? strtolower($p_values['filetype']) : "audioclip";
$storedFile->mime = (isset($p_values["mime"]) ? $p_values["mime"] : NULL );
// $storedFile->filepath = $p_values['filepath'];
@@ -529,7 +530,7 @@ class StoredFile {
$CC_DBC->query("BEGIN");
$sql = "INSERT INTO ".$CC_CONFIG['filesTable']
."(id, name, gunid, mime, state, ftype, mtime, md5)"
- ."VALUES ({$storedFile->id}, '{$escapedName}', "
+ ."VALUES ({$sqlId}, '{$escapedName}', "
." x'{$storedFile->gunid}'::bigint,"
." '{$storedFile->mime}', 'incomplete', '$escapedFtype',"
." now(), '{$storedFile->md5}')";
diff --git a/campcaster_version.php b/campcaster_version.php
deleted file mode 100644
index a56619f28..000000000
--- a/campcaster_version.php
+++ /dev/null
@@ -1,4 +0,0 @@
-
diff --git a/conf.php b/conf.php
index 4f161fa92..75ac1679c 100644
--- a/conf.php
+++ b/conf.php
@@ -1,83 +1,93 @@
- *
dsn datasource setting
- * tblNamePrefix prefix for table names in the database
- * authCookieName secret token cookie name
- * AdminsGr name of admin group
- * StationPrefsGr name of station preferences group
- * AllGr name of 'all users' group
- * storageDir main directory for storing binary media files
- * bufferDir directory for temporary files
- * transDir directory for incomplete transferred files
- * accessDir directory for symlinks to accessed files
- * validate enable/disable validator
- * useTrash enable/disable safe delete (move to trash)
- * storageUrlPathpath-URL-part of storageServer base dir
- * storageXMLRPCXMLRPC server script address relative to storageUrlPath
- * storageUrlHost, storageUrlPorthost and port of storageServer
- * archiveUrlPathpath-URL-part of archiveServer base dir
- * archiveXMLRPCXMLRPC server script address relative to archiveUrlPath
- * archiveUrlHost, archiveUrlPorthost and port of archiveServer
- * archiveAccountLogin, archiveAccountPass account info
- * for login to archive
- * sysSubjssystem users/groups - cannot be deleted
- *
- */
+define('CAMPCASTER_VERSION', '1.6.0-alpha');
+define('CAMPCASTER_COPYRIGHT_DATE', '2010');
-include("campcaster_version.php");
-
-// these are the default values for the config
+// These are the default values for the config.
global $CC_CONFIG;
+// Note that these values can be overridden by the user config file,
+// located in ~/.campcaster/storageServer.conf.php
+// To disable this, set this variable to false.
+define('ALLOW_CONF_OVERRIDE', false);
+
$CC_CONFIG = array(
- /* ================================================== basic configuration */
+ // Database config
'dsn' => array(
- 'username' => 'test',
+ 'username' => 'test2',
'password' => 'test',
'hostspec' => 'localhost',
'phptype' => 'pgsql',
- 'database' => 'campcaster',
+ 'database' => 'campcaster2',
),
+
+ // Name of the web server user
'webServerUser' => 'www-data',
+ // prefix for table names in the database
+ 'tblNamePrefix' => 'cc_',
+
+ // main directory for storing binary media files
+ 'storageDir' => dirname(__FILE__).'/stor',
+
+ // directory for temporary files
+ 'bufferDir' => dirname(__FILE__).'/stor/buffer',
+
+ // directory for incomplete transferred files
+ 'transDir' => dirname(__FILE__).'/trans',
+
+ // directory for symlinks to accessed files
+ 'accessDir' => dirname(__FILE__).'/access',
+ 'cronDir' => dirname(__FILE__).'/backend/cron',
+
+ /* ================================================ storage configuration */
"rootDir" => dirname(__FILE__),
"smartyTemplate" => dirname(__FILE__)."/htmlUI/templates",
"smartyTemplateCompiled" => dirname(__FILE__)."/htmlUI/templates_c",
+ 'pearPath' => dirname(__FILE__).'/3rd_party/php/pear',
- 'tblNamePrefix' => 'cc_',
- /* ================================================ storage configuration */
+ // secret token cookie name
'authCookieName'=> 'campcaster_session_id',
+
+ // name of admin group
//'AdminsGr' => 'Admins',
+
+ // name of station preferences group
'StationPrefsGr'=> 'StationPrefs',
+
+ // name of 'all users' group
//'AllGr' => 'All',
'TrashName' => 'trash_',
- 'storageDir' => dirname(__FILE__).'/stor',
- 'bufferDir' => dirname(__FILE__).'/stor/buffer',
- 'transDir' => dirname(__FILE__).'/trans',
- 'accessDir' => dirname(__FILE__).'/access',
- 'pearPath' => dirname(__FILE__).'/3rd_party/php/pear',
-// 'zendPath' => dirname(__FILE__).'/../../../../usr/lib',
- 'cronDir' => dirname(__FILE__).'/backend/cron',
+
+ // enable/disable validator
'validate' => TRUE,
+
+ // enable/disable safe delete (move to trash)
'useTrash' => TRUE,
/* ==================================================== URL configuration */
- 'storageUrlPath' => '/campcaster/backend',
- 'storageXMLRPC' => 'xmlrpc/xrLocStor.php',
- 'storageUrlHost' => 'localhost',
+ // path-URL-part of storageServer base dir
+ 'storageUrlPath' => '/campcaster/backend',
+
+ // XMLRPC server script address relative to storageUrlPath
+ 'storageXMLRPC' => 'xmlrpc/xrLocStor.php',
+
+ // host and port of storageServer
+ 'storageUrlHost' => 'localhost',
'storageUrlPort' => 80,
- /* ================================================ archive configuration */
+ /* ================================================ remote link configuration */
+ // path-URL-part of remote server base dir
'archiveUrlPath' => '/campcaster/backend',
+
+ // XMLRPC server script address relative to archiveUrlPath
'archiveXMLRPC' => 'xmlrpc/xrLocStor.php',
+
+ // host and port of archiveServer
'archiveUrlHost' => 'localhost',
// 'archiveUrlHost' => '192.168.30.166',
'archiveUrlPort' => 80,
+
+ // account info for login to archive
'archiveAccountLogin' => 'root',
'archiveAccountPass' => 'q',
@@ -143,59 +153,64 @@ $CC_CONFIG['permSequence'] = $CC_CONFIG['permTable'].'_id';
$CC_CONFIG['subjSequence'] = $CC_CONFIG['subjTable'].'_id';
$CC_CONFIG['smembSequence'] = $CC_CONFIG['smembTable'].'_id';
+// system users/groups - cannot be deleted
$CC_CONFIG['sysSubjs'] = array(
'root', /*$CC_CONFIG['AdminsGr'],*/ /*$CC_CONFIG['AllGr'],*/ $CC_CONFIG['StationPrefsGr']
);
+
+// Add PEAR to the PHP path
$old_include_path = get_include_path();
set_include_path('.'.PATH_SEPARATOR.$CC_CONFIG['pearPath'].PATH_SEPARATOR.$old_include_path);
-// See if a ~/.campcaster/storageServer.conf.php exists, and
-// overwrite the settings from there if any
-$this_file = null;
-if (isset($_SERVER["SCRIPT_FILENAME"])) {
- $this_file = $_SERVER["SCRIPT_FILENAME"];
-} elseif(isset($argv[0])) {
- $this_file = $argv[0];
-}
-if (!is_null($this_file)) {
- $fileowner_id = fileowner($this_file);
- $fileowner_array = posix_getpwuid($fileowner_id);
- $fileowner_homedir = $fileowner_array['dir'];
- $fileowner_name = $fileowner_array['name'];
- $home_conf = $fileowner_homedir . '/.campcaster/storageServer.conf.php';
- if (file_exists($home_conf)) {
- $default_config = $CC_CONFIG;
- $developer_name = $fileowner_name;
- include($home_conf);
- $user_config = $CC_CONFIG;
- $CC_CONFIG = $user_config + $default_config;
- }
+if (ALLOW_CONF_OVERRIDE) {
+ // See if a ~/.campcaster/storageServer.conf.php exists, and
+ // overwrite the settings from there if any
+ $this_file = null;
+ if (isset($_SERVER["SCRIPT_FILENAME"])) {
+ $this_file = $_SERVER["SCRIPT_FILENAME"];
+ } elseif(isset($argv[0])) {
+ $this_file = $argv[0];
+ }
+ if (!is_null($this_file)) {
+ $fileowner_id = fileowner($this_file);
+ $fileowner_array = posix_getpwuid($fileowner_id);
+ $fileowner_homedir = $fileowner_array['dir'];
+ $fileowner_name = $fileowner_array['name'];
+ $home_conf = $fileowner_homedir . '/.campcaster/storageServer.conf.php';
+ if (file_exists($home_conf)) {
+ $default_config = $CC_CONFIG;
+ $developer_name = $fileowner_name;
+ include($home_conf);
+ $user_config = $CC_CONFIG;
+ $CC_CONFIG = $user_config + $default_config;
+ }
+ }
}
// Check that all the required directories exist.
-foreach (array('storageDir', 'bufferDir', 'transDir', 'accessDir', 'cronDir') as $d) {
- $test = file_exists($CC_CONFIG[$d]);
- if ( $test === FALSE ) {
- echo " * Error: directory {$CC_CONFIG[$d]} is missing.\n";
- echo " * Please run the install script again.\n";
- exit(1);
- } else {
- $rp = realpath($CC_CONFIG[$d]);
- }
- $CC_CONFIG[$d] = $rp;
-}
+//foreach (array('storageDir', 'bufferDir', 'transDir', 'accessDir', 'cronDir') as $d) {
+// $test = file_exists($CC_CONFIG[$d]);
+// if ( $test === FALSE ) {
+// echo " * Error: directory {$CC_CONFIG[$d]} is missing.\n";
+// echo " * Please run the install script again.\n";
+// exit(1);
+// } else {
+// $rp = realpath($CC_CONFIG[$d]);
+// }
+// $CC_CONFIG[$d] = $rp;
+//}
// Check that htmlUI/templates_c has the right permissions
-$ss=@stat($CC_CONFIG["smartyTemplateCompiled"]);
-$groupOwner = (function_exists('posix_getgrgid'))?@posix_getgrgid($ss['gid']):'';
-if (!empty($groupOwner) && ($groupOwner["name"] != $CC_CONFIG["webServerUser"])) {
- echo " * Error: Your directory permissions for {$CC_CONFIG['smartyTemplateCompiled']} are not set correctly.
\n";
- echo " * The group perms need to be set to the web server user, in this case '{$CC_CONFIG['webServerUser']}'.
\n";
- exit(1);
-}
-$fileperms=@fileperms($CC_CONFIG["smartyTemplateCompiled"]);
-if (!($fileperms & 0x0400)) {
- echo " * Error: Sticky bit not set for {$CC_CONFIG['smartyTemplateCompiled']}.
\n";
- exit(1);
-}
+//$ss=@stat($CC_CONFIG["smartyTemplateCompiled"]);
+//$groupOwner = (function_exists('posix_getgrgid'))?@posix_getgrgid($ss['gid']):'';
+//if (!empty($groupOwner) && ($groupOwner["name"] != $CC_CONFIG["webServerUser"])) {
+// echo " * Error: Your directory permissions for {$CC_CONFIG['smartyTemplateCompiled']} are not set correctly.
\n";
+// echo " * The group perms need to be set to the web server user, in this case '{$CC_CONFIG['webServerUser']}'.
\n";
+// exit(1);
+//}
+//$fileperms=@fileperms($CC_CONFIG["smartyTemplateCompiled"]);
+//if (!($fileperms & 0x0400)) {
+// echo " * Error: Sticky bit not set for {$CC_CONFIG['smartyTemplateCompiled']}.
\n";
+// exit(1);
+//}
?>
\ No newline at end of file
diff --git a/install/hubSetup.sh b/install/hubSetup.sh
deleted file mode 100755
index 714d3f770..000000000
--- a/install/hubSetup.sh
+++ /dev/null
@@ -1,480 +0,0 @@
-#!/bin/bash
-#-------------------------------------------------------------------------------
-# Copyright (c) 2010 Sourcefabric O.P.S.
-#
-# This file is part of the Campcaster project.
-# http://campcaster.sourcefabric.org/
-# To report bugs, send an e-mail to bugs@campware.org
-#
-# Campcaster 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.
-#
-# Campcaster 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 Campcaster; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-#
-# Author : $Author: fgerlits $
-# Version : $Revision: 2292 $
-# Location : $URL: svn+ssh://tomash@code.campware.org/home/svn/repo/livesupport/trunk/livesupport/bin/postInstallStation.sh $
-#-------------------------------------------------------------------------------
-#-------------------------------------------------------------------------------
-# This script makes installation steps for the Campcaster network hub.
-#
-# Invoke as:
-# ./bin/hubSetup.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
-srcdir=$basedir/src
-tools_dir=$srcdir/tools
-modules_dir=$srcdir/modules
-
-
-#-------------------------------------------------------------------------------
-# Print the usage information for this script.
-#-------------------------------------------------------------------------------
-printUsage()
-{
- echo "Campcaster network hub install script.";
- echo "parameters";
- echo "";
- echo " -d, --directory The installation directory, required.";
- echo " -n, --hostname The remotely accessible hostname [default `hostname -f`].";
- echo " -D, --database The name of the Campcaster database.";
- echo " [default: CampcasterHub]";
- echo " -g, --apache-group The group the apache daemon runs as.";
- echo " [default: www-data]";
- 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: campcaster]";
- echo " -w, --dbpassword The database user password.";
- echo " [default: campcaster]";
- echo " -p, --postgresql-dir The postgresql data directory, containing";
- echo " pg_hba.conf [default: /etc/postgresql]";
- echo " -i, --postgresql-init-script The name of the postgresql init";
- echo " script [default: /etc/init.d/postgresql]";
- echo " -P, --skip-postgresql Don't modify posgresql configuration.";
- echo " -A, --skip-apache Don't modify apache configuration.";
- echo " -h, --help Print this message and exit.";
- echo "";
-}
-
-
-#-------------------------------------------------------------------------------
-# Process command line parameters
-#-------------------------------------------------------------------------------
-CMD=${0##*/}
-
-opts=$(getopt -o Ad:D:g:hi:n:p:Pr:s:u:w: -l apache-group:,database:,dbserver:,dbuser:,dbpassword:,directory:,help,hostname:,postgresql-dir:,postgresql-init-script:,skip-apache,skip-postgresql,www-root: -n $CMD -- "$@") || exit 1
-eval set -- "$opts"
-while true; do
- case "$1" in
- -S|--skip-apache)
- skip_apache="yes";
- shift;;
- -d|--directory)
- installdir=$2;
- shift; shift;;
- -D|--database)
- database=$2;
- shift; shift;;
- -g|--apache-group)
- apache_group=$2;
- shift; shift;;
- -h|--help)
- printUsage;
- exit 0;;
- -i|--postgresql-init-script)
- postgresql_init_script=$2;
- shift; shift;;
- -n|--hostname)
- hostname=$2;
- shift; shift;;
- -p|--postgresql-dir)
- postgresql_dir=$2;
- shift; shift;;
- -P|--skip-postgresql)
- skip_postgresql="yes";
- 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$dbserver" == "x" ]; then
- dbserver=localhost;
-fi
-
-if [ "x$database" == "x" ]; then
- database=CampcasterHub;
-fi
-
-if [ "x$dbuser" == "x" ]; then
- dbuser=campcaster;
-fi
-
-if [ "x$dbpassword" == "x" ]; then
- dbpassword=campcaster;
-fi
-
-if [ "x$apache_group" == "x" ]; then
- apache_group=www-data;
-fi
-
-if [ "x$postgresql_dir" == "x" ]; then
- postgresql_dir=/etc/postgresql;
-fi
-
-if [ "x$postgresql_init_script" == "x" ]; then
- postgresql_init_script=/etc/init.d/postgresql;
-fi
-
-if [ "x$www_root" == "x" ]; then
- www_root=/var/www;
-fi
-
-if [ "x$hostname" == "x" ]; then
- hostname=`hostname -f`
-fi
-
-www_port=80
-
-echo "Installing Campcaster network hub.";
-echo "";
-echo "Using the following installation parameters:";
-echo "";
-echo " installation directory: $installdir";
-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 " postgresql data directory: $postgresql_dir";
-echo " postgresql init script: $postgresql_init_script";
-echo " hostname: $hostname";
-echo " www port: $www_port";
-echo ""
-
-#-------------------------------------------------------------------------------
-# The details of installation
-#-------------------------------------------------------------------------------
-ls_dbserver=$dbserver
-ls_dbuser=$dbuser
-ls_dbpassword=$dbpassword
-ls_database=$database
-
-postgres_user=postgres
-
-install_bin=$installdir/bin
-install_etc=$installdir/etc
-install_lib=$installdir/lib
-install_usr=$installdir/usr
-install_var_ls=$installdir/var/Campcaster
-
-url_prefix=campcaster_hub
-
-#-------------------------------------------------------------------------------
-# 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 "Executable $1 found...";
- return 0;
- else
- echo "Executable $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 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;
-
-
-#-------------------------------------------------------------------------------
-# Install the new pg_hba.conf file
-#-------------------------------------------------------------------------------
-if [ "$skip_postgresql" != "yes" ]; then
- echo "Modifying postgresql access permissions...";
-
- pg_config_dir=$postgresql_dir
- pg_config_file=pg_hba.conf
- pg_config_file_saved=pg_hba.conf.before-campcaster
-
- if [ -f $pg_config_dir/$pg_config_file ] ; then
- mv -vf $pg_config_dir/$pg_config_file $pg_config_dir/$pg_config_file_saved ;
- fi
- cp -v $etcdir/$pg_config_file $pg_config_dir/$pg_config_file
- chown root:$postgres_user $pg_config_dir/$pg_config_file
-
- # don't use restart for the init script, as it might return prematurely
- # and in the later call to psql we wouldn't be able to connect
- ${postgresql_init_script} stop
- ${postgresql_init_script} start
-fi
-
-#-------------------------------------------------------------------------------
-# Configuring Apache
-#-------------------------------------------------------------------------------
-if [ "$skip_apache" != "yes" ]; then
- echo "Configuring apache ..."
- CONFFILE=90_php_campcaster.conf
- AP_DDIR_FOUND=no
- for APACHE_DDIR in \
- /etc/apache/conf.d /etc/apache2/conf.d /etc/apache2/conf/modules.d \
- /etc/httpd/conf.d /etc/apache2/modules.d
- do
- echo -n "$APACHE_DDIR "
- if [ -d $APACHE_DDIR ]; then
- echo "Y"
- AP_DDIR_FOUND=yes
- cp -v $basedir/etc/apache/$CONFFILE $APACHE_DDIR
- break
- else
- echo "N"
- fi
- done
- if [ "$AP_DDIR_FOUND" != "yes" ]; then
- echo "###############################"
- echo " Could not configure Apache"
- echo " include following file into apache config manually:"
- echo " $basedir/etc/apache/$CONFFILE"
- echo "###############################"
- else
- echo "done"
- echo "Restarting apache...";
- AP_SCR_FOUND=no
- for APACHE_SCRIPT in apache apache2 httpd ; do
- echo -n "$APACHE_SCRIPT "
- if [ -x /etc/init.d/$APACHE_SCRIPT ]; then
- echo "Y"
- AP_SCR_FOUND=yes
- /etc/init.d/$APACHE_SCRIPT restart
- else
- echo "N"
- fi
- done
- if [ "$AP_SCR_FOUND" != "yes" ]; then
- echo "###############################"
- echo " Could not reload Apache"
- echo " please reload apache manually"
- echo "###############################"
- fi
- echo "done"
- fi
-fi
-
-#-------------------------------------------------------------------------------
-# Create the necessary database user and database itself
-#-------------------------------------------------------------------------------
-echo "Creating database user '$ls_dbuser' and database '$ls_database' ...";
-
-# 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 $ls_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
-
-
-#-------------------------------------------------------------------------------
-# Configuring modules
-#-------------------------------------------------------------------------------
-echo "Configuring modules ...";
-
-cd $tools_dir/pear && ./configure --prefix=$installdir
-cd $modules_dir/alib && ./configure --prefix=$installdir
-cd $modules_dir/getid3 && ./configure --prefix=$installdir
-#cd $modules_dir/htmlUI && ./configure --prefix=$installdir \
-# --with-apache-group=$apache_group \
-# --with-www-docroot=$www_root \
-# --with-storage-server=$installdir/var/Campcaster/storageServer
-cd $modules_dir/storageAdmin && ./configure --prefix=$installdir \
- --with-storage-server=$installdir/var/Campcaster/storageServer \
- --with-phppart-dir=$installdir/var/Campcaster/storageAdmin
-cd $modules_dir/storageServer && \
- ./configure --prefix=$installdir \
- --with-apache-group=$apache_group \
- --with-hostname=$hostname \
- --with-www-docroot=$www_root \
- --with-www-port=$www_port \
- --with-database-server=$dbserver \
- --with-database=$database \
- --with-database-user=$dbuser \
- --with-database-password=$dbpassword \
- --with-init-database=no \
- --with-url-prefix=$url_prefix
-
-
-#-------------------------------------------------------------------------------
-# Install
-#-------------------------------------------------------------------------------
-echo "Installing modules ...";
-
-mkdir -p $installdir
-#$tools_dir/pear/bin/install.sh -d $installdir || exit 1
-make -C $tools_dir/pear install
-make -C $modules_dir/alib install
-make -C $modules_dir/getid3 install
-make -C $modules_dir/storageServer install
-make -C $modules_dir/storageAdmin install
-
-mkdir -p $install_var_ls/storageServer/var/tests
-for it in ex1.mp3 ex2.wav; do
- cp $modules_dir/storageServer/var/tests/$it \
- $install_var_ls/storageServer/var/tests
-done
-
-#-------------------------------------------------------------------------------
-# Create symlinks
-#-------------------------------------------------------------------------------
-echo "Creating symlinks...";
-
-# create symlink for the PHP pages in apache's document root
-webentry=$www_root/$url_prefix
-rm -f $webentry
-ln -vs $install_var_ls $webentry
-
-
-#-------------------------------------------------------------------------------
-# Setup directory permissions
-#-------------------------------------------------------------------------------
-echo "Setting up directory permissions..."
-
-chgrp $apache_group $install_var_ls/storageServer/var/stor
-chgrp $apache_group $install_var_ls/storageServer/var/access
-chgrp $apache_group $install_var_ls/storageServer/var/trans
-chgrp $apache_group $install_var_ls/storageServer/var/stor/buffer
-
-chmod g+sw $install_var_ls/storageServer/var/stor
-chmod g+sw $install_var_ls/storageServer/var/access
-chmod g+sw $install_var_ls/storageServer/var/trans
-chmod g+sw $install_var_ls/storageServer/var/stor/buffer
-
-#chgrp $apache_group $install_var_ls/htmlUI/var/templates_c
-#chgrp $apache_group $install_var_ls/htmlUI/var/html/img
-
-#chmod g+sw $install_var_ls/htmlUI/var/templates_c
-#chmod g+sw $install_var_ls/htmlUI/var/html/img
-
-
-#-------------------------------------------------------------------------------
-# Initialize the database
-#-------------------------------------------------------------------------------
-echo "Initializing database...";
-
-# create PHP-related database tables
-cd $install_var_ls/storageServer/var/install
-php -q install.php || exit 1;
-cd -
-
-#-------------------------------------------------------------------------------
-# Say goodbye
-#-------------------------------------------------------------------------------
-echo "Done."
-
-
-exit
-
diff --git a/install/install.php b/install/install.php
index 61fb97292..021eddb30 100644
--- a/install/install.php
+++ b/install/install.php
@@ -4,7 +4,6 @@
* @subpackage StorageServer
* @copyright 2010 Sourcefabric O.P.S.
* @license http://www.gnu.org/licenses/gpl.txt
- *
*/
// Do not allow remote execution
@@ -16,30 +15,55 @@ if (isset($arr["DOCUMENT_ROOT"]) && ($arr["DOCUMENT_ROOT"] != "") ) {
exit(1);
}
-echo "*************************\n";
-echo "* StorageServer Install *\n";
-echo "*************************\n";
+echo "**********************\n";
+echo "* Campcaster Install *\n";
+echo "**********************\n";
require_once(dirname(__FILE__).'/../conf.php');
require_once(dirname(__FILE__).'/../backend/GreenBox.php');
require_once(dirname(__FILE__).'/../backend/cron/Cron.php');
require_once(dirname(__FILE__)."/installInit.php");
+
+echo " *** Database Installation ***\n";
+
+//sudo -u postgres createuser --no-superuser --no-createdb --no-createrole -A -P myuser
+
+// Create the database user
+$command = "sudo -u postgres psql postgres --command \"CREATE USER {$CC_CONFIG['dsn']['username']} "
+ ." ENCRYPTED PASSWORD '{$CC_CONFIG['dsn']['password']}' CREATEDB NOCREATEUSER;\" 2>/dev/null";
+@exec($command, $output, $results);
+if ($results == 0) {
+ echo " * User {$CC_CONFIG['dsn']['username']} created.\n";
+} else {
+ echo " * User {$CC_CONFIG['dsn']['username']} already exists.\n";
+}
+
+$command = "sudo -u postgres createdb {$CC_CONFIG['dsn']['database']} 2> /dev/null";
+@exec($command, $output, $results);
+if ($results == 0) {
+ echo " * Database '{$CC_CONFIG['dsn']['database']}' created.\n";
+} else {
+ echo " * Database '{$CC_CONFIG['dsn']['database']}' already exists.\n";
+}
+
+// Connect to DB
campcaster_db_connect(true);
+// Install postgres scripting language
$langIsInstalled = $CC_DBC->GetOne('select count(*) FROM pg_language WHERE lanname = \'plpgsql\'');
if ($langIsInstalled == '0') {
- echo " * Installing Postgres scripting language\n";
+ echo " * Installing Postgres scripting language...\n";
$sql = "CREATE LANGUAGE 'plpgsql'";
camp_install_query($sql);
} else {
- echo " * Postgres scripting language already installed\n";
+ echo " * Postgres scripting language already installed\n";
}
//------------------------------------------------------------------------------
// Install database tables
//------------------------------------------------------------------------------
if (!camp_db_table_exists($CC_CONFIG['subjTable'])) {
- echo " * Creating database table ".$CC_CONFIG['subjTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['subjTable']."...";
$sql = "CREATE TABLE ".$CC_CONFIG['subjTable']." (
id int not null PRIMARY KEY,
login varchar(255) not null default'',
@@ -62,11 +86,11 @@ if (!camp_db_table_exists($CC_CONFIG['subjTable'])) {
$CC_DBC->createSequence($CC_CONFIG['subjSequence']);
echo "done.\n";
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['subjTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['subjTable']."\n";
}
if (!camp_db_table_exists($CC_CONFIG['smembTable'])) {
- echo " * Creating database table ".$CC_CONFIG['smembTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['smembTable']."...";
$sql = "CREATE TABLE ".$CC_CONFIG['smembTable']." (
id int not null PRIMARY KEY,
uid int not null default 0,
@@ -82,11 +106,11 @@ if (!camp_db_table_exists($CC_CONFIG['smembTable'])) {
//$CC_DBC->createSequence($CC_CONFIG['smembSequence']);
echo "done.\n";
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['smembTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['smembTable']."\n";
}
if (!camp_db_table_exists($CC_CONFIG['permTable'])) {
- echo " * Creating database table ".$CC_CONFIG['permTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['permTable']."...";
$sql = "CREATE TABLE ".$CC_CONFIG['permTable']." (
permid int not null PRIMARY KEY,
subj int REFERENCES ".$CC_CONFIG['subjTable']." ON DELETE CASCADE,
@@ -110,11 +134,11 @@ if (!camp_db_table_exists($CC_CONFIG['permTable'])) {
//$CC_DBC->createSequence($CC_CONFIG['permSequence']);
echo "done.\n";
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['permTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['permTable']."\n";
}
if (!camp_db_table_exists($CC_CONFIG['sessTable'])) {
- echo " * Creating database table ".$CC_CONFIG['sessTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['sessTable']."...";
$sql = "CREATE TABLE ".$CC_CONFIG['sessTable']." (
sessid char(32) not null PRIMARY KEY,
userid int REFERENCES ".$CC_CONFIG['subjTable']." ON DELETE CASCADE,
@@ -134,32 +158,29 @@ if (!camp_db_table_exists($CC_CONFIG['sessTable'])) {
ON ".$CC_CONFIG['sessTable']." (login)";
camp_install_query($sql);
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['sessTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['sessTable']."\n";
}
/**
* file states:
- *
- * - empty
- * - incomplete
- * - ready
- * - edited
- * - deleted
- *
+ * empty
+ * incomplete
+ * ready
+ * edited
+ * deleted
+ *
* file types:
- *
- * - audioclip
- * - playlist
- * - webstream
- *
+ * audioclip
+ * playlist
+ * webstream
+ *
* access types:
- *
- * - access
- * - download
- *
+ * access
+ * download
+ *
*/
if (!camp_db_table_exists($CC_CONFIG['filesTable'])) {
- echo " * Creating database table ".$CC_CONFIG['filesTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['filesTable']."...";
$sql =
"CREATE TABLE ".$CC_CONFIG['filesTable']."
(
@@ -243,11 +264,11 @@ if (!camp_db_table_exists($CC_CONFIG['filesTable'])) {
//$CC_DBC->createSequence($CC_CONFIG['filesSequence']);
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['filesTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['filesTable']."\n";
}
if (!camp_db_table_exists($CC_CONFIG['playListTable'])) {
- echo " * Creating database table ".$CC_CONFIG['playListTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['playListTable']."...";
$sql =
"CREATE TABLE ".$CC_CONFIG['playListTable']."
(
@@ -268,11 +289,11 @@ if (!camp_db_table_exists($CC_CONFIG['playListTable'])) {
camp_install_query($sql);
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['playListTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['playListTable']."\n";
}
if (!camp_db_table_exists($CC_CONFIG['playListContentsTable'])) {
- echo " * Creating database table ".$CC_CONFIG['playListContentsTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['playListContentsTable']."...";
$sql =
"CREATE TABLE ".$CC_CONFIG['playListContentsTable']."
(
@@ -325,7 +346,7 @@ if (!camp_db_table_exists($CC_CONFIG['playListContentsTable'])) {
camp_install_query($sql);
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['playListContentsTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['playListContentsTable']."\n";
}
//if (!camp_db_sequence_exists($CC_CONFIG["filesSequence"])) {
@@ -343,7 +364,7 @@ if (!camp_db_table_exists($CC_CONFIG['playListContentsTable'])) {
//}
if (!camp_db_table_exists($CC_CONFIG['accessTable'])) {
- echo " * Creating database table ".$CC_CONFIG['accessTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['accessTable']."...";
$sql = "CREATE TABLE ".$CC_CONFIG['accessTable']." (
gunid bigint, -- global unique id
token bigint, -- access token
@@ -368,10 +389,10 @@ if (!camp_db_table_exists($CC_CONFIG['accessTable'])) {
ON ".$CC_CONFIG['accessTable']." (parent)";
camp_install_query($sql);
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['accessTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['accessTable']."\n";
}
-echo " * Inserting default users...\n";
+echo " * Inserting default users...\n";
$gb = new GreenBox();
$r = $gb->initData(true);
if (PEAR::isError($r)) {
@@ -385,7 +406,7 @@ if (PEAR::isError($r)) {
//------------------------------------------------------------------------------
if (!camp_db_table_exists($CC_CONFIG['transTable'])) {
- echo " * Creating database table ".$CC_CONFIG['transTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['transTable']."...";
$sql = "CREATE TABLE ".$CC_CONFIG['transTable']." (
id int not null, -- primary key
trtok char(16) not null, -- transport token
@@ -436,14 +457,14 @@ if (!camp_db_table_exists($CC_CONFIG['transTable'])) {
ON ".$CC_CONFIG['transTable']." (state)";
camp_install_query($sql);
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['transTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['transTable']."\n";
}
/**
* Scheduler tables.
*/
if (!camp_db_table_exists($CC_CONFIG['scheduleTable'])) {
- echo " * Creating database table ".$CC_CONFIG['scheduleTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['scheduleTable']."...";
$sql = "CREATE TABLE ".$CC_CONFIG['scheduleTable']."("
." id bigint NOT NULL,"
." playlist_id integer NOT NULL,"
@@ -460,7 +481,7 @@ if (!camp_db_table_exists($CC_CONFIG['scheduleTable'])) {
." CONSTRAINT unique_id UNIQUE (id))";
camp_install_query($sql);
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['scheduleTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['scheduleTable']."\n";
}
@@ -478,7 +499,7 @@ if (!camp_db_table_exists($CC_CONFIG['scheduleTable'])) {
if (!camp_db_table_exists($CC_CONFIG['backupTable'])) {
- echo " * Creating database table ".$CC_CONFIG['backupTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['backupTable']."...";
$sql = "CREATE TABLE ".$CC_CONFIG['backupTable']." ("
." token VARCHAR(64) NOT NULL,"
." sessionId VARCHAR(64) NOT NULL,"
@@ -488,11 +509,11 @@ if (!camp_db_table_exists($CC_CONFIG['backupTable'])) {
." PRIMARY KEY(token))";
camp_install_query($sql);
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['backupTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['backupTable']."\n";
}
if (!camp_db_table_exists($CC_CONFIG['prefTable'])) {
- echo " * Creating database table ".$CC_CONFIG['prefTable']."...";
+ echo " * Creating database table ".$CC_CONFIG['prefTable']."...";
//$CC_DBC->createSequence($CC_CONFIG['prefSequence']);
$sql = "CREATE TABLE ".$CC_CONFIG['prefTable']." (
id int not null,
@@ -514,36 +535,37 @@ if (!camp_db_table_exists($CC_CONFIG['prefTable'])) {
ON ".$CC_CONFIG['prefTable']." (subjid)";
camp_install_query($sql);
- echo " * Inserting starting data into table ".$CC_CONFIG['prefTable']."...";
+ echo " * Inserting starting data into table ".$CC_CONFIG['prefTable']."...";
$stPrefGr = Subjects::GetSubjId($CC_CONFIG['StationPrefsGr']);
Prefs::Insert($CC_CONFIG["systemPrefId"], 'stationName', "Radio Station 1");
// $genres = file_get_contents( dirname(__FILE__).'/../genres.xml');
// Prefs::Insert($CC_CONFIG["systemPrefId"], 'genres', $genres);
echo "done.\n";
} else {
- echo " * Skipping: database table already exists: ".$CC_CONFIG['prefTable']."\n";
+ echo " * Skipping: database table already exists: ".$CC_CONFIG['prefTable']."\n";
}
//------------------------------------------------------------------------
// Install storage directories
//------------------------------------------------------------------------
+echo " *** Directory Setup ***\n";
foreach (array('storageDir', 'bufferDir', 'transDir', 'accessDir', 'cronDir') as $d) {
$test = file_exists($CC_CONFIG[$d]);
if ( $test === FALSE ) {
@mkdir($CC_CONFIG[$d], 02775);
if (file_exists($CC_CONFIG[$d])) {
$rp = realpath($CC_CONFIG[$d]);
- echo " * Directory $rp created\n";
+ echo " * Directory $rp created\n";
} else {
- echo " * Failed creating {$CC_CONFIG[$d]}\n";
+ echo " * Failed creating {$CC_CONFIG[$d]}\n";
exit(1);
}
} elseif (is_writable($CC_CONFIG[$d])) {
$rp = realpath($CC_CONFIG[$d]);
- echo " * Skipping directory already exists: $rp\n";
+ echo " * Skipping directory already exists: $rp\n";
} else {
$rp = realpath($CC_CONFIG[$d]);
- echo " * WARNING: Directory already exists, but is not writable: $rp\n";
+ echo " * WARNING: Directory already exists, but is not writable: $rp\n";
//exit(1);
}
$CC_CONFIG[$d] = $rp;
@@ -553,16 +575,28 @@ foreach (array('storageDir', 'bufferDir', 'transDir', 'accessDir', 'cronDir') as
// Storage directory writability test
//------------------------------------------------------------------------
-echo " * Testing writability of ".$CC_CONFIG['storageDir']."...";
-if (!($fp = @fopen($CC_CONFIG['storageDir']."/_writeTest", 'w'))) {
- echo "\nPlease make directory {$CC_CONFIG['storageDir']} writeable by your webserver".
- "\nand run install again\n\n";
- exit(1);
-} else {
- fclose($fp);
- unlink($CC_CONFIG['storageDir']."/_writeTest");
-}
-echo "done.\n";
+//echo " * Testing writability of ".$CC_CONFIG['storageDir']."...";
+//if (!($fp = @fopen($CC_CONFIG['storageDir']."/_writeTest", 'w'))) {
+// echo "\nPlease make directory {$CC_CONFIG['storageDir']} writeable by your webserver".
+// "\nand run install again\n\n";
+// exit(1);
+//} else {
+// fclose($fp);
+// unlink($CC_CONFIG['storageDir']."/_writeTest");
+//}
+//echo "done.\n";
+
+
+//
+// Make sure the Smarty Templates Compiled directory has the right perms
+//
+echo " * Setting dir permissions...\n";
+install_setDirPermissions($CC_CONFIG["smartyTemplateCompiled"]);
+install_setDirPermissions($CC_CONFIG["storageDir"]);
+install_setDirPermissions($CC_CONFIG["bufferDir"]);
+install_setDirPermissions($CC_CONFIG["transDir"]);
+install_setDirPermissions($CC_CONFIG["accessDir"]);
+
//------------------------------------------------------------------------
// Install Cron job
@@ -595,8 +629,8 @@ $cron->ct->addCron($m, $h, $dom, $mon, $dow, $command);
$cron->closeCrontab();
echo " Done.\n";
-echo "**********************************\n";
-echo "* StorageServer Install Complete *\n";
-echo "**********************************\n";
+echo "*******************************\n";
+echo "* Campcaster Install Complete *\n";
+echo "*******************************\n";
?>
\ No newline at end of file
diff --git a/install/installInit.php b/install/installInit.php
index c126e2d34..5869a831f 100644
--- a/install/installInit.php
+++ b/install/installInit.php
@@ -61,4 +61,27 @@ function campcaster_db_connect($p_exitOnError = true) {
}
}
+function install_setDirPermissions($filePath) {
+ global $CC_CONFIG;
+ $success = chgrp($filePath, $CC_CONFIG["webServerUser"]);
+ $fileperms=@fileperms($filePath);
+ $fileperms = $fileperms | 0x0010; // group write bit
+ $fileperms = $fileperms | 0x0400; // group sticky bit
+ chmod($filePath, $fileperms);
+
+ // Verify Smarty template dir permissions
+ $fileGroup = filegroup($CC_CONFIG["smartyTemplateCompiled"]);
+ $groupOwner = (function_exists('posix_getgrgid'))?@posix_getgrgid($fileGroup):'';
+ if (!empty($groupOwner) && ($groupOwner["name"] != $CC_CONFIG["webServerUser"])) {
+ echo " * Error: Your directory permissions for {$filePath} are not set correctly.
\n";
+ echo " * The group perms need to be set to the web server user, in this case '{$CC_CONFIG['webServerUser']}'.
\n";
+ echo " * Currently the group is set to be '{$groupOwner['name']}'.
\n";
+ exit(1);
+ }
+ if (!($fileperms & 0x0400)) {
+ echo " * Error: Sticky bit not set for {$filePath}.
\n";
+ exit(1);
+ }
+}
+
?>
\ No newline at end of file
diff --git a/install/nightlyBuild.sh b/install/nightlyBuild.sh
deleted file mode 100755
index dcfb93566..000000000
--- a/install/nightlyBuild.sh
+++ /dev/null
@@ -1,84 +0,0 @@
-#!/bin/bash
-#-------------------------------------------------------------------------------
-# Copyright (c) 2010 Sourcefabric O.P.S.
-#
-# This file is part of the Campcaster project.
-# http://campcaster.sourcefabric.org/
-# To report bugs, send an e-mail to bugs@campware.org
-#
-# Campcaster 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.
-#
-# Campcaster 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 Campcaster; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-#-------------------------------------------------------------------------------
-
-#-------------------------------------------------------------------------------
-# This script generates the nightly builds and logs.
-#-------------------------------------------------------------------------------
-
-reldir=`dirname $0`/..
-basedir=`cd $reldir; pwd;`
-bindir=${basedir}/bin
-tmpdir=${basedir}/tmp
-logdir=${basedir}/tmp
-
-cd ${basedir}
-
-
-#-------------------------------------------------------------------------------
-# Update the source from the repository.
-#-------------------------------------------------------------------------------
-mv -f ${logdir}/nightlySvnUpdate.log ${logdir}/nightlySvnUpdate.log~
-svn update &> ${logdir}/nightlySvnUpdate.log
-ls -l ${logdir}/nightlySvnUpdate.log >> ${logdir}/nightlySvnUpdate.log
-
-
-#-------------------------------------------------------------------------------
-# Generate the documentation.
-#-------------------------------------------------------------------------------
-mv -f ${logdir}/nightlyMakeDoxygen.log ${logdir}/nightlyMakeDoxygen.log~
-make doxygen &> ${logdir}/nightlyMakeDoxygen.log
-ls -l ${logdir}/nightlyMakeDoxygen.log >> ${logdir}/nightlyMakeDoxygen.log
-
-
-#-------------------------------------------------------------------------------
-# Recompile the code.
-#-------------------------------------------------------------------------------
-mv -f ${logdir}/nightlyMakeRecompile.log ${logdir}/nightlyMakeRecompile.log~
-make recompile &> ${logdir}/nightlyMakeRecompile.log
-ls -l ${logdir}/nightlyMakeRecompile.log >> ${logdir}/nightlyMakeRecompile.log
-
-
-#-------------------------------------------------------------------------------
-# Run the unit tests.
-#-------------------------------------------------------------------------------
-mv -f ${logdir}/nightlyMakeCheck.log ${logdir}/nightlyMakeCheck.log~
-make check &> ${logdir}/nightlyMakeCheck.log
-ls -l ${logdir}/nightlyMakeCheck.log >> ${logdir}/nightlyMakeCheck.log
-
-
-#-------------------------------------------------------------------------------
-# Generate the test results report.
-#-------------------------------------------------------------------------------
-mv -f ${logdir}/nightlyMakeTestResults.log ${logdir}/nightlyMakeTestResults.log~
-make testresults &> ${logdir}/nightlyMakeTestResults.log
-ls -l ${logdir}/nightlyMakeTestResults.log >> ${logdir}/nightlyMakeTestResults.log
-
-
-#-------------------------------------------------------------------------------
-# Generate the flawfinder report.
-#-------------------------------------------------------------------------------
-mv -f ${logdir}/nightlyMakeFlawfinder.log ${logdir}/nightlyMakeFlawfinder.log~
-make flawfinder &> ${logdir}/nightlyMakeFlawfinder.log
-ls -l ${logdir}/nightlyMakeFlawfinder.log >> ${logdir}/nightlyMakeFlawfinder.log
-
diff --git a/install/setupDevelopmentEnvironmentAndLog.sh b/install/setupDevelopmentEnvironmentAndLog.sh
deleted file mode 100755
index 63392c58d..000000000
--- a/install/setupDevelopmentEnvironmentAndLog.sh
+++ /dev/null
@@ -1,208 +0,0 @@
-#!/bin/bash
-#-------------------------------------------------------------------------------
-# Copyright (c) 2010 Sourcefabric O.P.S.
-#
-# This file is part of the Campcaster project.
-# http://campcaster.sourcefabric.org/
-# To report bugs, send an e-mail to bugs@campware.org
-#
-# Campcaster 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.
-#
-# Campcaster 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 Campcaster; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-#-------------------------------------------------------------------------------
-
-#-------------------------------------------------------------------------------
-# A script to set up the development environment for Campcaster
-#
-# Invoke as:
-# ./bin/setupDevelopmentEnvironmentAndLog.sh
-#-------------------------------------------------------------------------------
-
-#-------------------------------------------------------------------------------
-# Determine directories, files
-#-------------------------------------------------------------------------------
-reldir=`dirname $0`/..
-basedir=`cd $reldir; pwd;`
-bindir=$basedir/bin
-tmpdir=$basedir/tmp
-logdir=$basedir/tmp
-
-usrdir=`cd $basedir/usr; pwd;`
-
-#-------------------------------------------------------------------------------
-# Print the usage information for this script.
-#-------------------------------------------------------------------------------
-printUsage()
-{
- echo "Campcaster development environment setup script.";
- echo "parameters";
- echo "";
- echo " -g, --apache-group The group the apache daemon runs as.";
- echo " [default: www-data]";
- 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=www-data;
-fi
-
-#------------------------------------------------------------------------------
-# All steps are being logged
-#------------------------------------------------------------------------------
-echo "";
-echo "The compile process will be started. All steps are being logged in";
-echo "$logdir ";
-echo "";
-
-#------------------------------------------------------------------------------
-# Cleaning the setup
-#------------------------------------------------------------------------------
-mv -f $logdir/make_modprod_distclean_setup.log \
- $logdir/make_modprod_distclean_setup.log~
-make -C $basedir modprod_distclean \
- > $logdir/make_modprod_distclean_setup.log 2>&1
-ls -l $logdir/make_modprod_distclean_setup.log \
- >> $logdir/make_modprod_distclean_setup.log
-
-#-------------------------------------------------------------------------------
-# Create the configure script, using setup parameters
-#-------------------------------------------------------------------------------
-# --prefix=$usrdir --with-www-docroot=$usrdir/var =/var/www
-# --with-hostname=localhost --with-apache-group=$apache_group
-# --enable-debug --with-configure-apache=no =yes
-#
-# --with-create-database=no =yes --with-create-odbc-data-source=no =yes
-# --with-init-database=no =yes --with-database=Campcaster-name
-# --with-database-user=test --with-database-password=test
-#
-# --with-station-audio-out=default
-# --with-studio-audio-out=default
-# --with-studio-audio-cue=default
-#
-
-rm -rf $tmpdir/configure
-echo "Now Configure ... Development Environment";
-mv -f $logdir/configure_development_environment.log \
- $logdir/configure_development_environment.log~
-$bindir/autogen.sh \
- > $logdir/configure_development_environment.log 2>&1
-$basedir/configure --prefix=$usrdir --enable-debug \
- --with-hostname=localhost \
- --with-www-docroot=$usrdir/var \
- --with-apache-group=$apache_group \
- >> $logdir/configure_development_environment.log 2>&1
-ls -l $logdir/configure_development_environment.log \
- >> $logdir/configure_development_environment.log
-echo "";
-echo "Configure is done, the configure_development_environment.log is created";
-echo "";
-
-#-------------------------------------------------------------------------------
-# Compile step by step
-#-------------------------------------------------------------------------------
-echo "Now Compiling ... Tools";
-mv -f $logdir/make_install_tools_setup.log \
- $logdir/make_install_tools_setup.log~
-make -C $basedir tools_setup \
- > $logdir/make_install_tools_setup.log 2>&1
-ls -l $logdir/make_install_tools_setup.log \
- >> $logdir/make_install_tools_setup.log
-echo "Done Tools Setup, the make_install_tools_setup.log is created";
-echo "";
-echo "Now Compiling ... Doxytag";
-mv -f $logdir/make_doxytag_setup.log \
- $logdir/make_doxytag_setup.log~
-make -C $basedir doxytag_setup \
- > $logdir/make_doxytag_setup.log 2>&1
-ls -l $logdir/make_doxytag_setup.log \
- >> $logdir/make_doxytag_setup.log
-echo "Done Doxytag Setup, the make_doxytag_setup.log is created";
-echo "";
-echo "Now Configure ... Modules ... Products";
-mv -f $logdir/make_configure_modules_setup.log \
- $logdir/make_configure_modules_setup.log~
-make -C $basedir modules_setup \
- > $logdir/make_configure_modules_setup.log 2>&1
-ls -l $logdir/make_configure_modules_setup.log \
- >> $logdir/make_configure_modules_setup.log
-echo "Configure Modules is done, the make_configure_modules_setup.log is created";
-mv -f $logdir/make_configure_products_setup.log \
- $logdir/make_configure_products_setup.log~
-make -C $basedir products_setup \
- > $logdir/make_configure_products_setup.log 2>&1
-ls -l $logdir/make_configure_products_setup.log \
- >> $logdir/make_configure_products_setup.log
-echo "Configure Products is done, the make_configure_products_setup.log is created";
-echo "";
-echo "Now Compiling ... Modules ... Products";
-mv -f $logdir/make_compile_setup.log \
- $logdir/make_compile_setup.log~
-make -C $basedir compile \
- > $logdir/make_compile_setup.log 2>&1
-ls -l $logdir/make_compile_setup.log \
- >> $logdir/make_compile_setup.log
-echo "Compiling is done, the make_compile_setup.log is created";
-echo "";
-
-#-------------------------------------------------------------------------------
-# User setup
-#-------------------------------------------------------------------------------
-echo "Setting up user settings ...";
-
-$bindir/user_setup.sh --apache-group=$apache_group || exit 1
-
-#-------------------------------------------------------------------------------
-# Checking what we have done
-#-------------------------------------------------------------------------------
-echo "Now Checking ...";
-mv -f $logdir/make_check_setup.log \
- $logdir/make_check_setup.log~
-make -C $basedir check \
- > $logdir/make_check_setup.log 2>&1
-ls -l $logdir/make_check_setup.log \
- >> $logdir/make_check_setup.log
-echo "Checking is be done, the make_check_setup.log is created";
-echo "";
-
-#-------------------------------------------------------------------------------
-# We're done
-#-------------------------------------------------------------------------------
-echo "Done."
-
diff --git a/install/updateStudioConfig.sh b/install/updateStudioConfig.sh
deleted file mode 100755
index 457544cbf..000000000
--- a/install/updateStudioConfig.sh
+++ /dev/null
@@ -1,236 +0,0 @@
-#!/bin/bash
-#-------------------------------------------------------------------------------
-# Copyright (c) 2010 Sourcefabric O.P.S.
-#
-# This file is part of the Campcaster project.
-# http://campcaster.sourcefabric.org/
-# To report bugs, send an e-mail to bugs@campware.org
-#
-# Campcaster 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.
-#
-# Campcaster 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 Campcaster; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-#-------------------------------------------------------------------------------
-# This script updates the configuration file of Campcaster Studio.
-#
-# Invoke as:
-# ./bin/updateStudioConfig.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 "Campcaster Studio 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 " -o, --output-device The audio device of live-mode broadcast";
- echo " [default: default]";
- echo " -c, --cue-device The audio device of preview listening";
- echo " [default: default]";
- echo " -h, --help Print this message and exit.";
- echo "";
-}
-
-
-#-------------------------------------------------------------------------------
-# Process command line parameters
-#-------------------------------------------------------------------------------
-CMD=${0##*/}
-
-opts=$(getopt -o d:H:hp:P:c:o: -l directory:,host:,help,port:,scheduler-port:,cue-device:,output-device: -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;;
- -o|--output-device)
- output_alsa_device=$2;
- shift; shift;;
- -c|--cue-device)
- cue_alsa_device=$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$output_alsa_device" == "x" ]; then
- output_alsa_device="default";
-fi
-
-if [ "x$cue_alsa_device" == "x" ]; then
- cue_alsa_device="default";
-fi
-
-echo "Making post-install steps for Campcaster Studio.";
-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 " live broadcast device: $output_alsa_device";
-echo " preview device: $cue_alsa_device";
-echo ""
-
-#-------------------------------------------------------------------------------
-# The details of installation
-#-------------------------------------------------------------------------------
-ls_php_host=$hostname
-ls_php_port=$http_port
-ls_php_urlPrefix=campcaster
-
-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
-ls_output_alsa_device=$output_alsa_device
-ls_cue_alsa_device=$cue_alsa_device
-
-
-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
-install_var_s=`echo $install_var | 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"`
-ls_output_alsa_device_s=`echo $ls_output_alsa_device | sed -e "s/\//\\\\\\\\\//g"`
-ls_cue_alsa_device_s=`echo $ls_cue_alsa_device | sed -e "s/\//\\\\\\\\\//g"`
-
-replace_sed_string="s/ls_var_dir/$install_var_s/; \
- s/ls_php_urlPrefix/$ls_php_urlPrefix_s/; \
- s/ls_php_host/$ls_php_host/; \
- s/ls_php_port/$ls_php_port/; \
- s/ls_alib_xmlRpcPrefix/$ls_alib_xmlRpcPrefix_s/; \
- s/ls_audio_output_device/$ls_output_alsa_device_s/; \
- s/ls_audio_cue_device/$ls_cue_alsa_device_s/; \
- s/ls_scheduler_host/$ls_scheduler_host/; \
- s/ls_scheduler_port/$ls_scheduler_port/; \
- s/ls_scheduler_xmlRpcPrefix/$ls_scheduler_xmlRpcPrefix_s/;"
-
-
-#-------------------------------------------------------------------------------
-# 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 "Executable $1 found...";
- return 0;
- else
- echo "Executable $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..."
-
-# customize the Campcaster Studio config file
-cat $install_etc/campcaster-studio.xml.template \
- | sed -e "$replace_sed_string" \
- > $install_etc/campcaster-studio.xml
-
-
-#-------------------------------------------------------------------------------
-# Say goodbye
-#-------------------------------------------------------------------------------
-echo "Done."
-
diff --git a/install/user_setup.sh b/install/user_setup.sh
deleted file mode 100755
index 66140512a..000000000
--- a/install/user_setup.sh
+++ /dev/null
@@ -1,352 +0,0 @@
-#!/bin/bash
-#-------------------------------------------------------------------------------
-# Copyright (c) 2010 Sourcefabric O.P.S.
-#
-# This file is part of the Campcaster project.
-# http://campcaster.sourcefabric.org/
-# To report bugs, send an e-mail to bugs@campware.org
-#
-# Campcaster 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.
-#
-# Campcaster 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 Campcaster; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-#-------------------------------------------------------------------------------
-# This script configures the environment for a developer.
-#
-# Invoke as:
-# ./bin/user_setup.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
-srcdir=$basedir/src
-tmpdir=$basedir/tmp
-toolsdir=$srcdir/tools
-modules_dir=$srcdir/modules
-products_dir=$srcdir/products
-scheduler_dir=$products_dir/scheduler
-scheduler_bin_dir=$scheduler_dir/bin
-
-usrdir=`cd $basedir/usr; pwd;`
-
-
-#-------------------------------------------------------------------------------
-# Print the usage information for this script.
-#-------------------------------------------------------------------------------
-printUsage()
-{
- echo "Campcaster local user settings setup 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
-
-scheduler_base_port=3344
-
-user=`whoami`
-# force localhost always
-hostname=localhost
-http_port=80
-scheduler_port=`expr $scheduler_base_port + $UID`
-scheduler_storage_pass=change_me
-dbserver=localhost
-database=Campcaster-$user
-dbuser=test
-dbpassword=test
-homedir=$HOME
-configdir=$homedir/.campcaster
-htmldir=$homedir/public_html
-output_device=default
-cue_device=default
-
-
-echo "Configuring Campcaster development environment for user $user.";
-echo "";
-echo "Using the following installation parameters:";
-echo "";
-echo " host name: $hostname";
-echo " web server port: $http_port";
-echo " scheduler port: $scheduler_port";
-echo " storage password for the scheduler: $scheduler_storage_pass";
-echo " database server: $dbserver";
-echo " database: $database";
-echo " database user: $dbuser";
-echo " database user password: $dbpassword";
-echo " apache daemon group: $apache_group";
-echo " home directory: $homedir";
-echo " configuration directory: $configdir";
-echo " web base directory: $htmldir";
-echo " output audio device: $output_device";
-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,";
- echo "and that the current user is a member of this group.";
- exit 1;
-fi
-rm -f $group_tmp_file;
-
-
-#-------------------------------------------------------------------------------
-# The details of installation
-#-------------------------------------------------------------------------------
-
-installdir=$usrdir
-
-ls_php_host=$hostname
-ls_php_port=$http_port
-ls_php_urlPrefix=~$user/campcaster
-
-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
-ls_tmp_dir=$installdir/tmp
-ls_scheduler_daemon_command="$scheduler_bin_dir/campcaster-scheduler_devenv.sh"
-
-ls_audio_output_device=$output_device
-ls_audio_cue_device=$cue_device
-
-# 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"`
-ls_tmp_dir_s=`echo $ls_tmp_dir | sed -e "s/\//\\\\\\\\\//g"`
-ls_scheduler_daemon_command_s=`echo $ls_scheduler_daemon_command | \
- 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_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/; \
- s/ls_audio_output_device/$ls_audio_output_device/; \
- s/ls_audio_cue_device/$ls_audio_cue_device/; \
- s/ls_tmp_dir/$ls_tmp_dir_s/; \
- s/ls_scheduler_daemon_command/$ls_scheduler_daemon_command_s/; \
- s/ls_scheduler_storage_pass/$scheduler_storage_pass/;"
-echo
-echo $replace_sed_string
-echo
-
-
-#-------------------------------------------------------------------------------
-# 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 "Executable $1 found...";
- return 0;
- else
- echo "Executable $1 not found...";
- return 1;
- fi
-}
-
-
-#-------------------------------------------------------------------------------
-# Check for required tools
-#-------------------------------------------------------------------------------
-echo "Checking for required tools..."
-
-check_exe "sed" || exit 1;
-check_exe "php" || exit 1;
-
-
-#-------------------------------------------------------------------------------
-# Customize the configuration files with the appropriate values
-#-------------------------------------------------------------------------------
-echo "Customizing configuration files..."
-
-mkdir -p $configdir
-
-cat $modules_dir/storageServer/var/conf_only.php.template \
- | sed -e "$replace_sed_string" \
- > $configdir/storageServer.conf.php
-
-#cat $modules_dir/authentication/etc/webAuthentication.xml.template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/webAuthentication.xml
-#
-#cat $modules_dir/db/etc/connectionManagerFactory.xml.template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/connectionManagerFactory.xml
-#
-#cat $modules_dir/db/etc/simpleConnectionManager.xml.template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/simpleConnectionManager.xml
-#
-#cat $modules_dir/schedulerClient/etc/schedulerClientFactory.xml.template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/schedulerClientFactory.xml
-#
-#cat $modules_dir/schedulerClient/etc/schedulerDaemonXmlRpcClient.xml.template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/schedulerDaemonXmlRpcClient.xml
-#
-#cat $modules_dir/storageClient/etc/webAuthenticationClient.xml.template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/webAuthenticationClient.xml
-#
-#cat $modules_dir/storageClient/etc/webStorage.xml.template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/webStorage.xml
-#
-#cat $products_dir/scheduler/etc/campcaster-scheduler.xml.template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/campcaster-scheduler.xml
-#
-#cat $products_dir/gLiveSupport/etc/campcaster-studio.xml.user-template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/campcaster-studio.xml
-#
-#cat $products_dir/gLiveSupport/etc/authenticationClient.xml.user-template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/authenticationClient.xml
-#
-#cat $products_dir/gLiveSupport/etc/storageClient.xml.user-template \
-# | sed -e "$replace_sed_string" \
-# > $configdir/storageClient.xml
-
-
-#-------------------------------------------------------------------------------
-# Create the public html directory, and links to the PHP directories
-#-------------------------------------------------------------------------------
-echo "Creating public HTML directory and links to web interfaces..."
-
-mkdir -p $htmldir
-rm -f $htmldir/campcaster
-ln -s $modules_dir $htmldir/campcaster
-
-
-#-------------------------------------------------------------------------------
-# Setup storageServer
-#-------------------------------------------------------------------------------
-echo "Setting up storageServer..."
-
-make -C $modules_dir/storageServer storage || exit 1
-
-
-#-------------------------------------------------------------------------------
-# Setup directory permissions
-#-------------------------------------------------------------------------------
-echo "Setting up directory permissions..."
-
-chgrp $apache_group $modules_dir/storageServer/var/stor
-chgrp $apache_group $modules_dir/storageServer/var/access
-chgrp $apache_group $modules_dir/storageServer/var/trans
-chgrp $apache_group $modules_dir/storageServer/var/stor/buffer
-chmod g+sw $modules_dir/storageServer/var/stor
-chmod g+sw $modules_dir/storageServer/var/access
-chmod g+sw $modules_dir/storageServer/var/trans
-chmod g+sw $modules_dir/storageServer/var/stor/buffer
-
-chgrp $apache_group $modules_dir/htmlUI/var/templates_c
-chgrp $apache_group $modules_dir/htmlUI/var/html/img
-
-chmod g+sw $modules_dir/htmlUI/var/templates_c
-chmod g+sw $modules_dir/htmlUI/var/html/img
-
-cp $modules_dir/htmlUI/var/redirect.php $modules_dir/index.php
-cp $modules_dir/htmlUI/var/redirect.php $modules_dir/htmlUI/index.php
-cp $modules_dir/htmlUI/var/redirect.php $modules_dir/htmlUI/var/index.php
-cp $modules_dir/htmlUI/var/redirect.php $modules_dir/htmlUI/var/html/index.php
-
-
-#-------------------------------------------------------------------------------
-# Say goodbye
-#-------------------------------------------------------------------------------
-echo "";
-echo "The HTML user interface for the Campcaster development environment";
-echo "for user $user is available at:";
-echo "http://$ls_php_host:$ls_php_port/$ls_php_urlPrefix/htmlUI/var";
-echo "";
-echo "Done."
-