Add the Service to CVS - OPTIONAL. These steps take an existing OpenACS directory and add it to a CVS repository.
Create and set permissions on a subdirectory in the local cvs repository.
[root root]#mkdir /cvsroot/$OPENACS_SERVICE_NAME
[root root]#chown $OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME /cvsroot/$OPENACS_SERVICE_NAME
[root root]# mkdir /cvsroot/$OPENACS_SERVICE_NAME chown $OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME /cvsroot/$OPENACS_SERVICE_NAME
Add the repository location to the user environment. On some systems, you may get better results with .bash_profile instead of .bashrc.
[root root]#su - $OPENACS_SERVICE_NAME
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$emacs .bashrc
Put this string into /home/$OPENACS_SERVICE_NAME/.bashrc
:
export CVSROOT=/cvsroot
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ exit
logout
[root root]#
Import all files into cvs. In order to work on
files with source control, the files must be checked out
from cvs. So we will import, move aside, and then check
out all of the files. In the cvs import command,
$OPENACS_SERVICE_NAME
refers to the cvs repository to use; it uses the CVSROOT
plus this string,
i.e.
/cvsroot/$OPENACS_SERVICE_NAME
.
"OpenACS" is the vendor tag, and "HEAD" is the
release tag. These tags will be useful in upgrading and
branching. -m sets the version comment.
[root root]#su - $OPENACS_SERVICE_NAME
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$cd /var/lib/aolserver/$OPENACS_SERVICE_NAME
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$cvs import -m "initial install" $OPENACS_SERVICE_NAME OpenACS HEAD
N $OPENACS_SERVICE_NAME/license.txt N $OPENACS_SERVICE_NAME/readme.txt (many lines omitted) N $OPENACS_SERVICE_NAME/www/SYSTEM/flush-memoized-statement.tcl No conflicts created by this import [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ exit [root root]# su - $OPENACS_SERVICE_NAME cd /var/lib/aolserver/$OPENACS_SERVICE_NAME cvs import -m "initial install" $OPENACS_SERVICE_NAME OpenACS HEAD exit
Move the original directory to a temporary location, and check out the cvs repository in its place.
[root root]#mv /var/lib/aolserver/$OPENACS_SERVICE_NAME /var/tmp
[root root]#mkdir /var/lib/aolserver/$OPENACS_SERVICE_NAME
[root root]#chown $OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME /var/lib/aolserver/$OPENACS_SERVICE_NAME
[root root]#su - $OPENACS_SERVICE_NAME
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$cd /var/lib/aolserver
[$OPENACS_SERVICE_NAME aolserver]$cvs checkout $OPENACS_SERVICE_NAME
cvs checkout: Updating $OPENACS_SERVICE_NAME U $OPENACS_SERVICE_NAME/license.txt (many lines omitted) U $OPENACS_SERVICE_NAME/www/SYSTEM/dbtest.tcl U $OPENACS_SERVICE_NAME/www/SYSTEM/flush-memoized-statement.tcl [$OPENACS_SERVICE_NAME aolserver]$exit
logout [root root]# mv /var/lib/aolserver/$OPENACS_SERVICE_NAME /var/tmp mkdir /var/lib/aolserver/$OPENACS_SERVICE_NAME chown $OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME /var/lib/aolserver/$OPENACS_SERVICE_NAME su - $OPENACS_SERVICE_NAME cd /var/lib/aolserver cvs checkout $OPENACS_SERVICE_NAME exit
If the service starts correctly, come back and remove the temporary copy of the uploaded files.