Projektmanagement mit Omniplan 1.6.4

Nach langer Abstinenz im Blog, kann ich nun mal wieder mit einer Software-Empfehlung aufwarten.

Jedem Programmierer, der mit größeren Projekten zu tun hat kann ich nur empfehlen sich mal die Projektmanagement-Software „Omniplan“ anzuschauen.
Hier lassen sich relativ schnell Prozesse abbilden, Ressourcen anlegen, Preise kalkulieren und Timetables erstellen. Auf der Webseite des Anbieters finden sich kurze Video-Tutorials mit denen der Einstieg noch leichter fällt.
Ich arbeite jetzt zwar erst eine Woche mit der Software aber sie hat mich voll und ganz überzeugt. Was noch fehlt ist eine Art Community-Feature um den gesamten Prozessplan mit dem Auftraggeber / Chef und CDO abzustimmen. Solange das nicht existiert kann man aber die umfangreiche Export-Funktion nutzen. Neben der klassischen Möglichkeit den Plan als PDF zu verschicken kann man sich auch eine HTML-Seite erstellen lassen, in der jeder Mitarbeiter sehen kann was er wann zu tun hat. Dabei lassen sich die Termine im iCal-Kalender speichern.

Also einfach mal runterladen, zwei Wochen testen und dann vielleicht sogar zuschlagen. Bei mir ist die Entscheidung schnell gefallen! Für die ganz interessierten kann man sich auch im OmniBlog ein wenig über die Firma und deren (teilweise freakigen) Mitarbeiter informieren.

Trac auf Apache aufsetzen unter SUSE

SVN läuft, Trac läuft  und nun stellt sich die eigentlich alles entscheidene Frage, an der ich selber mehrmals gescheitert bin: „Wie setze ich Trac jetzt für Apache auf, damit ich meinen Kunden zugriff auf das Bugtracking-Tool geben kann???“

Ersteinmal vorne weg:

Plesk ist sehr sehr anstrengend, ich musste mehrmals die angelegte trac-Subdomain löschen, weil sich Plesk irgendwann nur noch verhaspelt hat und einfach nicht mehr auf .htaccess-Dateien oder vhost.conf – Dateien reagiert hat.

Also legen wir los. Als erstes solltet Ihr in Plesk eine Subdomain anlegen über die Ihr später euer Trac erreichen wollt. z.B.: http://trac.irgendeine-domain.de
Wenn diese dann über das Netz erreichbar ist, dann legen wir los und müssen ein wenig an den Apache-Konfigurations-Dateien herumschrauben. Das klingt alles allerdings alles komplizierter als es ist.

Um fortzufahren solltet ihr die vorherigen vier Artikel gelesen und durchgearbeitet haben, da wir dort alle notwendigen Pakete installiert haben. Zum schnellen navigieren innerhalb der Ordnerstruktur eures Servers empfehle ich euch noch den MidnightCommander (mc) zu installieren. Damit kann man nämlich nicht nur navigieren, sondern auch sehr sehr einfach editieren, ohne das man sich 500.000 Tastenkombinationen merken muss.

Nun geht ihr in den Ordner in dem die Konfigurationsdateien für die virtuellen Hosts liegen

cd /srv/www/vhosts/irgendeine-domain.de/subdomains/trac/conf

und bearbeitet die datei vhost.conf (im MidnightCommander die Datei auswählen und F4 drücken)

In die Datei kommt folgender Inhalt (Einfügen im MC-Editor: Umsch+Einf) :

<Location />
   SetHandler mod_python
   PythonInterpreter main_interpreter
   PythonHandler trac.web.modpython_frontend
   PythonOption TracEnv /opt/trac/projects/meinProjekt
   PythonOption TracUriRoot /
</Location>
<Location /login>
  AuthType Basic
  AuthName "trac"
  AuthUserFile /opt/trac/passwordfiles/meinProjekt.htpasswd
  Require valid-user
</Location>

