Trac

Trac to otwarty system do zarządzania projektami z bugtrackerem.

Instalacja Trac

Przed rozpoczęciem instalacji należy utworzyć środowisko Virtualenv w wersji Python 2.7 i je aktywować komendą: source /usr/home/login/.virtualenvs/nazwa_środowiska/bin/activate . Następnie należy wykonać polecenie pip install Trac

Utworzenie projektu

Aby utworzyć projekt należy się zalogować oraz wykonać polecenie trac-admin KatalogProjektu initenv. KatalogProjektu to dowolny podkatalog katalogu użytkownika w którym będzie przechowywany Trac.

Uzytkownicy

Następnie należy utworzyć plik z użytkownikami i hasłami. Aby utworzyć pierwszego użytkownika trzeba skorzystać z polecenia htpasswd -d -c KatalogProjektu/trac.htpasswd nazwa_uzytkownika. Po wykonaniu polecenia należy wpisać hasło a następnie je potwierdzić. Kolejnych użytkowników należy dodawać poleceniem htpasswd -d KatalogProjektu/trac.htpasswd nazwa_uzytkownika. Po dodaniu wszystkich użytkowników należy jednemu nadać prawa administratora w projekcie poleceniem trac-admin KatalogProjektu permission add nazwa_uzytkownika TRAC_ADMIN.

Dodatkowe ustawienia

Można również dostosować inne ustawienia projektu edytując plik KatalogProjektu/conf/trac.ini.

Uruchomienie projektu

Gdy projekt jest już gotowy należy go uruchomić. Najpierw należy utworzyć stronę WWW typu php. Po jej utworzeniu należy wykonać polecenie spawn-fcgi -M 0777 -F 3 -s /usr/home/login/domains/domena/fastcgi0.sock /usr/local/sbin/fcgiwrap (więcej informacji o CGI). Zamienić należy login na nazwę użytkownika oraz domena na nazwę stworzonej domeny.

.htaccess

Następnie należy utworzyć plik .htaccess w /usr/home/login/domains/domena/ z zawartością:

AuthType Basic
AuthUserFile "/usr/home/login/KatalogProjektu/trac.htpasswd"
require valid-user 
AuthName "Trac"
SetHandler application/x-httpd-fastcgi0
RewriteEngine on
RewriteRule ^$ /wiki [L]

Następnie należy uruchomić Trac poleceniem screen trac-fcgi /usr/home/login/domains/domena/fastcgi0.sock /usr/home/login/KatalogProjektu . Zaleca się również dodanie tego polecenia do crona poprzedzając je @reboot aby po ewentualnym restarcie serwera projekt wystartował samoczynnie.

Odnośniki zewnętrzne