Inhalt

Roundup: Einführung und Roundup: Issue Tracking ...... 3 Anwendungsbeispiele Roundup Eigenschaften ...... 4 Rollen und Rechtevergabe ...... 6 Dr. Ralf Schlatterbeck Roundup Hyperdb ...... 7 Open Source Consulting Trigger: Detector Interface ...... 9 Beliebige Schnittstellen über Python-API . . . . 11 Web-Interface ...... 12 Email: offi[email protected] Realisierte Roundup-Projekte ...... 14 Web: http://www.runtux.com Tel. +43/650/621 40 17

© 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 1 © 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 2

Roundup: Issue Tracking Roundup Eigenschaften

Standard Anwendung „Issue Tracking“ • Läuft überall wo Python läuft Nr. 1 Google Hit für „Issue Tracker“ • Web, Email, Kommandozeilen Schnittstelle • Trouble-Tickets • Web-Interface als CGI, eigener Web-Server oder • Software Bug-Tracking eingebettet in Zope • IT-Helpdesk • Email: Mailbox, IMAP, POP, sendmail pipe • Konferenz Einreichungen (Papers) • Eigene Mini-Mailingliste für jedes „Issue“ • Sales Opportunities • ...

© 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 3 © 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 4 Roundup Eigenschaften Rollen und Rechtevergabe

• Anwender-Dokumentation (Issue Tracker) • Zuordnung von Rollen zu Benutzern • Entwickler-Dokumentation • Rechtevergabe nach Rollen auf Tabellen- oder Spaltenebene • Einfache Administration, Installation • Berechnete Rechte möglich • Python-API (Programmierschnittstelle) • Web: Log-In für jeden Benutzer → Statistiken, Reports, Erinnerungs-Email, . . . • Import/Export Format und API • Email: Authorisierung über Email Adresse → Datensicherung • Optional Web- oder Email Registrierung → Migration von anderen Systemen • Mehrere Email-Adressen pro Benutzer

© 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 5 © 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 6

Roundup Hyperdb Roundup Hyperdb History

• Verschiedene Datenbank Backends (z. B. DBM, SQLite, MySQL, PostgreSQL) • Einfache Schema-Definition in Python → Backend-unabhängig • Änderung Datenbank-Schema im Betrieb • Automatische Attribute (creator, creation, . . . ) • Änderungshistorie (Journal) • Indizierung und Volltextsuche

© 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 7 © 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 8 Trigger: Detector Interface Detector (Auditor) Example

• Detector: Auditor oder Reactor def audit_superseder (db, cl, nodeid, new_values) : """ • Zugriff auf aktuellen Datensatz * don't set superseder on a new item * ensure that superseder gets not set to itself • Zugriff auf ganze Datenbank möglich * automagically set status to closed """ • Auditor: „Veto“ auf Änderungen new_sup = new_values.get ("superseder", None) → Anwendungsspezifische Einschränkungen if new_sup : if not nodeid : → Automatische Updates anderer Datensätze raise Reject, _ ("Don't set %s on new issue") % _ for sup in new_sup : • Reactor: Aktionen nach Commit in Datenbank if sup == nodeid : → Email-Versenden raise Reject, _ ("Can't set %s to itself") % _ new_values ["status"] = db.status.lookup ('closed') # end def audit_superseder

© 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 9 © 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 10

Beliebige Schnittstellen über Python-API Web-Interface

• Schnittstelle zu OpenOffice.org (OOoPy) • Zope Page Templates (ZPT) → Generierung von OOo Dokumenten • Templates für Menu

Auswertungen • i18n + l10n Reports • Hilfetexte für Maskenfelder Inhalte • Erweiterungen z. B. Projektplanung Gantt Charts (PyGantt)

© 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 11 © 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 12 Timetracker Example Realisierte Roundup-Projekte

• Software Bug-Tracker • IT-Helpdesk • Verwaltung von Rechnern, DNS-Einträgen usw. • Userverwaltung, Anbindung an LDAP, Generierung von LDIF • Dokumentenverwaltung • Projekt-Zeiterfassung, Urlaubsverwaltung • Abonnentenverwaltung für einen kleinen Verlag

© 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 13 © 2007 Dr. Ralf Schlatterbeck Open Source Consulting · www.runtux.com · offi[email protected] 14