Author: jfthomps
Date: Thu Mar 26 13:51:00 2015
New Revision: 8445

Log:
removing vcl-upgrade.sh and sig and sum, adding vcl-upgrade-2.4.1.sh and sig 
and sum; symlinks to follow...

Added:
    release/vcl/vcl-upgrade-2.4.1.sh   (with props)
    release/vcl/vcl-upgrade-2.4.1.sh.asc   (with props)
    release/vcl/vcl-upgrade-2.4.1.sh.sha1
Removed:
    release/vcl/vcl-upgrade.sh
    release/vcl/vcl-upgrade.sh.asc
    release/vcl/vcl-upgrade.sh.sha1

Added: release/vcl/vcl-upgrade-2.4.1.sh
==============================================================================
--- release/vcl/vcl-upgrade-2.4.1.sh (added)
+++ release/vcl/vcl-upgrade-2.4.1.sh Thu Mar 26 13:51:00 2015
@@ -0,0 +1,815 @@
+#!/bin/bash
+
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+
+#     http://www.apache.org/licenses/LICENSE-2.0
+
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+function print_break() {
+       echo 
"------------------------------------------------------------------------------------------"
+}
+
+function random_string() {
+       local string_length
+       if [[ -n $1 ]]; then string_length=$1; else string_length=8; fi
+       random_string=</dev/urandom tr -dc A-Za-z0-9 | head -c $string_length
+       echo $random_string
+}
+
+function help() {
+       name=`basename $0`
+       echo ""
+       echo "$name [-h|--help] [-d|--database] [-w|--web] 
[-m|--managementnode]"
+       echo -e "\t\t[--dbhost <hostname>] [--dbadminuser <username>]"
+       echo -e "\t\t[--dbadminpass <password>]"
+       echo ""
+       echo -e "\t-d|--database - upgrade database components"
+       echo -e "\t\t--dbhost may optionally be specified if not localhost"
+       echo ""
+       echo -e "\t-w|--web - upgrade web server components"
+       echo ""
+       echo -e "\t-m|--managementnode - upgrade management node (vcld) 
components"
+       echo ""
+       echo -e "\t--dbhost <hostname> - hostname of database server 
(default=localhost)"
+       echo ""
+       echo -e "\t--dbname <name> - name of VCL database on database server 
(default=vcl)"
+       echo ""
+       echo -e "\t--dbadminuser <username> - admin username for database; must 
have access"
+       echo -e "\t\tto modify database schema and dump data for backup 
(default=root)"
+       echo ""
+       echo -e "\t--dbadminpass <password> - password for dbadminuser 
(default=[no password])"
+       echo ""
+       echo "If no arguments supplied, all components will be upgraded using 
default"
+       echo "values for optional arguments."
+       echo ""
+       exit 2
+}
+
+args=$(getopt -q -o dwmh -l 
database,web,managementnode,help,dbhost:,dbname:,dbadminuser:,dbadminpass:,rc: 
-n $0 -- "$@")
+
+if [ $? -ne 0 ]; then help; fi
+
+eval set -- "$args"
+
+# ------------------------- variables -------------------------------
+VCL_VERSION=2.4.1
+OLD_VERSION=""
+DB_NAME=vcl
+WEB_PATH=/var/www/html/vcl
+MN_PATH=/usr/local/vcl
+DB_ADMINUSER=root
+DB_ADMINPASS=""
+
+DB_HOST=localhost
+ARCHIVE=apache-VCL-$VCL_VERSION.tar.bz2
+ARCHIVEURLPATH="http://vcl.apache.org/downloads/download.cgi?action=download&filename=%2Fvcl%2F";
+SIGPATH="http://www.apache.org/dist/vcl/";
+
+DODB=0
+DOWEB=0
+DOMN=0
+DOALL=1
+dbhostdefault=1
+dbnamedefault=1
+dbadminuserdefault=1
+dbadminpassdefault=1
+dorc=0
+
+while true; do
+       case "$1" in
+               -d|--database)
+                       DODB=1
+                       DOALL=0
+                       shift
+                       ;;
+               -w|--web)
+                       DOWEB=1
+                       DOALL=0
+                       shift
+                       ;;
+               -m|--managementnode)
+                       DOMN=1
+                       DOALL=0
+                       shift
+                       ;;
+               --dbhost)
+                       DB_HOST=$2
+                       dbhostdefault=0
+                       shift 2
+                       ;;
+               --dbname)
+                       DB_NAME=$2
+                       dbnamedefault=0
+                       shift 2
+                       ;;
+               --dbadminuser)
+                       DB_ADMINUSER=$2
+                       dbadminuserdefault=0
+                       shift 2
+                       ;;
+               --dbadminpass)
+                       DB_ADMINPASS=$2
+                       dbadminpassdefault=0
+                       shift 2
+                       ;;
+               --rc)
+                       RC=$2
+                  dorc=1
+                       shift 2
+                       ;;
+               -h|--help)
+                       help
+                       exit 1
+                       ;;
+               --)
+                       shift
+                       break
+                       ;;
+               *)
+                       echo "unknown option: $1"
+                       exit 1
+                       ;;
+       esac
+done
+
+if [[ $dorc -eq 1 ]]; then
+       if [[ ! $RC =~ ^[0-9]+$ ]]; then
+               echo ""
+               echo "Invalid value specified for --rc=, must be a number"
+               echo ""
+               exit 1
+       fi
+       VCL_VERSION=${VCL_VERSION}-RC$RC
+       ARCHIVE=apache-VCL-$VCL_VERSION.tar.bz2
+       
ARCHIVEURLPATH="http://people.apache.org/~jfthomps/apache-VCL-${VCL_VERSION}/";
+       SIGPATH="http://people.apache.org/~jfthomps/apache-VCL-${VCL_VERSION}/";
+fi
+
+if [[ $DOALL -eq 1 ]]; then
+       DODB=1
+       DOWEB=1
+       DOMN=1
+fi
+
+if [[ $DODB -eq 1 && $DOWEB -eq 1 && $DOMN -eq 1 ]]; then
+       DOALL=1
+fi
+
+# ------------------------- check for being root -----------------------------
+who=$(whoami)
+if [[ $who != "root" ]]; then
+       echo "You must be root to run this script."
+       exit 1
+fi
+
+# ----------------------- notify user of defaults ----------------------------
+if [[ $DODB -eq 1 ]]; then
+       if [[ $dbhostdefault -eq 1 ]]; then
+               echo ""
+               echo "Database host defaulted to be $DB_HOST"
+       fi
+       if [[ $dbnamedefault -eq 1 ]]; then
+               echo ""
+               echo "Database name defaulted to be $DB_NAME"
+       fi
+       if [[ $dbadminuserdefault -eq 1 ]]; then
+               echo ""
+               echo "Database username defaulted to be $DB_ADMINUSER"
+       fi
+       if [[ $dbadminpassdefault -eq 1 ]]; then
+               echo ""
+               echo "Database password defaulted to be empty."
+       fi
+fi
+
+WORKPATH=$(pwd)
+
+if [[ -f NOTICE && -f LICENSE && -d managementnode && -d web && -d mysql ]]; 
then
+       WORKPATH=$(dirname `pwd`)
+fi
+
+if [[ $DB_ADMINPASS = "" ]]; then
+       alias mysql="mysql -u $DB_ADMINUSER -h $DB_HOST"
+       alias mysqldump="mysqldump -u $DB_ADMINUSER -h $DB_HOST"
+else
+       alias mysql="mysql -u $DB_ADMINUSER -p'$DB_ADMINPASS' -h $DB_HOST"
+       alias mysqldump="mysqldump -u $DB_ADMINUSER -p'$DB_ADMINPASS' -h 
$DB_HOST"
+fi
+
+# ------------------- checks for existing installation -----------------------
+echo ""
+echo "Checking for existing VCL components selected for upgrade..."
+# database
+if [[ $DODB -eq 1 ]]; then
+       mysql -e "use $DB_NAME;" &> /dev/null
+       if [ $? -ne 0 ]; then echo "Existing VCL database not found, exiting"; 
exit 1; fi
+fi
+echo "Found existing database"
+# web code
+if [[ $DOWEB -eq 1 ]]; then
+       if [ ! -d $WEB_PATH ]; then echo "Existing web code not found at 
$WEB_PATH, exiting"; exit 1; fi
+       if grep 'VCLversion' $WEB_PATH/index.php | grep -q $VCL_VERSION; then
+               echo "Web code appears to be at current version, exiting"
+               exit 1
+       fi
+fi
+echo "Found existing web code"
+# management code
+if [[ $DOMN -eq 1 ]]; then
+       if [ ! -d $MN_PATH ]; then echo "Existing management node code not 
found at $MN_PATH, exiting"; exit 1; fi
+       if [[ ! -f /etc/vcl/vcld.conf ]]; then echo "/etc/vcl/vcld.conf not 
found, exiting"; exit 1; fi
+       if grep '$VERSION' $MN_PATH/lib/VCL/utils.pm | grep -q $VCL_VERSION; 
then
+               echo "Management node code appears to be at current version, 
exiting"
+               exit 1
+       fi
+fi
+echo "Found existing management node code"
+
+# ------------------------- detemine old version ---------------------
+if [[ $DOWEB -eq 1 || $DOMN -eq 1 ]]; then
+       print_break
+       echo "Determining previous versions of VCL..."
+       if [[ $DOWEB -eq 1 ]]; then
+               OLD_WEB_VERSION=$(grep 'VCLversion' $WEB_PATH/index.php | awk 
-F"'" '{print $2}')
+               if [[ $OLD_WEB_VERSION = "" ]]; then
+                       OLD_WEB_VERSION=$(grep '# ASF VCL' $WEB_PATH/index.php 
| awk '{print $4}' | sed 's/v//')
+                       if [[ $OLD_WEB_VERSION = "" ]]; then
+                               echo "Error: Failed to determine previous 
version of web code, exiting"
+                               exit 1
+                       fi
+               fi
+               echo "Determined previous web code version to be 
$OLD_WEB_VERSION"
+               OLD_VERSION=$OLD_WEB_VERSION
+       fi
+       if [[ $DOMN -eq 1 ]]; then
+               OLD_MN_VERSION=$(grep '$VERSION' $MN_PATH/lib/VCL/utils.pm | 
awk -F"'" '{print $2}')
+               if [[ $DOWEB -eq 1 && $OLD_WEB_VERSION = "2.2.2" && 
$OLD_MN_VERSION = "2.2.1" ]]; then
+                       # 2.2.2 release did not include an upgrade to 
management node code
+                       OLD_MN_VERSION="2.2.2"
+               fi
+               if [[ $OLD_MN_VERSION = "" ]]; then echo "Error: Failed to 
determine previous version of management node code, exiting"; exit 1; fi
+               echo "Determined previous management node code version to be 
$OLD_MN_VERSION"
+               OLD_VERSION=$OLD_MN_VERSION
+       fi
+       if [[ $DOWEB -eq 1 && $DOMN -eq 1 && $OLD_WEB_VERSION != 
$OLD_MN_VERSION ]]; then
+               echo "Error: Previous versions of web code and management node 
do not match; exiting"
+               exit 1
+       fi
+elif [[ $DODB -eq 1 && $DOWEB -eq 0 && $DOMN -eq 0 ]]; then
+       OLD_VERSION=""
+fi
+
+if [[ $OLD_VERSION = $VCL_VERSION ]]; then
+       echo "Error: The installed version of VCL is the same version this 
script installs; exiting"
+       exit 1
+fi
+
+# ------------------------------ NOTICES -------------------------------------
+if [[ $DOMN -eq 1 ]]; then 
+       print_break
+       echo ""
+       echo "NOTICE: Later in this process, you will be prompted to download 
and install"
+       echo "Linux packages and Perl modules. At that time, if you agree with 
the license"
+       echo "terms, enter YES to install them. Otherwise, enter NO to exit and 
abort the "
+       echo "installation."
+       echo ""
+       echo "(Press Enter to continue)"
+       read tmp
+fi
+
+# ------------------------- install basic required packages 
--------------------
+print_break
+echo "Installing Linux packages..."
+yum -q -y install wget
+if [ $? -ne 0 ]; then echo "Error: Failed to install required linux package 
(wget)"; exit 1; fi;
+
+# ------------------------------------ functions 
-------------------------------
+
+function download_archive() {
+       wget -q "$ARCHIVEURLPATH$ARCHIVE" -O $ARCHIVE
+       if [ $? -ne 0 ]; then generic_error "failed to download $ARCHIVE from 
$ARCHIVEURLPATH"; exit 1; fi
+}
+
+function validate_archive_sha1() {
+       echo "Downloading sha1 file for $VCL_VERSION..."
+       /bin/rm -f $ARCHIVE.sha1
+       wget -q $SIGPATH$ARCHIVE.sha1
+       echo "validating $ARCHIVE"
+       sha1sum -c $ARCHIVE.sha1
+       return $?
+}
+
+function validate_archive_gpg() {
+       echo "Downloading GPG file for $VCL_VERSION..."
+       /bin/rm -f $ARCHIVE.asc
+       wget -q $SIGPATH$ARCHIVE.asc
+       echo "Downloading KEYS file for ASF VCL..."
+       wget -q https://svn.apache.org/repos/asf/vcl/KEYS
+       echo "Importing KEYS..."
+       gpg -q --import KEYS
+       /bin/rm -f KEYS
+       echo "validating $ARCHIVE..."
+       gpg -q --verify $ARCHIVE.asc 2>&1 | grep 'Good signature'
+       return $?
+}
+
+function generic_error() {
+       if [[ -n $1 ]]; then
+               echo "$1; correct any errors listed above and try again"
+       else
+               echo "installation failed; correct any errors listed above and 
try again"
+       fi
+}
+
+function confUpgradeFrom22() {
+       sed -i 
's|https://cwiki.apache.org/VCLDOCS/|https://cwiki.apache.org/confluence/display/VCL/Using+VCL|'
 $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+       if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; exit 1; 
fi
+       sed -i 's|^\$blockNotifyUsers|#\$blockNotifyUsers|' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+       if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; exit 1; 
fi
+       sed -i '/^\$userlookupUsers = array(.*);/d' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+       if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; exit 1; 
fi
+       sed -i '/^\$userlookupUsers = array/,/);/d' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+       if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; exit 1; 
fi
+
+       if ! grep -q '$NOAUTH_HOMENAV' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; 
then
+               sed -i '/ENABLE_ITECSAUTH/a );' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \\t"Report a Problem" => "mailto:"; 
. HELPEMAIL,                ' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \\t"How to use VCL" => 
"https://cwiki.apache.org/confluence/display/VCL/Using+VCL";,' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \\t"What is VCL" => 
"http://vcl.apache.org/";,                  ' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a $NOAUTH_HOMENAV = array (           
                           ' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a #   where authentication method is 
selected when NOAUTH_HOMENAV is set to 1' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a # documentation links to display on 
login page and page' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q XMLRPCLOGGING $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("XMLRPCLOGGING", 1);' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a # boolean value of 0 or 1 to 
control logging of XMLRPC calls for auditing or debugging purposes; queries are 
logged to the xmlrpcLog table' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q QUERYLOGGING $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("QUERYLOGGING", 1);' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a # boolean value of 0 or 1 to 
control logging of non SELECT database queries for auditing or debugging 
purposes; queries are logged to the querylog table' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q 'define..NOAUTH_HOMENAV' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("NOAUTH_HOMENAV", 0);' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a # 0 = disables; 1 = enabled' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a #   where authentication method is 
selected' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a # boolean value of 0 or 1 to enable 
documentation links on login page and page' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q MAXSUBIMAGES $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("MAXSUBIMAGES", 5000);  // 
maximum allowed number for subimages in a config' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q MAXINITIALIMAGINGTIME 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("MAXINITIALIMAGINGTIME", 
720); // for imaging reservations, users will have at least this long as the 
max selectable duration' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q ALLOWADDSHIBUSERS $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; 
then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \                                // 
will be added to the database with the typoed userid' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \                                // 
a userid, there is no way to verify that it was entered incorrectly so the 
user' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \                                // 
privilege somewhere in the privilege tree. Note that if you enable this and 
typo' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \                                // 
through things such as adding a user to a user group or directly granting a 
user a' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \                                // 
set this to 1 to allow users be manually added to VCL before they have ever 
logged in' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \                                // 
also have LDAP set up (i.e. affiliation.shibonly = 1)' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("ALLOWADDSHIBUSERS", 0); // 
this is only related to using Shibboleth authentication for an affiliation that 
does not' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q SEMTIMEOUT $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("SEMTIMEOUT", "45");' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q DEFAULTLOCALE $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("DEFAULTLOCALE", "en_US");   
           // default locale for the site' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       sed -i '/ENABLE_ITECSAUTH/G' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+       if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; exit 1; 