Mit F10 kann der Editor wieder geschlossen werden und die Speichern-Abrage sollte mit Yes bestätigt werden.
In der drittletzten Zeile steht AuthUserFile /opt/trac/passwordfiles/meinProjekt.htpasswd

Diese bezieht sich auf eine Datei, die wir noch nicht erstellt haben und dient dazu Logins zum Administrationsbereich von Trac zu speichern.
Wir erstellen nun einen Login und kreieren dabei gleichzeitig die Passwort-Datei.

Befehle:

mkdir /opt/trac/passwordfiles
htpasswd2 -c /opt/trac/passwordfiles/meinProjekt.htpasswd username

Für username tragt ihr bitte einen benutzername ein, überlegt euch ein passwort und tragt es zweimal ein. Achtung, unter Linux ist es nicht üblich für Passwörter Sternchen(*) oder sonstige Zeichen anzuzeigen.
Denkt daran die Passwörter am besten gleich in Keepass zu speichern.

Jetzt sollte Apache eigentlich fertig konfiguriert sein.

Mit folgenden Befehlen werden die virtuellen Hosts rekonfiguriert, also die eben geänderte vhost.conf neu eingelesen und danach der Apache-Server neugestartet:

/usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=irgendeine-domain.de
httpd2 -k restart

Was noch fehlt ist der Administratorzugang für den user den wir weiter oben angelegt haben. Trac muss ja wissen welcher Benutzer auf die Adminoberfläche zugreifen darf. Der Befehl hierfür lautet:

trac-admin /opt/trac/projects/meinProject permission add username

Wobei username hier durch den username ersetzt werden muss, den wir mit htpasswd2 angelegt haben.

Der Zugriff auf Trac über trac.irgendeine-domain.de sollte nun funktionieren. Über den Link „login“ öffnet sich jetzt ein Login-Fenster und nach eingeben von Benutzername und Passwort ist der Zugang zum Trac-Admin-Part frei.

Im nächsten Schritt werden wir Trac aus der Single-Projekt-Verdammung ziehen und schauen, wie Trac sich mit mehren Projekten betreiben lässt.

Artikelübersicht:

1. Installation SVN

2. Installation Python

3. Installation Trac

4. Erstellen einer Umgebung für ein Trac-Projekt

5. Trac auf Apache aufseten

6. Trac für mehrere Projekte (in Planung)

7. Trac Usermanagement mit dem TracAccountManager (in Planung)

Erstellen einer Trac-Umgebung unter SUSE

Nachdem wir nun alle notwendigen Tools für die Verwendung von Trac installiert haben geht es nun an die Einrichtung eines Trac-Projekts. Das ist relativ schnell gemacht, als erstes muss mit dem trac-admin die Umgebung erstellt, ein paar Informationen eingegeben und abschließend verschiedenen Ordnern root-Schreibrechte gegeben werden.  Für die Wahrung der Übersichtlichkeit empfehle ich eine Ordnerstruktur einzuhalten in der Trac-Projekte immer in einem Ordner stehen. Bei mir befinden sich die Trac-Projekte unter

/opt/trac/projects/{projektname}

wobei der Ordner projektname von trac-admin angelegt wird.

1. Umgebung erstellen

trac-admin /opt/trac/projects/meinProjekt initenv

2. Informationen eingeben

Project name [My Project]> erstes Testprojekt
Database connection string [sqlite:db/trac.db]> mit Enter bestätigen
Repository type [svn]> {svn ist voreingestellt, Enter}
Path to repository [/path/to/repos]>
hier den Pfad zu euerem SVN-Repository eingeben z.B.: /opt/svn

Wenn Ihr ein Repository eingegeben hab, dann wir dieses jetzt durchforstet und die relevanten Daten werden in die Trac-Datenbank geschrieben.

Jetzt müssen noch Schreibrechte für die Datenbank, das Plugins-Verzeichnis, und die Konfigurationsdatei gesetzt werden. Weil es am schnellsten in der Konsole geht geben wir folgendes ein:

