Author: jfthomps
Date: Mon May 21 18:46:15 2012
New Revision: 1341140

URL: http://svn.apache.org/viewvc?rev=1341140&view=rev
Log:
VCL-576
Finalizing for 2.3 release

UPGRADE:
changed formatting so that (almost all) lines wrap at 80 characters, not 
including ones that need to be copy/pasted
added 2.2 to the releases that need to have CREATE TEMPORARY TABLES granted
split out how to update conf.php to separate sections for each release upgraded 
from

Modified:
    incubator/vcl/trunk/UPGRADE

Modified: incubator/vcl/trunk/UPGRADE
URL: 
http://svn.apache.org/viewvc/incubator/vcl/trunk/UPGRADE?rev=1341140&r1=1341139&r2=1341140&view=diff
==============================================================================
--- incubator/vcl/trunk/UPGRADE (original)
+++ incubator/vcl/trunk/UPGRADE Mon May 21 18:46:15 2012
@@ -1,6 +1,6 @@
 This file explains how to upgrade an existing install of Apache VCL
 to Apache VCL 2.3. It assumed that you extracted the release archive
-to /root/apache-VCL-23-incubating
+to /root/apache-VCL-2.3-incubating
 
 The basic steps that will be performed:
 
@@ -17,7 +17,7 @@ The basic steps that will be performed:
 1. Shutdown httpd and vcld services
 
    service httpd stop
-       service vcld stop
+   service vcld stop
 
 2. Create a backup of vcl database
 
@@ -33,7 +33,7 @@ This step updates the mysql schema.
    cd /root/apache-VCL-2.3-incubating
    mysql vcl < mysql/update-vcl.sql
 
-4. FOR UPGRADING from 2.1 ONLY (skip to step 5 if upgrading from 2.2.1) 
+4. FOR UPGRADING from 2.1 and 2.2 ONLY (skip to step 5 if upgrading from 
2.2.1) 
 
 Grant CREATE TEMPORARY TABLES to mysql user
 
@@ -47,8 +47,8 @@ $vclhost and $vclusername. The secrets.p
 $vclhost = 'localhost';
 $vcluser = 'vcluser';
 
-Then, you need to issue the grant command to mysql. Using the values from above
-as examples, connect to mysql and then issue the grant command:
+Then, you need to issue the grant command to mysql. Using the values from
+above as examples, connect to mysql and then issue the grant command:
 
 mysql
 GRANT CREATE TEMPORARY TABLES ON `vcl`.* TO 'vcluser'@'localhost';
@@ -56,92 +56,193 @@ exit
 
 5. Update web code
 
-This step we will move the existing web directory out of the way, so we can 
copy
-in the new web code base. After copying in the new code, we will migrate your
-configuration changes. These instructions assume that you installed the vcl web
-code at /var/www/html/vcl. If you installed it elsewhere, replace
+This step we will move the existing web directory out of the way, so we can
+copy in the new web code base. After copying in the new code, we will migrate
+your configuration changes. These instructions assume that you installed the
+vcl web code at /var/www/html/vcl. If you installed it elsewhere, replace
 /var/www/html/vcl with your vcl web root.
 
-   a. copy your old code out of the way
+   a. move your old code out of the way
 
       cd /var/www/html
-               mv vcl ~/vcl-pre2.3_web
+      mv vcl ~/vcl-pre2.3_web
 
-       b. copy the new code in place
+   b. copy the new code in place
 
-          cd /root/apache-VCL-2.3-incubating
-               cp -r web /var/www/html/vcl
+      cd /root/apache-VCL-2.3-incubating
+      cp -r web /var/www/html/vcl
 
-       c. copy your config files from the previous version:
+   c. copy your config files from the previous version:
 
-          cd ~/vcl-pre2.3_web/.ht-inc
-               cp conf.php secrets.php pubkey.pem keys.pem 
/var/www/html/vcl/.ht-inc
+      cd ~/vcl-pre2.3_web/.ht-inc
+      cp conf.php secrets.php pubkey.pem keys.pem /var/www/html/vcl/.ht-inc
 
-       d. make /var/www/html/vcl/.ht-inc/maintenance writable by
-               the web server - if httpd on your server is running as the user 
apache:
+   d. make /var/www/html/vcl/.ht-inc/maintenance writable by
+      the web server - if httpd on your server is running as the user apache:
 
