Installation phpUnderControl from scratch

Projekt PHP Entwicklungsserver mit Continuous Integration



Wie behalte ich die Übersicht über meine Projekte?
Wer kümmert sich um die Dokumentation?
Laufen die Tests noch?

Soll das Entwicklungstempo hoch gehalten werden und/oder agile Methoden zum Einsatz kommen, dann wird eine technische Lösung für diese Fragen gesucht.

PHP Projekte müssen nicht hilflos auf Ruby Tools schielen oder JAVA Lösungen beneiden. Es gibt interessante Anwendungen, die einen Tester, Builder und Dokumentator ersetzen. Dafür sind nur 237 Webquellen durchzuarbeiten, 793 weiterführende Links zu überschauen und Beta Versionen anzutesten.

Hört sich nicht sehr einladend an?
Ich habe in den letzen Tagen 3 mal ein phpUnderControl aufgesetzt und da die Sucherei nicht weniger wurde, mich gezwungen es zu dokumentieren. Für die von mir benutzten aktuellen Versionen ist es jetzt komplett nachvollziehbar.

Systemumgebung für diese Anleitung:

Ubuntu Server 8.10 (in VirtualBox installiert)

In den VirtualBox Einstellungen die Netzwerkkarte des Gastes als Hostinterface gesetzt für lokales Netzwerk zwischen Wirt und Gast.

Beim Ubuntu Setup ausgewählt:

  • LAMP Server
  • SSH Server

VirtualBox Netz erreichbar vom Host z.B. http://lamp

user account “developer”
root account aktiviert (sudo passwd root)

Die nächsten Systembefehle benötigen root Rechte und da es ein virtueller Rechner für lokale Entwicklung wird spricht nichts gegen die Arbeit als root. Alternativ kann gerne sudo vor jeden Befehl gesetzt werden. Für die Installation auf einem Arbeitsplatz empfehle ich eine Konsole mit “sudo -s” zur Root Shell zu machen.

optional wichtige Entwicklungstools:

  • Subversion (apt-get install subversion)
  • Git (apt-get install git-core)
  • CVS (agt-get install cvs)

PHP vorbereiten:

Java JDK installieren

Hier ist Interaktion angesagt, da die Nutzungsbedingungen akzeptiert werden müssen.

CruiseControl installierencd /opt

Startscript anlegen:cd /etc/init.d

Folgenden Inhalt einfügen:

Script testen:

Im Browser testen:

http://lamp:8080/cruisecontrol/


Ok - dann: CruiseControl beenden:

Runlevel Einträge setzen:

Output:

Beim nächsten Neustart sollte die Startmeldung mit erscheinen.

An dieser Stelle hat man den fleißigen neuen Mitarbeiter bereits. Auch ohne phpUnderControl können jetzt Projekte verwaltet und mit ANT bearbeitet und deployed werden. Die weiteren Installationen bringen den PHP Entwicklern angepasste Auswertungen, die auf den Logs der pear Tools beruhen.

Installation phpUnderControl, PHPUnit und weitere Tools:

2009/06 UpdateInfos: PHPUnit verlangt für die Installation einen aktuelleren PEAR Installer.
Fehlermeldung:
phpunit/PHPUnit requires PEAR Installer (version >= 1.8.1)
Lösung:
pear upgrade PEAR

Installation über pear erspart späteren Ärger mit PATH Anpassungen, installiert Codesniffer, PHPDocumentor und andere benötigte Tools gleich mit.

Jetzt mal mit Ausgabe, um die Toolliste für manuelle Nachinstallationen festzuhalten.

Erfolgserlebnis abholen:

So jetzt wird CruiseControl mit phpuc angereichert.

Der finale Start von phpUnderControl over CruiseControl

Wie geht es weiter?

Endlich am Laufen beginnt die nächste Herausforderung - ein eigenes Projekt verwalten zu lassen. Das wird ein Thema der bald folgenden Dokumentationen sein.

Links zum Thema

Aktualisiert am 25. Mai 2010