chmod -R 777 /opt/trac/projects/meinProject/db
chmod -R 777 /opt/trac/projects/meinProject/plugins
chmod -R 777 /opt/trac/projects/meinProject/conf

Das war es eigentlich schon, wenn Ihr jetzt testen wollt ob euer Trac läuft, dann könnt Ihr den integrierten Trac-Server starten und und Trac verwenden.

tracd -s --port 8000 /opt/trac/projects/meinProjekt

Auf Trac zugreifen könnt Ihr über

http://localhost:8000/

Wenn soweit alles läuft, dann geht es jetzt zum wichtigsten Punkt dieses kleinen HowTows.

Nächster Schritt: 5. Trac auf Apache aufseten

Artikelübersicht:

1. Installation SVN

2. Installation Python

3. Installation Trac

4. Erstellen einer Umgebung für ein Trac-Projekt

5. Trac auf Apache aufseten

6. Trac für mehrere Projekte (in Planung)

7. Trac Usermanagement mit dem TracAccountManager (in Planung)

Installation von Trac unter SUSE 10.3

Im vorherigen Schritt haben wir Python installiert. Die Grundlage um Trac überhaupt zum Laufen zu bekommen. Dank der Python eigenen Installationsroutine können wir jetzt mittels easy-install alle Trac relevanten Programme installieren.

Folgende Vorraussetzungen sollten für die Trac-Installation vorhanden sein:

Python, version >=2.3 <(3.0)
setuptools, version >=0.6
Genshi, version >=0.5
Eine der folgenden Datenbanken: SQLite, PostgreSQL

Dazu loggen wir uns wieder als root auf dem Server ein und installieren über die Konsole folgende Pakete über folgende Befehle:

easy-install trac

Nach abgeschlossener Installation solltes per

trac-admin --version

die aktuelle Versionsnummer von trac zu sehen sein.

Damit haben wir das Vorgeplänkel abgeschlossen und befassen uns nun der Einrichtung von trac-Umgebungen.

Nächster Schritt: 4. Erstellen einer Umgebung für ein Trac-Projekt

Artikelübersicht:

1. Installation SVN

2. Installation Python

3. Installation Trac

4. Erstellen einer Umgebung für ein Trac-Projekt

5. Trac auf Apache aufseten

6. Trac für mehrere Projekte (in Planung)

7. Trac Usermanagement mit dem TracAccountManager (in Planung)

Installation Python unter SUSE 10.3

Im ersten Schritt habe ich erklärt wie man SVN unter SUSE 10.3 installiert, für Trac, ein auf Python basierendes Bug-Tracking-Tool und Projektmanagement-Programm müssen wir nun im nächsten Schritt Python installieren.

Dazu gehen wir folgender maßen vor:

Wie schon erwähnt finde ich yast einfach angenehm für die Installation, daher sollten wir nun einfach wieder yast starten. Ins Software-Management wechseln und warten bis alle Softwarequellen downgeloaded und verarbeitet wurden.

Dann suchen wir nach Python und installieren folgende Pakete:

apache2-mod-python
lib-xml2-python
python
python-devel
python-genshi
python-setuptool
python-tk
python-xml
pyxml

Wenn die Installation abgeschlossen ist, prüfen wir mittels folgendem Befehl ob Python ordnungsgemäß installiert ist

python --version

Ihr solltet nun etwas in der Art sehen:

Python 2.5.1

Python als Apache-Modul laden.

Ihr solltet darauf achten das das mod_python-Modul für Apache geladen ist. Dazu gebt ihr folgenden Befehl ein und erhaltet entweder eine Mitteilung, dass das Modul schon geladen ist, oder es eben geladen wurde.

Nächster Schritt: 3. Installation Trac

Artikelübersicht:

1. Installation SVN

2. Installation Python

3. Installation Trac

4. Erstellen einer Umgebung für ein Trac-Projekt

5. Trac auf Apache aufseten

6. Trac für mehrere Projekte (in Planung)

7. Trac Usermanagement mit dem TracAccountManager (in Planung)