Montar Trac y Subversion
Una vez descargados los paquetes de trac (incluyendo tracd) y subversion y con la siguiente configuracion:
- Servidor Trac y Subversion: 84.124.64.65
- Directorio del repositorio en 84.124.64.65: /home/raul/subversion
- Directorio del Trac en 84.124.64.65: /home/raul/trac
- Paquete a subir al repositorio: kehat.contenido
- Subversion:
- En el servidor:
svnadmin create /home/raul/subversion/kehat.contenido
cd /home/raul/subversion/kehat.contenido/conf
Editar svnserv.conf y descomentar: anon-access=read; auth-access=write; password-db=passwd; realm=kehat.contenido
Editar passwd y poner las claves
- En local:
cd a la carpeta donde están los archivos
svn co svn://84.124.64.65/home/raul/subversion/kehat.contenido .
svn add./*
svn ci -m "Import Inicial" ./*
- Trac:
- En el servidor:
trac-admin /home/raul/trac/kehat.contenido initenv
y poner Project Name=kehat.contenido; Path to repository=/home/raul/subversion/kehat.contenido
Editar /etc/sysconfig/tracd y añadir a PROJECT: /home/raul/trac/kehat.contenido
Reiniciar trac (/etc/init.d/tracd restart)
- En local:
La dirección es http://84.124.64.65:8080
Para la autenticación en trac:
- En /home/raul/trac crear trac-digest.py con
from optparse import OptionParser
# The md5 module is deprecated in Python 2.5
try:
from hashlib import md5
except ImportError:
from md5 import md5
realm = 'trac'
# build the options
usage = "usage: %prog [options]"
parser = OptionParser(usage=usage)
parser.add_option("-u", "--username",action="store", dest="username", type = "string",
help="the username for whom to generate a password")
parser.add_option("-p", "--password",action="store", dest="password", type = "string",
help="the password to use")
parser.add_option("-r", "--realm",action="store", dest="realm", type = "string",
help="the realm in which to create the digest")
(options, args) = parser.parse_args()
# check options
if (options.username is None) or (options.password is None):
parser.error("You must supply both the username and password")
if (options.realm is not None):
realm = options.realm
# Generate the string to enter into the htdigest file
kd = lambda x: md5(':'.join(x)).hexdigest()
print ':'.join((options.username, realm, kd([options.username, realm, options.password])))
- Crear el usuario con:
python trac-digest.py -u raul -p barracuda >> ./digest.txt
- En /etc/sysconfig/tracd:
#see http://projects.edgewall.com/trac/wiki/TracStandalone
#
# PORT : port to be used by tracd ( option -p )
PORT=8080
# AUTH : file to use for authentication
# format : project,digestfile,realm
# you can separate the various project with a space
# AUTH="project1,digestfile1,realm1 project2,digestfile2,realm2 "
AUTH=kehat.policy,/home/raul/trac/digest.txt,trac
# PROJECT : list of project to serve, you can place more than one project.
# PROJECT="/path/to/project1 /path/to/project2"
PROJECT="/home/raul/trac/fincas /home/raul/trac/kehat.contenido
/home/raul/trac/kehat.skin /home/raul/trac/kehat.policy"
- Reiniciar tracd