Projektmanagement mit Phabricator

Der Fabrikator

Bugtracker sind das mindeste, was sich an geordneter IT dem Chaos entgegensetzen lässt. Dies und zahlreiche weitere Funktionen bietet die freie Software Phabricator, deren Installation wir in diesem Workshop beschreiben.
Die Zusammenarbeit und der Datenaustausch stehen im Mittelpunkt der Februar-Ausgabe des IT-Administrator. Darin betrachten wir die Teamarbeit mit Office 365 und ... (mehr)

Projektmanagement-Tools gibt es in der Open-Source-Welt viele. Auch die klassischen Bugtracker wie Mantis und Trac bieten zahlreiche Zusatzfunktionen wie etwa ein Wiki, sind aber oft schon in die Jahre gekommen. Eine moderne Alternative zu diesen Programmen ist das in PHP geschriebene Phabricator.

Ursprünglich wurde es von dem Facebook-Mitarbeiter Evan Priestley entwickelt, der sich mittlerweile damit selbständig gemacht hat. Es wird aktiv entwickelt und bietet neben dem Bugtracker eine Projektverwaltung, ein Wiki, einen Chat, ein Code-Review-Tool, Software-Repositories mit Git, Mercurial und Subversion und vieles mehr. Der Schwerpunkt liegt auf der Software-Entwicklung, aber Phabricator lässt sich auch für andere (IT-)Projekte verwenden und dank der modularen Struktur für eigene Zwecke maßschneidern. Zu den prominenten Anwendern von Phabricator gehören neben Facebook beispielsweise Wikimedia, FreeBSD und das KDE-Desktop-Projekt.

Flexible Installation

Zur Installation empfohlen wird der übliche LAMP-Stack, bestehend aus Linux, Apache, MySQL (oder MariaDB) und PHP. Wobei die einzelnen Buchstaben nicht unbedingt wörtlich genommen werden müssen: Statt L geht auch ein anderes Unix-System wie FreeBSD, und beispielsweise kann Nginx auch den Apache-Webserver ersetzen. Die Installation in einem Unterverzeichnis wird nicht unterstützt, stattdessen müssen Sie einen separaten virtuellen Host für Phabricator zur Verfügung stellen. Dieser VHost benötigt außerdem einen Hostnamen mit vollständiger Domain.

Wer Red-Hat-verwandte Linux-Distributionen oder Ubuntu verwendet, kann eins der auf der Installationsanleitung verlinkten Skripte verwenden, die aber auch nichts anderes tun als das, was wir hier beschreiben. Neben MySQL und dem Webserver müssen auf dem Server auch PHP und eine Reihe von PHP-Modulen vorhanden sein, also unter Ubuntu die Pakete php5, php5-mysql, php5-gd, php5-dev, php5-curl, php-apc, php5-cli und php5-json. Für bessere Performance installieren Sie optional den Alternative PHP Cache APC, aber das ist keine zwingende Voraussetzung. Derzeit ist Phabricator noch nicht kompatibel mit PHP 7 (siehe Kasten "PHP 5 auf Ubuntu 16.04").

Bild 1: Bei Problemen während der Installation gibt Phabricator brauchbare Hinweise.

PHP 5 auf Ubuntu 16.04

Die neueste Ubuntu-LTS-Version 16.04 verwendet per Default PHP 7. Phabricator ist aber bisher nicht kompatibel zu dieser PHP-Version. Also müssen Sie erst aus einer anderen Quelle PHP 5 installieren. Im Einzelnen funktioniert das folgendermaßen:sudo add-apt-repository ppa:ondrej/phpsudo apt-get updatesudo apt-get install php5.6 php5.6-mbstring php5.6-curl php5.6-mysqlsudo update-alternatives --set php /usr/bin/php5.6sudo a2dismod php7.0sudo a2enmod php5.6

Installation aus dem Quellcode

Phabricator checken Sie in drei Teilen aus dem Github-Repository aus. Wir legen dazu das Verzeichnis "/var/www/phabricator" an:

 

Die Files dürfen sich auch außerhalb des Webroot-Verzeichnisses befinden. Allerdings müssen Sie bei der Konfiguration des VHosts das Phabricator-Webroot angeben, damit die PHP-Dateien gefunden werden (Listing 1).

Listing 1: VHost-Konfiguration

 

Ist der Webserver konfiguriert, können Sie die Phabricator-Seite unter der gewählten URL aufrufen. Gegebenenfalls gibt Phabricator brauchbare Hinweise zur Problemlösung, falls etwa PHP-Pakete (Bild 1) oder MySQL-Credentials fehlen. Letztere tragen Sie entweder direkt in der JSON-Konfigurationsdatei "phabricator/conf/local/local.json" ein oder verwenden dafür das mitgelieferte Konfigurationstool von Phabricator:

 

Die (etwa 60!) Datenbanken installieren Sie mit dem Storage-Tool:

 

Dabei müssen Sie zweimal die Anwendung von Schemaänderungen bestätigen, ansonsten sollte das Ganze ohne Probleme funktionieren. Wenn Sie jetzt die URL der Phabricator-Installation aufrufen, bekommen Sie eine Eingabemaske angezeigt, in der Sie den ersten User anlegen, der gleichzeitig der Administrator wird.

Bei manchen Installationen ist es uns aber auch passiert, dass die Eingabemaske nicht aufgetaucht ist und es somit weder möglich ist, einen Account anzulegen, noch sich einzuloggen. Es fehlen noch ein "Authentication Provider" und User-Accounts. Einen normalen lokalen Account legen Sie mit dem Befehl "accountadmin" an, um ihn anschließend mit auth für ein einmaliges Login freizuschalten (Bild 2).

 

Wenn Sie sich jetzt unter der Phabricator-URL einloggen, finden Sie sich endlich in der Phabricator-GUI wieder, die in der Menüleiste oben auf noch offene Installationsprobleme hinweist (Bild 2). Gehen Sie am besten jedes Problem einzeln durch und beheben sie es entsprechend der von Phabricator gegebenen Anweisungen. Darüber hinaus können Sie in diesem Bereich viele weitere Einstellungen vornehmen, entweder der globalen Phabricator-Installation (Datenbank, Clustering und so weiter) oder der unterschiedlichen Anwendungen, die die Software bietet.

Bild 2: Beim ersten Einloggen zeigt Phabricator die noch offenen Probleme an.

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Systeme mit Vamigru verwalten

Auch wer nur kleine Flotten von Linux-Servern verwaltet, freut sich über Werkzeuge, die ihm diese Arbeit erleichtern. Vamigru tritt mit diesem Versprechen an. Wir verraten, was es leistet und wie Sie es in der eigenen Umgebung in Betrieb nehmen. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Container

Wie setzen Sie Container ein?

  • Gar nicht
  • Docker standalone
  • Docker mit Kubernetes
  • Docker mit Swarm
  • Docker mit anderem Management
  • LXC/LXD
  • Rocket
  • CRI-O auf Kubernetes
  • Container auf vSphere
  • Andere (siehe Kommentare auf der Ergebnisseite)

Google+

Ausgabe /2018

Microsite