-          chown apache /var/www/html/vcl/.ht-inc/maintenance
+      chown apache /var/www/html/vcl/.ht-inc/maintenance
 
-       e. (upgrade from 2.1 only) add the following new entries to conf.php - 
You can copy
-               them in from .ht-inc/conf-default.php. Descriptions of each 
item can also be
-               found in conf-default.php
+   e. update conf.php
 
-          * date_default_timezone_set('America/New_York');
-               * $blockNotifyUsers = "adminu...@example.org";
-               * define("SCHEDULER_ALLOCATE_RANDOM_COMPUTER", 0);
-               * define("DOCUMENTATIONURL", 
"https://cwiki.apache.org/VCLDOCS/";);
-               * define("USEFILTERINGSELECT", 1);
-               * define("FILTERINGSELECTTHRESHOLD", 1000);
-               * define("DEFAULTTHEME", 'default');
+      upgrading from 2.2.1:
 
-       f. run copydojocss.sh 
-               cd to /var/www/html/vcl/themes directory
-               cd /var/www/html/vcl/themes 
-               ./copydojocss.sh default
+         * add the following defines:
 
-6. Restart httpd service
+           define("DEFAULTLOCALE", "en_US");
+           define("ALLOWADDSHIBUSERS", 0);
 
-       service httpd start
+         * remove the following arrays:
 
-       * Confirm you can access the VCL portal before continuing.
+           $blockNotifyUsers - This has been replace by a user group permission
+           that controls who can manage block allocations globally or for a
+           specific affiliation. It can be granted to any user group under
+           Privileges->Additional User Permissions->Manage Block Allocations
 
