Roundup: Unterschied zwischen den Versionen

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen
Zeile 82: Zeile 82:


=== Konfiguration '''mit''' eigener httpd.conf ===
=== Konfiguration '''mit''' eigener httpd.conf ===
'''!! Dieser Abschnitt ist mangels eigener httpd.conf ungetestet !!'''


==== cgi-frontend kopieren ====
==== cgi-frontend kopieren ====

Version vom 28. Januar 2010, 19:44 Uhr

Dieser Text ist noch in Arbeit - Noch nicht produktiv benutzen!


Diese Seite muss überarbeitet werden

Diese Seite wurde als Baustelle gekennzeichnet, weil sie überarbeitet werden muss. Eine Begründung dafür findest du auf der Diskussionsseite. Bitte hilf mit, diese Seite zu verbessern!


Installation roundup issue tracker (cgi-bin)

Die allgemeine Installationsanleitung für roundup findet man unter http://roundup-tracker.org/docs/installation.html

Im Folgenden soll die Installation bei Hostsharing in einem DW/R-Paket im cgi-bin einer Domain ohne eigene httpd.conf beschrieben werden. Das Beispiel beschreibt die nötigen Schritte für den Domain-Admin innerhalb des DW/R-Paketes.


Neueste Quellen per SVN besorgen

svn co http://svn.roundup-tracker.org/svnroot/roundup/roundup/trunk /home/pacs/xyz00/users/USERNAME/roundup

Installation der tracker-Software

python setup.py install --prefix=/home/pacs/xyz00/users/USERNAME/roundup/install --install-scripts=/home/pacs/xyz00/users/USERNAME/roundup/bin

Anpassen der Umgebungsvariablen

In der bash-Umgebung:

 export PATH=$PATH:/home/pacs/xyz00/users/USERNAME/roundup/bin
 export PYTHONPATH=$PYTHONPATH:/home/pacs/xyz00/users/USERNAME/roundup/install/lib/python2.5/site-packages/


Am besten trägt man diese beiden Zeilen in der Datei .bash_profile ein, dann stehen die Pfade beim starten der Shell direkt zur Verfügung:

 nano ~/.bash_profile

Installation eines neuen Trackers

/home/pacs/xyz00/users/USERNAME/roundup/bin/roundup-admin install


Dabei werden folgende Eingaben abgefragt (Eingaben nur beispielhaft):

 Enter tracker home: /pfad/zum/tracker/home
 Templates: minimal, classic
 Select template [classic]: classic
 Back ends: anydbm, mysql, sqlite, postgresql
 Select backend [anydbm]: sqlite

Tracker anpassen

nano /home/pacs/xyz00/users/USERNAME/roundup/tracker/TRACKERNAME/config.ini

Hier müssen zumindest diese Variablen angepasst werden:

admin_email = mail@example.com
dispatcher_email = mail@example.com
name = TRACKERBESCHREIBUNG
web = http://SUBDOMAIN.example.com/
email = mail@example.com
domain = example.com
host = localhost

Optional kann man das logging in eine Datei aktivieren:

 filename = /home/pacs/xyz00/users/USERNAME/TRACKERNAME.log

Falls man sich für ein RDBMS-Backend als Datenbank entscheidet, sollte man sicherheitshalber auch Benutzername und Passwort für die Datenbank ändern

 user = DBBENUTZERNAME
 password = DBPASSWORT

Datenbank initialisieren

/home/pacs/xyz00/users/USERNAME/roundup/bin/roundup-admin initialise

Subdomain anlegen

mkdir /home/pacs/xyz00/users/USERNAME/doms/example.com/subs/SUBDOMAIN

Ein eigenes cgi-verzeichnis für die neue subdomain:

mkdir /home/pacs/xyz00/users/USERNAME/doms/example.com/cgi/SUBDOMAIN


Konfiguration mit eigener httpd.conf

!! Dieser Abschnitt ist mangels eigener httpd.conf ungetestet !!

cgi-frontend kopieren

cp /home/pacs/xyz00/users/USERNAME/roundup/frontends/roundup.cgi /home/pacs/xyz00/users/USERNAME/doms/example.com/cgi/SUBDOMAIN/

cgi-frontend anpassen

nano /home/pacs/xyz00/users/USERNAME/doms/example.com/cgi/SUBDOMAIN/roundup.cgi

TRACKER_HOMES = {
   'TRACKERNAME': '/home/pacs/xyz00/users/USERNAME/roundup/tracker/TRACKERNAME',
}

.htaccess-Datei für cgi konfigurieren

nano /home/pacs/xyz00/users/USERNAME/doms/example.com/subs/SUBDOMAIN/.htaccess

RewriteEngine On
RewriteBase /
RewriteRule ^(.*)      /cgi-bin/SUBDOMAIN/roundup.cgi?$1

Konfiguration ohne eigene httpd.conf

WSGI-Interface einbinden

Ohne eigene httpd.conf benötigt man einen Wrapper (s. Flup).

Dies legt man in seinem cgi-bin für die subdomain als roundup_stub ab:

 #!/usr/bin/env python
 import sys
 sys.path.append("/home/pacs/xyz00/users/USERNAME/roundup/install/lib/python2.5/site-packages")
 from flup.server.cgi import WSGIServer
 # obtain the WSGI request dispatcher
 from roundup.cgi.wsgi_handler import RequestDispatcher
 tracker_home = '/home/pacs/xyz00/users/USERNAME/roundup/tracker/TRACKERNAME'
 app = RequestDispatcher(tracker_home)
 WSGIServer(app).run()

Die hervorgehobenen Stellen sind an die eigenen Gegebenheiten anzupassen.

Wenn es Fehlern kommt, kann man debugging-Meldungen an den Browser ausgeben lassen. Dazu ergänzt man unter der Zeile "sys.path.append..."

 import cgitb
 cgitb.enable()

.htaccess-Datei für cgi konfigurieren

nano /home/pacs/xyz00/users/USERNAME/doms/example.com/subs/SUBDOMAIN/.htaccess

RewriteEngine On
RewriteBase /
RewriteRule ^(.*)      /cgi-bin/SUBDOMAIN/roundup_stub?$1


Individualisierung der tracker

Die Tracker kann man individuell an die eigenen Wünsche anpassen.

Das Datenbank-Schema liegt z.B. unter

 /home/pacs/cgl00/tracker/tbab/schema.py

Die Datenbank-Initialisierungs-Datei liegt unter

 /home/pacs/cgl00/tracker/tbab/initial_data.py

Zum Übernehmen der Änderungen muss man die Datenbank neu initialisieren. Achtung: Dabei gehen alle Daten in der DB verloren!

 roundup-admin initialise

Details zur Individualisierung nennt die Unterseite "Docs" -> "Customising Roundup" (http://roundup-tracker.org/docs/customizing.html).