All pastes #492522 Raw Edit

Miscellany

public shellscript v1 · immutable
·published 2007-05-17 07:18 UTC
rendered paste body
#!/bin/bash# Usage Requirementsif [ -z "$2" ]then  echo "Usage:"  echo "newproject.sh <project_name> \"user1 user2 user3\""  echo "Required:"  echo "Param 1: project name ( quoted if spaces are present )"  echo "Param 2: admin users all in quotes, space delimited"  exit -1fi# SETUP# -- PermissionsCHOWN_USER_GROUP=www-data:root# -- SVN SetupSVN_DIR=/var/svnSVN_FS_TYPE=fsfsSVN_URL=file://$SVN_DIR# -- TRAC SetupTRAC_DIR=/var/tracTRAC_SQL_CONNECTION=sqlite:$_TRAC_DIR/db/trac.dbTRAC_TEMPLATE_DIR=/usr/share/trac/templatesTRAC_ADMINS = $2# ---- TRAC PLUGINSTRAC_PLUGINS[1]="tramplugin.* = disabled"TRAC_PLUGINS[2]="webadmin.* = enabled"#TRAC_PLUGINS[X]="plugin=enabled/disabled"# --------------------- You should not have to modify below this line ----------------------------# Create the SVN repository.cd $SVN_DIRsvnadmin create $1 --fs-type $SVN_FS_TYPEchown -R $CHOWN_USER_GROUP $1# Create the trac env, and link with svn repo.cd $TRAC_DIRtrac-admin $1 initenv $1 $TRAC_SQL_CONNECTION $SVN_DIR/$1 $TRAC_TEMPLATE_DIRchown -R $CHOWN_USER_GROUP $1# Remove anonymous access from the trac project.trac-admin $1 permission remove anonymous LOG_VIEW FILE_VIEW WIKI_VIEW WIKI_CREATE WIKI_MODIFY SEARCH_VIEW REPORT_VIEW REPORT_SQL_VIEW TICKET_VIEW TICKET_CREATE TICKET_MODIFY BROWSER_VIEW TIMELINE_VIEW CHANGESET_VIEW ROADMAP_VIEW MILESTONE_VIEW# Add default TRAC_ADMIN users.for user in ${TRAC_ADMINS[@]}	do		trac-admin $1 permission add $user TRAC_ADMINdone# Add the components to the trac.iniecho "" >> $TRAC_DIR/$1/conf/trac.iniecho "[components]" >> $TRAC_DIR/$1/conf/trac.inifor plugin in ${TRAC_PLUGINS[@]}	do		echo "$plugin" >> $TRAC_DIR/$1/conf/trac.inidone# Create the Initial Repository Structuresvn mkdir --username michael -m "Initial Repository Structure" \$SVN_URL/svn/$1/branches \$SVN_URL/svn/$1/tags \$SVN_URL/svn/$1/trunk \$SVN_URL/svn/$1/vendor# End of scriptexit