-7. Update management node code
+           $userlookupUsers  - This has been replace by a user group permission
+           that controls who can look up users globally or for a specific
+           affiliation.  It can be granted to any user group under
+           Privileges->Additional User Permissions->User Lookup
+
+         * Add the following two keys to each entry you have for LDAP
+           authentication in the $authMechs array. Descriptions of the items
+           can be found in the 2.3 conf-default.php file.
+
+           "lookupuserbeforeauth" => 0,
+           "lookupuserfield" => '',
+
+         * change the following two lines for local authentication from
+
+           $addUserFunc[$item['affiliationid']] = create_function('', 'return 
0;');
+                    $updateUserFunc[$item['affiliationid']] = 
create_function('', 'return 0;');
+
+           to
+
+           $addUserFunc[$item['affiliationid']] = create_function('', 'return 
NULL;');
+                    $updateUserFunc[$item['affiliationid']] = 
create_function('', 'return NULL;');
+
+         * remove the three commented lines toward the bottom that talk about
+           adding an entry to $addUserFund for Shibboleth authenticated
+           affiliations (# any affiliation that is shibboleth...)
+
+
+      upgrading from 2.2:
+
+         * add the following defines:
+
+           define("DEFAULTLOCALE", "en_US");
+           define("ALLOWADDSHIBUSERS", 0);
+
+         * remove the following arrays:
+
+           $blockNotifyUsers - This has been replace by a user group permission
+           that controls who can manage block allocations globally or for a
+           specific affiliation. It can be granted to any user group under
+           Privileges->Additional User Permissions->Manage Block Allocations
 
-This step will move the existing vcl code base out of the way, so we can 
cleanly
-copy in the new management node code.
+           $userlookupUsers  - This has been replace by a user group permission
+           that controls who can look up users globally or for a specific
+           affiliation.  It can be granted to any user group under
+           Privileges->Additional User Permissions->User Lookup
 
-       a. Copy the existing management node code base to a backup location
+         * Add the following two keys to each entry you have for LDAP
+           authentication in the $authMechs array. Descriptions of the items
+           can be found in the 2.3 conf-default.php file.
+
+           "lookupuserbeforeauth" => 0,
+           "lookupuserfield" => '',
+
+         * Remove all of these arrays:
+
+           $affilValFunc
+           $affilValFuncArgs
+           $addUserFunc
+           $addUserFuncArgs
+           $updateUserFunc
+           $updateUserFuncArgs
+
+         * Add the following code:
+
+           $affilValFunc = array();
+           $affilValFuncArgs = array();
+           $addUserFunc = array();
+           $addUserFuncArgs = array();
+           $updateUserFunc = array();
+           $updateUserFuncArgs = array();
+           foreach($authMechs as $key => $item) {
+              if($item['type'] == 'ldap') {
+                 $affilValFunc[$item['affiliationid']] = 'validateLDAPUser';
+                 $affilValFuncArgs[$item['affiliationid']] = $key;
+                 $addUserFunc[$item['affiliationid']] = 'addLDAPUser';
+                 $addUserFuncArgs[$item['affiliationid']] = $key;
+                 $updateUserFunc[$item['affiliationid']] = 'updateLDAPUser';
+                 $updateUserFuncArgs[$item['affiliationid']] = $key;
+              }
+              elseif($item['type'] == 'local') {
+                 $affilValFunc[$item['affiliationid']] = create_function('', 
'return 0;');
+                 $addUserFunc[$item['affiliationid']] = create_function('', 
'return NULL;');
+                 $updateUserFunc[$item['affiliationid']] = create_function('', 
'return NULL;');
+              }
+           }
+
+      upgrading from 2.1:
+
+         If upgrading from 2.1, it is easier to start with a fresh copy of
+         conf-default.php from 2.3 and then apply your changes to it again.
+         If you are using LDAP authentication, you can copy all entries from
+         $authMech out of your 2.1 conf.php file into your 2.3 conf.php file.
+         However, note that you will need to add the following two additional
+         keys to each entry.  A description of these keys can be found in the
+         2.3 conf-default.php file.
+
+         "lookupuserbeforeauth" => 0,
+         "lookupuserfield" => '',
+
+6. Restart httpd service
+
+   service httpd start
+
+   * Confirm you can access the VCL portal before continuing.
+
+7. Update management node code
 
-               cd <your vcl MN code root path>
-               ie. cd /usr/local/
-               cp -r vcl ~/vcl-pre2.3_managementnode
-
-       b. Copy in the 2.3 code base to /usr/local, copying in should preserve 
any
-       drivers or other files you've added.
-
-               /bin/cp -r /root/apache-VCL-2.3-incubating/managementnode/* 
/usr/local/vcl
-
-       c. (upgrading from 2.1 only) Make changes related to vcld.conf settings
-
-          * Open VCL web interface
-               * Go to Management Nodes
-               * Select Edit Management Node Information
-               * Select Edit.
-               * Set any relevant fields:
-               * SysAdmin Email Address(es) - comma delimited list of vcl 
admin email
-                 addresses
-               * Address for Shadow Emails - a shared mail box, optional it 
receives
-                 email of all notifications
-               * Public NIC configuration method - Defines what type of NIC 
configuration
-                 is used, options are dynamic DHCP, Manual DHCP, or static
-               * End Node SSH Identity Key Files
-
-       d. Run install_perl_libs.pl to update the perl dependencies(This will 
take a few minutes.)
-               
-               /usr/local/vcl/bin/install_perl_libs.pl
+This step will make a backup copy of the installed vcl code base and then copy
+the new code over the existing code to preserve any drivers or other files
+you've added.
+
+   a. Copy the existing management node code base to a backup location
+
+      cd <your vcl MN code root path>
+      ie. cd /usr/local/
+      cp -r vcl ~/vcl-pre2.3_managementnode
+
+   b. Copy in the 2.3 code base to /usr/local, copying in should preserve any
+      drivers or other files you've added.
+
+      /bin/cp -r /root/apache-VCL-2.3-incubating/managementnode/* 
/usr/local/vcl
+
+   c. (upgrading from 2.1 only) Make changes related to vcld.conf settings
+
+      * Open VCL web interface
+      * Go to Management Nodes
+      * Select Edit Management Node Information
+      * Select Edit.
+      * Set any relevant fields:
+      * SysAdmin Email Address(es) - comma delimited list of vcl admin email
+        addresses
+      * Address for Shadow Emails - a shared mail box, optional it receives
+        email of all notifications
+      * Public NIC configuration method - Defines what type of NIC
+        configuration is used, options are dynamic DHCP, Manual DHCP, or
+        static
+      * End Node SSH Identity Key Files
+
+   d. Run install_perl_libs.pl to update the perl dependencies (this will take
+      a few minutes.)
+      
+      /usr/local/vcl/bin/install_perl_libs.pl
 
 8. Restart vcld service
 
-       service vcld start
+   service vcld start
 
-       * Check the /var/log/vcld.log file to confirm vcld is working. 
+   * Check the /var/log/vcld.log file to confirm vcld is working. 


Reply via email to