Marcin Wolański
"It is not the critic who counts: not the man who points out how the strong man stumbles or where the doer of deeds could have done better. The credit belongs to the man who is actually in the arena [...]"

Trac na Windows

poniedziałek, 15 listopada 2010 roku

Kiedy VisualSVN Server zainstalowałem tak, jak chciałem, zachciało mi się systemu do zarządzania błędami. Padło na Trac. Do instalacji postanowiłem wykorzystać Apache VisualSVN Servera. Wiem, że mógłbym wziąć sobie paczkę z Trac dla VisualSVN Server, ale nie zrobiłem tego, bo po pierwsze, nie zawiera najnowszej, stabilnej wersji Trac, a po drugie – niezależna instalacja Trac uprości aktualizację narzędzia w przyszłości.

Przygotowanie środowiska

Zainstalowałem po kolei używając defaultowych ścieżek:

Niestety najnowsze bindingi SVN dla Pythona 2.5 nie pomogą w integracji Trac z VisualSVN Server (gdzieś znalazłem informację, że winne są zmodyfikowane biblioteki SVN w VisualSVN Server). Ale poradziłem sobie z tym pobierając wspomnianą paczkę Trac dla VisualSVN Server i kopiując z archiwum katalogi trac\python\Lib\site-packages\libsvn oraz trac\python\Lib\site-packages\svn do c:\Python25\Lib\site-packages.

Konfiguracja Trac

Z wiersza poleceń wykonujemy:

c:\Python25\Scripts\trac-admin.exe c:\trac initenv

Na pytania instalatora odpowiadamy następująco:

Project Name: Moja_nazwa
Database connection string [sqlite:db/trac.db]: <enter>

Do katalogu c:\trac dajemy prawa do odczytu i zapisu użytkownikowi, na którym uruchomiona jest usługa.

Na tym etapie można już uruchomić webserwer Traca poleceniem:

tracd --port 8000 c:\trac

My chcemy jednak, żeby Trac serwowany był przez Apache. W związku z tym trzeba doinstalować mod_python dla Apache 2.2 i Python 2.5. Instalator zapyta nas, gdzie jest zainstalowany Apache. Chcemy wykorzystać serwer dostarczany razem z VisualSVN Server. W związku z tym tworzymy katalog modules w C:\Program Files\VisualSVN Server\bin i wskazujemy instalatorowi katalog C:\Program Files\VisualSVN Server\bin, a w konfiguracji Apache C:\Program Files\VisualSVN Server\conf\httpd.conf dodajemy linie:

LoadModule python_module bin/modules/mod_python.so

Dodajemy do konfiguracji Apache katalog Trac:

<Location /trac>
    SetHandler mod_python
    PythonInterpreter main_interpreter
    PythonHandler trac.web.modpython_frontend
    PythonOption TracEnv "C:/trac"
    PythonOption TracUriRoot /trac
</Location>

Chcemy, aby w Trac mogli się zalogować użytkownicy domenowi. W związku z tym w konfiguracji dodajemy jeszcze poniższy fragment:

<Location /trac/login>
    AuthType SSPI
    AuthName "Trac"
    SSPIAuth On
    SSPIAuthoritative On
    SSPIDomain NAZWA_DOMENY
    SSPIOfferBasic Off
    Require valid-user
</Location>

Pod adresem http://nazwa_hosta//trac mamy dostęp do Trac.

z tagami narzędzia

blog comments powered by Disqus