fi
+}
+
+function confUpgradeFrom221() {
+       confUpgradeFrom22
+       sed -i "s/\$addUserFunc\[\$item\['affiliationid'\]\] = 
create_function('', 'return 0;');/\$addUserFunc[\$item['affiliationid']] = 
create_function('', 'return NULL;');/" $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+       if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; exit 1; 
fi
+       sed -i "s/\$updateUserFunc\[\$item\['affiliationid'\]\] = 
create_function('', 'return 0;');/\$updateUserFunc[\$item['affiliationid']] = 
create_function('', 'return NULL;');/" $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+       if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; exit 1; 
fi
+}
+
+function confUpgradeFrom222() {
+       confUpgradeFrom221
+}
+
+function confUpgradeFrom23() {
+       sed -i 
's|https://cwiki.apache.org/VCLDOCS/|https://cwiki.apache.org/confluence/display/VCL/Using+VCL|'
 $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+       if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; exit 1; 
fi
+
+       if ! grep -q '$NOAUTH_HOMENAV' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; 
then
+               sed -i '/ENABLE_ITECSAUTH/a );' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \\t"Report a Problem" => "mailto:"; 
. HELPEMAIL,                ' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \\t"How to use VCL" => 
"https://cwiki.apache.org/confluence/display/VCL/Using+VCL";,' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a \\t"What is VCL" => 
"http://vcl.apache.org/";,                  ' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a $NOAUTH_HOMENAV = array (           
                           ' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a #   where authentication method is 
selected when NOAUTH_HOMENAV is set to 1' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a # documentation links to display on 
login page and page' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q XMLRPCLOGGING $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("XMLRPCLOGGING", 1);' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a # boolean value of 0 or 1 to 
control logging of XMLRPC calls for auditing or debugging purposes; queries are 
logged to the xmlrpcLog table' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q QUERYLOGGING $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("QUERYLOGGING", 1);' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a # boolean value of 0 or 1 to 
control logging of non SELECT database queries for auditing or debugging 
purposes; queries are logged to the querylog table' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q 'define..NOAUTH_HOMENAV' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("NOAUTH_HOMENAV", 0);' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a # 0 = disables; 1 = enabled' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a #   where authentication method is 
selected' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a # boolean value of 0 or 1 to enable 
documentation links on login page and page' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q MAXSUBIMAGES $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("MAXSUBIMAGES", 5000);  // 
maximum allowed number for subimages in a config' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q MAXINITIALIMAGINGTIME 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("MAXINITIALIMAGINGTIME", 
720); // for imaging reservations, users will have at least this long as the 
max selectable duration' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       if ! grep -q SEMTIMEOUT $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php; then
+               sed -i '/ENABLE_ITECSAUTH/G' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+               sed -i '/ENABLE_ITECSAUTH/a define("SEMTIMEOUT", "45");' 
$WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+               if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; 
exit 1; fi
+       fi
+
+       sed -i '/ENABLE_ITECSAUTH/G' $WEB_PATH-$VCL_VERSION/.ht-inc/conf.php
+       if [ $? -ne 0 ]; then echo "Error: Failed to update conf.php"; exit 1; 
fi
+}
+
+function confUpgradeFrom231() {
+       confUpgradeFrom23
+}
+
+function confUpgradeFrom232() {
+       confUpgradeFrom23
+}
+
+# ------------------- download/validate arvhice ---------------------
+print_break
+cd $WORKPATH
+if [[ ! -f $ARCHIVE ]]; then
+       echo "Downloading VCL $VCL_VERSION..."
+       download_archive
+       validate_archive_sha1
+       if [ $? -ne 0 ]; then generic_error "failed to validate $ARCHIVE"; exit 
1; fi;
+       validate_archive_gpg
+       if [ $? -ne 0 ]; then generic_error "failed to validate $ARCHIVE"; exit 
1; fi;
+else
+       dir=`pwd`
+       echo "archive for $VCL_VERSION found at $dir/$ARCHIVE"
+       validate_archive_sha1
+       if [ $? -ne 0 ]; then
+               echo "failed to validate $ARCHIVE; downloading again..."
+               /bin/mv -f $ARCHIVE $ARCHIVE.old
+               download_archive
+               validate_archive_sha1
+               if [ $? -ne 0 ]; then generic_error "failed to validate 
$ARCHIVE"; exit 1; fi;
+               validate_archive_gpg
+               if [ $? -ne 0 ]; then generic_error "failed to validate 
$ARCHIVE"; exit 1; fi;
+       else
+               validate_archive_gpg
+               if [ $? -ne 0 ]; then generic_error "failed to validate 
$ARCHIVE"; exit 1; fi;
+       fi;
+fi
+
+# ------------------------ extract archive ---------------------------
+echo "Extracting $ARCHIVE"
+tar -xf $ARCHIVE
+if [ $? -ne 0 ]; then generic_error "failed to extract $ARCHIVE"; exit 1; fi;
+
+# ------------------- run install_perl_libs.pl ------------------------
+if [[ $DOMN -eq 1 ]]; then
+       print_break
+       echo "Installing Linux and PERL system requirements (this takes a 
while)"
+       sleep 1
+       yum -q -y install perl-CPAN
+       if [ $? -ne 0 ]; then echo "Error: Failed to install perl-CPAN"; exit 
1; fi;
+       perl apache-VCL-$VCL_VERSION/managementnode/bin/install_perl_libs.pl
+       rc=$?
+       if [ $rc -eq 2 ]; then
+               echo "License terms not accepted; aborting installation"
+               exit 2
+       elif [ $rc -ne 0 ]; then
+               generic_error "Failed to install system requirements"
+               exit 1
+       fi
+fi
+
+# ------------------------- stop httpd --------------------------------
+if [[ $DOWEB -eq 1 ]]; then
+       echo "Stopping httpd service..."
+       /sbin/service httpd stop
+       if [ $? -ne 0 ]; then generic_error "Failed to stop httpd service"; 
exit 1; fi;
+fi
+
+# ---------------------------- stop vcld ----------------------------
+if [[ $DOMN -eq 1 ]]; then
+       print_break
+       echo "Stopping vcld service..."
+       /sbin/service vcld stop
+       if [ $? -ne 0 ]; then generic_error "Failed to stop vcld service"; exit 
1; fi;
+fi
+
+# -------------------------- backup database -------------------------
+if [[ $DODB -eq 1 ]]; then
+       print_break
+       echo "Backing up $DB_NAME database..."
+       if [[ ! -x /bin/mysqldump && ! -x /usr/bin/mysqldump ]]; then
+               echo "mysqldump command not found; cannot backup database; 
exiting..."
+               exit 1
+       fi
+       if [[ $OLD_VERSION = "" ]]; then
+               mysqldump $DB_NAME > $WORKPATH/vcl-pre${VCL_VERSION}-backup.sql
+               if [ $? -ne 0 ]; then generic_error "Failed to create backup of 
$DB_NAME database"; exit 1; fi;
+               gzip $WORKPATH/vcl-pre${VCL_VERSION}-backup.sql
+       else
+               mysqldump $DB_NAME > $WORKPATH/vcl-${OLD_VERSION}-backup.sql
+               if [ $? -ne 0 ]; then generic_error "Failed to create backup of 
$DB_NAME database"; exit 1; fi;
+               gzip $WORKPATH/vcl-${OLD_VERSION}-backup.sql
+       fi
+fi
+
+# -------------------------- backup web code -------------------------
+if [[ $DOWEB -eq 1 ]]; then
+       print_break
+       echo "Backing up web code..."
+       tar czf $WORKPATH/web-${OLD_VERSION}-backup.tar.gz $WEB_PATH
+       if [ $? -ne 0 ]; then generic_error "Failed to create backup of web 
code at $WEB_PATH"; exit 1; fi;
+fi
+
+# -------------------------- backup web code -------------------------
+if [[ $DOMN -eq 1 ]]; then
+       echo "Backing up management node code..."
+       tar czf $WORKPATH/managmentnode-${OLD_VERSION}-backup.tar.gz $MN_PATH
+       if [ $? -ne 0 ]; then generic_error "Failed to create backup of 
management node code at $MN_PATH"; exit 1; fi;
+fi
+
+# -------------------------- install php -----------------------------
+if [[ $DOWEB -eq 1 ]]; then
+       print_break
+       echo "Ensuring required php components are installed..."
+       missing=
+       for pkg in php php-gd php-mysql php-xml php-xmlrpc php-ldap 
php-mbstring; do
+               alt=$(echo $pkg | sed 's/php/php53/')
+               if ! (rpm --quiet -q $pkg || rpm --quiet -q $alt); then
+                       missing="$missing $pkg"
+               fi
+               if rpm -qa | grep -q php53; then
+                       missing=$(echo $missing | sed 's/php/php53/g')
+               fi
+               if [[ $missing != "" ]]; then
+                       echo "yum -q -y install $missing"
+                       yum -q -y install $missing
+                       if [ $? -ne 0 ]; then generic_error "Failed to install 
php components"; exit 1;
+                       else echo "php components successfully installed"; fi
+               fi
+       done
+fi
+
+# ------------------------- copy web code in place -------------------------
+if [[ $DOWEB -eq 1 ]]; then
+       print_break
+       echo "Installing new VCL web code..."
+       /bin/cp -r $WORKPATH/apache-VCL-$VCL_VERSION/web/ 
${WEB_PATH}-$VCL_VERSION
+       if [ $? -ne 0 ]; then generic_error "Failed to install new VCL web 
code"; exit 1; fi;
+       chown apache ${WEB_PATH}-$VCL_VERSION/.ht-inc/maintenance
+fi
+
+# ---------------------------- configure web code --------------------------
+if [[ $DOWEB -eq 1 ]]; then
+       print_break
+       echo "Copying in web configuration files from previous version"
+       /bin/cp -f ${WEB_PATH}/.ht-inc/secrets.php 
${WEB_PATH}-$VCL_VERSION/.ht-inc/
+       if [ $? -ne 0 ]; then echo "Error: Failed to copy secrets.php"; exit 1; 
fi;
+       /bin/cp -f ${WEB_PATH}/.ht-inc/conf.php 
${WEB_PATH}-$VCL_VERSION/.ht-inc/
+       if [ $? -ne 0 ]; then echo "Error: Failed to copy conf.php"; exit 1; fi;
+
+       if [[ $OLD_VERSION = '2.2' ]]; then confUpgradeFrom22; fi
+       if [[ $OLD_VERSION = '2.2.1' ]]; then confUpgradeFrom221; fi
+       if [[ $OLD_VERSION = '2.2.2' ]]; then confUpgradeFrom222; fi
+       if [[ $OLD_VERSION = '2.3' ]]; then confUpgradeFrom23; fi
+       if [[ $OLD_VERSION = '2.3.1' ]]; then confUpgradeFrom231; fi
+       if [[ $OLD_VERSION = '2.3.2' ]]; then confUpgradeFrom232; fi
+
+       /bin/cp -f ${WEB_PATH}/.ht-inc/pubkey.pem 
${WEB_PATH}-$VCL_VERSION/.ht-inc/
+       if [ $? -ne 0 ]; then echo "Error: Failed to copy pubkey.pem"; exit 1; 
fi;
+       /bin/cp -f ${WEB_PATH}/.ht-inc/keys.pem 
${WEB_PATH}-$VCL_VERSION/.ht-inc/
+       if [ $? -ne 0 ]; then echo "Error: Failed to copy keys.pem"; exit 1; fi;
+fi
+
+# ---------------- copy management node code in place ------------------
+if [[ $DOMN -eq 1 ]]; then
+       print_break
+       echo "Installing management node components..."
+       if [[ ! -d ${MN_PATH}-$OLD_VERSION ]]; then
+               /bin/cp -r ${MN_PATH} ${MN_PATH}-$VCL_VERSION
+               if [ $? -ne 0 ]; then generic_error "Failed to install new VCL 
management node code (1)"; exit 1; fi;
+       fi
+       /bin/cp -r ${MN_PATH}-$OLD_VERSION ${MN_PATH}-$VCL_VERSION
+       /bin/cp -r $WORKPATH/apache-VCL-$VCL_VERSION/managementnode/* 
${MN_PATH}-$VCL_VERSION
+       if [ $? -ne 0 ]; then generic_error "Failed to install new VCL 
management node code (2)"; exit 1; fi;
+fi
+
+# -------------------- configure management node code ------------------
+if [[ $DOMN -eq 1 ]]; then
+       print_break
+       echo "Configuring vcld.conf..."
+
+       if [ $? -ne 0 ]; then echo "Error: Failed to configure vcld.conf"; exit 
1; fi
+fi
+
+# -------------------- rename old web code directory ---------------------
+if [[ $DOWEB -eq 1 ]]; then
+       if [[ ! -h $WEB_PATH && -d $WEB_PATH && -d ${WEB_PATH}-$OLD_VERSION ]]; 
then
+               print_break
+               echo "Moving ${WEB_PATH}-$OLD_VERSION to 
${WEB_PATH}-${OLD_VERSION}.old"
+               mv -f ${WEB_PATH}-$OLD_VERSION ${WEB_PATH}-${OLD_VERSION}.old
+               if [ $? -ne 0 ]; then echo "Error: Failed to move old web code 
(1)"; exit 1; fi
+       fi
+       if [[ ! -d ${WEB_PATH}-$OLD_VERSION ]]; then
+               print_break
+               echo "Moving ${WEB_PATH} to ${WEB_PATH}-$OLD_VERSION"
+               mv -f ${WEB_PATH} ${WEB_PATH}-$OLD_VERSION
+               if [ $? -ne 0 ]; then echo "Error: Failed to move old web code 
(2)"; exit 1; fi
+       fi
+fi
+
+# -------------- rename old management node code directory ---------------
+if [[ $DOMN -eq 1 ]]; then
+       if [[ ! -h $MN_PATH && -d $MN_PATH && -d ${MN_PATH}-$OLD_VERSION ]]; 
then
+               print_break
+               echo "Moving ${MN_PATH}-$OLD_VERSION to 
${MN_PATH}-${OLD_VERSION}.old"
+               mv -f ${MN_PATH}-$OLD_VERSION ${MN_PATH}-${OLD_VERSION}.old
+               if [ $? -ne 0 ]; then echo "Error: Failed to move old 
management node code (1)"; exit 1; fi
+       fi
+       if [[ ! -d ${MN_PATH}-$OLD_VERSION ]]; then
+               print_break
+               echo "Moving ${MN_PATH} to ${MN_PATH}-$OLD_VERSION"
+               mv -f ${MN_PATH} ${MN_PATH}-$OLD_VERSION
+               if [ $? -ne 0 ]; then echo "Error: Failed to move old 
management node code (2)"; exit 1; fi
+       fi
+fi
+
+# ---------------------- create/update web symlink -----------------------
+if [[ $DOWEB -eq 1 ]]; then
+       print_break
+       echo "Setting $WEB_PATH as a link to ${WEB_PATH}-$VCL_VERSION"
+       ln -n -s -f ${WEB_PATH}-$VCL_VERSION $WEB_PATH
+       if [ $? -ne 0 ]; then echo "Error: Failed to create/update link to 
${WEB_PATH}-$VCL_VERSION"; exit 1; fi
+fi
+
+# ---------------- create/update management node symlink -----------------
+if [[ $DOMN -eq 1 ]]; then
+       print_break
+       echo "Setting $MN_PATH as a link to ${MN_PATH}-$VCL_VERSION"
+       ln -n -s -f ${MN_PATH}-$VCL_VERSION $MN_PATH
+       if [ $? -ne 0 ]; then echo "Error: Failed to create/update link to 
${MN_PATH}-$VCL_VERSION"; exit 1; fi
+fi
+
+# ----------------- disabling web access to old web code -----------------
+if [[ $DOWEB -eq 1 ]]; then
+       print_break
+       echo "Disabling web access to ${WEB_PATH}-$OLD_VERSION"
+       if [[ -f ${WEB_PATH}-$OLD_VERSION/.htaccess ]]; then
+               mv -f ${WEB_PATH}-$OLD_VERSION/.htaccess 
${WEB_PATH}-$OLD_VERSION/.htaccess.preupgrade
+       fi
+       echo "Deny from all" > ${WEB_PATH}-$OLD_VERSION/.htaccess
+       if [ $? -ne 0 ]; then echo "Error: Failed to create new 
${WEB_PATH}-$OLD_VERSION/.htaccess file"; exit 1; fi
+fi
+
+# ------------------------ upgrade vcl database --------------------------
+if [[ $DODB -eq 1 ]]; then
+       print_break
+       echo "Upgrading VCL database..."
+       mysql $DB_NAME < $WORKPATH/apache-VCL-$VCL_VERSION/mysql/update-vcl.sql
+       if [ $? -ne 0 ]; then generic_error "Failed to upgrade VCL database"; 
exit 1; fi;
+fi
+
+# ------------------------- start httpd --------------------------------
+if [[ $DOWEB -eq 1 ]]; then
+       print_break
+       echo "Starting httpd service..."
+       /sbin/service httpd start
+       if [ $? -ne 0 ]; then generic_error "Failed to start httpd"; exit 1; fi;
+fi
+
+# ---------------------------- start vcld ----------------------------
+if [[ $DOMN -eq 1 ]]; then
+       print_break
+       echo "Starting vcld service..."
+       /sbin/service vcld stop &> /dev/null
+       sleep 1
+       /sbin/service vcld start
+       if [ $? -ne 0 ]; then echo "Error: Failed to start vcld service"; exit 
1; fi;
+fi
+
+echo ""
+if [[ $DOALL -eq 1 ]]; then
+       echo "VCL upgrade complete"
+elif [[ $DODB -eq 1 && $DOWEB -eq 1 ]]; then
+       echo "VCL upgrade of database and web components complete."
+elif [[ $DODB -eq 1 && $DOMN -eq 1 ]]; then
+        echo "VCL upgrade of database and management node components complete."
+elif [[ $DOWEB -eq 1 && $DOMN -eq 1 ]]; then
+        echo "VCL upgrade of web and management node components complete."
+elif [[ $DODB -eq 1 ]]; then
+        echo "VCL upgrade of database components complete."
+elif [[ $DOWEB -eq 1 ]]; then
+        echo "VCL upgrade of web components complete."
+elif [[ $DOMN -eq 1 ]]; then
+        echo "VCL upgrade of management node components complete."
+fi
+echo ""

Propchange: release/vcl/vcl-upgrade-2.4.1.sh
------------------------------------------------------------------------------
    svn:executable = *

Added: release/vcl/vcl-upgrade-2.4.1.sh.asc
==============================================================================
Binary file - no diff available.

Propchange: release/vcl/vcl-upgrade-2.4.1.sh.asc
------------------------------------------------------------------------------
    svn:mime-type = application/pgp-signature

Added: release/vcl/vcl-upgrade-2.4.1.sh.sha1
==============================================================================
--- release/vcl/vcl-upgrade-2.4.1.sh.sha1 (added)
+++ release/vcl/vcl-upgrade-2.4.1.sh.sha1 Thu Mar 26 13:51:00 2015
@@ -0,0 +1 @@
+cbd97044d2f3fd7d68b05895ac524864da35e02e  vcl-upgrade-2.4.1.sh


Reply via email to