Instalación dun sistema Trac con Subversion: Diferenzas entre revisións
Liña 51: | Liña 51: | ||
;SvntoTarGz.sh: Este script se chama de xeito automático cando no comentario dun ''commit'' de subversion se indica #RELEASE(''version''), e crea un ficheiro ''.tar.gz'' con firmas ''md5'' e ''sha1''. O nome dos ficheiros e firmas será '''proxecto.''version''.tar.gz''', '''proxecto.''version''.md5''' e '''proxecto.''version''.sha1'''. Tamén manten os enlaces simbólicos ''latestsource'' e ''latestmd5'' apuntando aos últimos ficheiros xerados. |
;SvntoTarGz.sh: Este script se chama de xeito automático cando no comentario dun ''commit'' de subversion se indica #RELEASE(''version''), e crea un ficheiro ''.tar.gz'' con firmas ''md5'' e ''sha1''. O nome dos ficheiros e firmas será '''proxecto.''version''.tar.gz''', '''proxecto.''version''.md5''' e '''proxecto.''version''.sha1'''. Tamén manten os enlaces simbólicos ''latestsource'' e ''latestmd5'' apuntando aos últimos ficheiros xerados. |
||
;maketracrepo.sh:Este script se encarga de crear novos repositorios con toda a infraestructura necesaria. A url de acceso será en ''http://virhost.virdomain/nomerepo'', e se chama do seguinte modo: |
|||
<source lang='bash'> |
|||
maketracrepo.sh nomerepo [adminuser] [passuser] |
|||
</source> |
|||
::Si non se indica ''adminuser'' e ''passuser'', se utilizará o usuario e password indicada en ''configure.sh'' |
|||
== Instalación == |
== Instalación == |
||
=== Trac e Subversion === |
=== Trac e Subversion === |
Revisión como estaba o 23 de xullo de 2014 ás 11:18
Introducción
Trac é unha interface web para sistemas de control de versións como git ou subversion e un xestor de incidencias, documentación wiki sobre o proxecto e xestor de desenvolvemento mediante hitos ou obxectivos. Con todo esto, é unha ferramenta de desenvolvemento colaborativo moi potente e de fácil uso, permitindo aos usuarios ver o código fonte dos proxectos e os seus cambios.
Instalaremos Trac en un sistema Debian Jessie, e automatizaremos no posible a creación de proxectos e a descarga dos mesmos dende o propio interface web.
Subversion é un sistema de control de versións que habilita a colaboración na elaboración de proxectos, levando un rexistro de cambios e permitindo a solución dos conflictos que poidan xurdir na edición simultánea. Aínda que git se está a impoñer hoxe en día como o sistema de control de versións dominante, subversion é aínda ampliamente utilizado e moi axeitado para a maior parte de proxectos.
Estructura
A estructura a empregar no noso sistema de desenvolvemento a partir do raíz da súa instalación, que poderá ser calqueira, será a seguinte:
[dir] scripts
configure.sh
install.sh
SvntoTarGz.sh
maketracrepo.sh
index.html
apache_config.conf
logo.jpg
post-commit
post-repvprop-change
trac.fcgi
[dir] downloads
[dir] proxecto_A
[dir] proxecto_B
...
[dir] trac
[dir] common
[dir] htdocs
[dir] site
[dir] common
[dir] trac_site_proxecto_A
[dir] trac_site_proxecto_B
...
[dir] svn_repo_proxecto_A
[dir] svn_repo_proxecto_B
...
A carpeta scripts almacenará os scripts para a automatización da creación de novos proxectos e das descargas asociadas. Os ficheiros e o seu cometido son os seguintes:
- configure.sh
- Almacena os valores de entorno da instalación do sitio para os proxectos. Por exemplo, no caso do IES de Rodeira:
TITLE="Trac, Forxa de Software"
REPOUSER="xavi"
REPOPATH="/home/xavi/repos"
VIRHOST="repos"
VIRDOMAIN="iesrodeira.com"
DEFAULTUSER="admin"
DEFAULTPASS="mypass"
- SvntoTarGz.sh
- Este script se chama de xeito automático cando no comentario dun commit de subversion se indica #RELEASE(version), e crea un ficheiro .tar.gz con firmas md5 e sha1. O nome dos ficheiros e firmas será proxecto.version.tar.gz, proxecto.version.md5 e proxecto.version.sha1. Tamén manten os enlaces simbólicos latestsource e latestmd5 apuntando aos últimos ficheiros xerados.
- maketracrepo.sh
- Este script se encarga de crear novos repositorios con toda a infraestructura necesaria. A url de acceso será en http://virhost.virdomain/nomerepo, e se chama do seguinte modo:
maketracrepo.sh nomerepo [adminuser] [passuser]
- Si non se indica adminuser e passuser, se utilizará o usuario e password indicada en configure.sh