Index: openacs-4/etc/install/README =================================================================== RCS file: /usr/local/cvsroot/openacs-4/etc/install/README,v diff -u -r1.2 -r1.3 --- openacs-4/etc/install/README 5 Sep 2003 10:23:08 -0000 1.2 +++ openacs-4/etc/install/README 12 Oct 2003 08:31:41 -0000 1.3 @@ -1,98 +1,72 @@ -OpenACS/dotLRN automated install script +OpenACS and .LRN automated install and test scripts -Prerequisites: +*** Prerequisites in brief tclwebtest aolserver oracle or postgresql +For oracle a tablespace with same name as db user must exist user named service0 +root access to server see /packages/acs-core-docs/www/index.html for more documentation about installing OpenACS and its prerequisites -Quick Guide +*** Quick Guide edit config.tcl +su - ./install.sh By default, this will 1) stop any OpenACS service supervised at /var/lib/svscan/service0 2) drop the database service0 if it exists - 3) update or create a CVS HEAD checkout of OpenACS at + 3) create a CVS HEAD checkout of OpenACS at /var/lib/aolserver/service0 4) create the database service0 5) install OpenACS, including configuring the web-driven pages, to http://localhost:8000 -*** Before running install.sh script please check that: +The install.sh script can also be used to perform a full .LRN test +data setup, or to only perform a cvs checkout, or only recreate the +database. Invoke install.sh --help to see command line switches. -0) If you already have a server running that is to be recreated - move +*** Prerequisites + +1) If you already have a server running that is to be recreated - move away and save any local changes (patches) that you have made to the -source code. The whole source code tree of the server will be moved -away to temporary storage and deleted on the next recreation. Any -patches that you want to apply on recreation should be executed by a -script specified in the config file (see below) as -post_checkout_script. This script will be executed after checkout is -completed. Per default there is no such script but remember to use -such a script if you wish to copy for example a log directory and -AOLServer config file into the source tree of the server (to avoid -having to do this I usually keep my AOLServer config and log files -outside the source tree, i.e. under /usr/local/aolserver rather than - under /web/server_name). If you do keep such files in the server tree -you should save them before the checkout with the pre_checkout_script -(specify path in config file), otherwise any changes to the AOLServer -config file will be lost as the whole server tree is moved away for a -new checkout from CVS. +source code. If the do_checkout parameter is set to true the whole +source code tree of the server will be moved away to temporary storage +and deleted on the next recreation. Any patches that you want to apply +on recreation should be executed by a script specified in the config +file (see below) as post_checkout_script. This script will be executed +after checkout is completed. If you keep AOLserver config file and log +files under the server root dir you might want to save them before the +checkout with the pre_checkout_script (specify path in config file), +otherwise any changes to the AOLServer config file will be lost as the +whole server tree is moved away for a new checkout from CVS. -1) A tablespace must exist with the same name as the oracle user of +2) A tablespace must exist with the same name as the oracle user of the server. The oracle recreate script uses statements from http://www.pinds.com/acs-tips/oracle-statements. Make sure you are not connected to the database user that the server uses so that that user can be dropped (i.e. log out of any sqlplus or psql sessions you might have). -2) Use config.tcl.in (don't edit this file, it's just a template) to create +3) Use the config template config.tcl to create a server specific installation config file. Per default install.sh will use the file config.tcl in the same directory but you can specify any config file on the command line with the switch --config-file. -3) Make sure an AOLServer config file is prepared. You can use -/etc/config.tcl as a template you are probably better off using any -existing config files on your server as templates instead. As far as -I know TCLWebTest cannot handle port numbers in URLs so try -to avoid those (use port 80 or use virtual hosting). This is a known tcl bug: +4) Make sure an AOLServer config file is prepared. You can use +/etc/config.tcl as a template. -http://sourceforge.net/tracker/index.php?func=detail&aid=452217&group_id=10894&atid=110894 - -that is supposedly fixed in some recent version of TCL. - -4) If you are using supervise (svc) to manage your server you need - to create a run script and specify its path in - the variable run_script in the config file. You may use run.in - as a template. Per default the file run in the same directory as - install.sh will be used. - 5) The server you are to create/recreate must be under supervise (i.e. ln -s /web/dotlrn-test /service/dotlrn-test). 6) Make sure you have root access since you must run install.sh as root. -7) Fetch a fresh checkout from CVS of TclWebTest (see http://tclwebtest.sourceforge.net) and -specify the directory the tclwebtest executable resides in in your config file (the default config file is config.tcl). - -*** The install.sh script roughly does the following by default - (there are switches, use install.sh --help): - -1) Takes down your old server, moves away the old source code (be -careful so you don't loose local changes) and checks out new sources. - -2) Recreates the database user. - -3) Installs OpenACS and .LRN over HTTP using TclWebTest. - -4) Sets up a few .LRN users and classes with TclWebTest - -When the script finishes it brings the new server up so that you can -login with the site-wide admin user. There are switches to use PostgreSQL -rather than Oracle and to only install OpenACS, invoke -install.sh --help for details. +7) Fetch a fresh checkout from CVS of TclWebTest (see +http://tclwebtest.sourceforge.net) and specify the directory the +tclwebtest executable resides in in your config file (the default +config file is config.tcl).