Project Creation
The script /data/management/bs-admin.py creates and manages BeaverSource? projects. It is an abstraction of trac-admin functionality, additionally creating a PostGRES account, SVN repository, and performing initial setup of users, hook scripts, and Trac plugins. Note that your working directory must be /data/management to use this script (ticket:14).
The simplest case,
./bs-admin.py --create testo
creates a new empty Trac instance at http://beaversource.oregonstate.edu/projects/testo and an svn repository at https://code.oregonstate.edu/svn/testo. No users are granted access to either location. Several Trac plugins are pre-configured, as are several SVN repository hooks.
A more useful invocation would be:
./bs-admin.py --create --trac-name "College of Testo Development Area" --users hopsonro,morgan,vollmerk testo
which creates the svn repository and trac instance, gives Trac the descriptive name "College of Testo Development Area" and adds the users hopsonro, morgan, and vollmerk as TRAC_ADMIN users. Note the TRAC_ADMIN permission is needed for SVN commit access.
Other options supported by bs-admin.py:
--trac-desc "description" Description displayed in the project list --trac-footer "footer text" Small bit of text displayed in the footer of the trac instance
Project Cleanup
Again, using bs-admin.py:
./bs-admin.py --destroy testo
This operation will remove the trac instance, and keep a temporary copy of the SVN repository.
Or supposing a project needs to be renamed:
./bs-admin.py --rename testo newtesto
This relocated the trac instance and the SVN repository.
Important Filesystem Locations
/data/management/
Project management and creation scripts.
/data/master-svn/
Template for new SVN repositories. Contains:
/data/master-svn/hooks/
Any hooks defined in this directory structure are added to new SVN repositories. Note that the hook scripts are not copied; they are invoked from this location with the standard SVN hook arguments. See BsSvnHooks? for details about the current set of hook scripts.
/data/master-svn/initial-data/
Contains a file with an initial set of SVN data loaded into each project. Trac throws errors when it sees a completely empty repository.
/data/master-trac
Template data for new Trac instances.
/usr/lib/python2.4/site-packages
Plugins in this system-wide directory are available to all trac instances. See BsTracPlugins for details about the current set of Trac plugins.
/data/svn
SVN repositories for all projects. These are acessible via HTTPS/DAV at:
https://code.oregonstate.edu/svn/<projectname>/as well as through Trac's own repository browser.
/data/trac
Trac Instances. These are accessible at:
http://beaversource.oregonstate.edu/projects/<projectname>/

