Was ist die BibForge?

Hier unsere Präsentation vom Bibliothekartag in Mannheim am 4.6.08:

Nächste Woche gibt es weitere Informationen…

Aktivitäten KW 17

Die Änderungen in dieser Woche fanden weitestgehend “unter der Haube” statt, so ist nun als erstes Projekt “Goobi” (mehr informationen hier) in die BibForge aufgenommen. In den nächsten Wochen werden wir am Beispiel von Goobi das Zusammenspiel der unterschiedlichen Werkzeuge erproben und ggf. verbessern.

Diese Woche auf BibForge

Eine kurze Übersicht über die kleineren Aktivitäten in dieser Woche:

  • HTTPS
    Um die LDAP Migration weiter voranzutreiben wurden die meisten Tools (Jira, Subversion und Stud.IP) so konfiguriert, das sie nur noch via HTTPS nutzbar sind. Das hat den Vorteil das Passwörter immer verschlüsselt übertragen werden. Die alten Adressen funktionieren weiterhin, man wird auf die entsprechende HTTPS Seite umgeleitet.

htpasswd zu LDAP(LDIF) Migration

Bestehende Subversion Accounts wurden nun in die neue LDAP Partition migriert, falls mal jemand etwas ähnliches vor hat hier das erstaunlich simple Script:

#!/bin/bash

HTPASSWD=passwdfile
LDAP_SUFFIX="ou=users,dc=example,dc=com"

ACCOUNTS=`cat $HTPASSWD`

OLD_IFS=$IFS
IFS=$'\012'

for LINE in $ACCOUNTS
do
        USER=`echo $LINE | cut -d : -f 1`
        PASS=`echo $LINE | cut -d : -f 2`
        SN=`echo $USER | sed -e "s/\(.\)\(.*\)/\u\1\2/"`

        echo "#Account $SN (username = $USER)"
        echo "dn: cn=$USER,$LDAP_SUFFIX"
        echo "objectClass: inetOrgPerson"
        echo "objectClass: simpleSecurityObject"
        echo "objectClass: person"
        echo "objectClass: top"
        echo "cn: $USER"
        echo "sn: $SN"
        echo "uid: $USER"
        echo "description: BibForge User"
        echo "userPassword: {crypt}$PASS"
        echo ""
done

SSL (HTTPS) verfügbar

Die meisten Tools sind nun auch verschlüsselt verfügbar. Um es auszuprobieren und am besten auch gleich zu nutzen muss einzeig das “http” in der URL durch “https” ersetzt werden.

Das Zertifikat ist zur Zeit noch selbst signiert und macht etwas viel Gebrauch (z.B. für die TLD) von Wildcards, daran werden wir mittelfristig noch arbeiten.

Der Zugriff auf die Subversion Repositories funktioniert nur über SSL, weitere Tools werden folgen.

Community Plattform “Stud.IP” installiert

Unter community.bibforge.org ist nun eine Installation von “Stud.IP” verfügbar. Sud.IP ist eigentlich eine E-Learning Plattform, daher sind einige Benennungen für die BibForge etwas unglücklich, aber die enge Integration verschiedener Kollaborationswerkzeuge (Forum, Wiki) mit einem Rollen basierten Rechtesystem, gleicht diesen geringen Nachteil locker wieder aus.

In den nächsten Tagen werden wir noch Stud.IP noch etwas weiter (z.B. LDAP Anbindung) anpassen.

Die Nutzung von Stud.IP wird, wie die meisten anderen Tools auch, natürlich optional sein.

Subversionbrowser “Sventon” installiert

Der Subversionbrowser Sventon ist nun installiert, er ist erreichbar unter subversion.bibforge.org. Leider gibt es dort noch nicht viel zu sehen, da wir noch keine öffentlichen Projekte haben. Nutzer mit Zugangsdaten zum Goobi Repository können es aber schon ausprobieren…

Die Installation war recht einfach: War Datei in das “webapps” Verzeichnis kopiert und schon war ein web basiertes Setup verfügbar. Eigentlich ganz nett, wenn man nicht zwangsläufig eben diesen nutzen müsste, weil das Format (und der Speicherort) der Konfigurationsdatei zu schlecht dokumentiert ist um ein entsprechendes Script zu schreiben. Ich will das nicht für jedes kommende Projekt wiederholen müssen.

Fehlt nur noch die Integration in Jira…

Jira installiert

Jira ist nun installiert, erreichbar unter (jira|issues|bugs).bibforge.(de|org).

Jira ist ein sehr mächtiger Bug / Issue Tracker, der unter anderem vom Apache Projekt und der MPDL eingesetzt wird. Wir planen zur Zeit Jira allen interessierten BibForge Projekten zur Verfügung zu stellen.

Dank eines lustigen Bugs im aktuellen Tomcat für SLES 10 hat es etwas länger gedauert als geplant. Ein Grund mehr SuSE Linux nicht fürs Hosting von Java Applikationen zu empfehlen.

//TODO

Hier ein kurze Liste mit den Dingen, die in den nächsten Tagen zu tun sind:

  • Subversion: Sventon scheint hier das beste Werkzeug zu sein.
    • Subversion installieren und vorbereiten
    • Java und Tomcat installieren (siehe Jira)
  • Jira: Jira installieren
    • Java und Tomcat installieren
  • Sicherheit: HTTPS
    • Zusätzliche IP Adresse zuweisen und DNS umkonfigurieren
    • virtuelle Hosts einrichten, Zertifikat erstellen und einrichten
  • Authentifizierung: LDAP Anbindung einrichten
    • Partition im LDAP Server einrichten
    • Bestehende Account migrieren.
    • Tools LDAPifizieren
  • Authentifizierung: Webbasierte Nutzerverwaltung einrichten
  • Community: Plattform einrichten
  • Community: Wiki einrichten
  • Homepage: Startseite einrichten
  • Projekte: existierende Projekte (z.B. Goobi) integrieren
  • Tools: Weitere Entwicklungswerkzeuge integrieren, mögliche Kandidaten sind:

Blog installiert

Wir haben nun ein Blog um euch auf dem laufenden zu halten. Es ist nun unter blog.bibforge.de (bzw. blog.bibforge.org) erreichbar.

Die Installation von Wordpress war nicht so einfach wie man es bei einer solch verbreiteten Software erwarten würde: Grundlegende Funktionalität wie Mehrsprachigkeit ist in der Grundinstallation nicht vorhanden (man kann sie aber recht einfach nachinstallieren, siehe hier).

Was mir noch fehlt, ist eine vernünftige LDAP Authentifizierung, aber wie bei anderen Dingen, von denen man glaubt das sie heutzutage zur Standardausrüstung einer webbasierten Software gehören, gibt es so etwas lediglich als Wordpress Plugin. Genauer: Es gibt zwei Plugins, bei einem scheint die Entwicklung eingeschlafen zu sein (es gibt Kommentare, das es nicht mit Wordpress 2.5 funktioniert), das andere bietet nicht die Funktionen, die ich will. Es authentifiziert die Nutzer nicht direkt gegen den LDAP Server sondern benötigt dafür einen eigenen Account des das Passwortattribut auslesen kann. Bei den ganzen Sicherheitsproblemen, die Wordpress immer mal wieder hat, ist das nichts was ich will.

Ansonsten hat hat Wordpress natürlich auch Vorteile: Der wichtigste ist wohl die Anpassbarkeit. Das jetzige Layout habe ich in 10 min mit “vi” aus einem existieren Theme (SimplicityBright Plus) gebastelt.

Für den Fall das einzelne Projekte später eigene Blogs betrieben wollen, werde ich mir mal Apache Roller ansehen.