test.ical.ly | getting the web by the balls

TAG | Hudson

For a while I’ve been toying with the idea to set up a fully automated continuous deployment process for my symfony plugins. You can think of continuous deployment as a continuous integration process with automated deployment.

I just didn’t come round to do it as I couldn’t find the time so far. But then I read this article by Toni Schneider about CD at wordpress.com and it got me hooked again.

So I thought lets write down what it takes for a start.

(more…)

· · · · · · · ·

Oct/10

7

Development offline!

Still in preparation for the symfony day 2010 in Cologne I was a little worried yesterday that accessing GitHub and my own Continuous Integration Server for some examples could be too risky as nerd conventions such as this often lead to unstable networks. ;)

Then I had the idea. Why not take all my stuff with me? LAMP, Hudson, PHP tools, vim, ..
(more…)

· · · ·

I must admit that I have been lazy with my efforts on continuous integration lately. Eventually my server crashed unnoticed and I didn’t get any emails about broken builds anymore and by now I think I’ve stacked up some work to do.

First of course I’ve got to get my CI server up and running again, that’s why I installed Hudson again.

But there is room for improvement too. Sebastian Bergmann of PHPUnit fame spent some time on a template Hudson job for PHP projects that includes much more than PHPUnit. So I decided to use that!

(more…)

· · · · · · · · ·

Lately I was playing around with my old Hudson installation to try and use Sebastian Bergmanns PHP Hudson template. But in the end I only had it halfway working and was increasingly confused by the number of plugins I had installed.

So I decided to make a backup of everything and start from scratch with a fresh install. Only there are no official ebuild for my Gentoo box..

(more…)

· · · · ·

elephpantEarlier this year I decided to go with Hudson as my Continuous Integration Server for testing my symfony plugins.

Earlier this week I installed phpUnderControl and wrote about setting up both phpuc and Hudson-CI.

Now what should you use? Here I try to summarise my experience and compare the two. (more…)

· · · · · ·

PHPUnit-testing-symfony-in-HudsonYesterday I wrote about setting up a symfony plugin project in phpUnderControl. However so far I’ve been using Hudson as my Continuous Integration server. So before comparing the two I will explain how to achieve yesterdays setup using Hudson. (more…)

· · · · · · · · · ·

gentooThose of you following my blog know that I use Hudson as my continuous integration server. You can see the running installation at automat.ical.ly.

Today I decided to give phpUnderControl another shot and I found that the brilliant post by Andries Seutens needs an update.

(more…)

· · · ·

duplice codeAls ich vor ein paar Tagen mich und meine Arbeit auf den roten Clean Code Developer Grad geprüft habe, habe ich auch das erste mal mit dem Copy & Paste Detection Tool phpcpd zu tun gehabt und habe es kurz darauf als Leitmass für ein kleines Refactoring genutzt.

Mittlerweile habe ich dieses Tool auch in meinen Continuous Integration Prozess aufgenommen und kann die Ergebnisse mit jedem Build im Auge behalten. Deswegen möchte ich kurz zeigen, wie ich phpcpd und Hudson in Einklang gebracht habe.

(more…)

· · · · · ·

MockUpGestern hab ich mich etwas darüber ausgelassen, wie doof doch einige Code Koppelungen von symfony mir das Testen behinderten.

Vor allem drei Dinge haben mir das Leben schwer gemacht: die Konfiguration, sfContext und Datenbankabhängigkeiten. Und ich habe für alle drei auch Antworten finden können. Vielleicht nicht die endgültigen, aber schon sehr akzeptable, wie ich meine.

(more…)

· · · · · ·

Meinen Code Coverage / Testabdeckungsreport von gestern möchte ich heute in meine Hudson Installation integrieren. Das macht Sinn, da ich hier als Entwickler immer als erstes drauf hingewiesen werde, wenn was fehlgeschlagen ist. Ich komme also eh öfters hierher und kann so quasi nebenbei einen Eindruck über meine eigene Abdeckung erhalten.

Zunächst will ich das Thema der Begrenzung nochmal aufgreifen, denn so hunderprozentig zufrieden bin ich noch nicht. Denn wie ich im letzten Screenshot gestern gezeigt hatte, werden für den Coverage Report nach wie vor Dateien berücksichtigt, die sich nicht innerhalb meines Plugins befinden. Die müssen natürlich auch getestet werden, aber wohl kaum mit Tests, die sich in meinem Plugin befinden.

Was ich will ist sowas wie das hier:

PHPUnit Code Coverage Report für ein symfony Plugin

PHPUnit Code Coverage Report für ein symfony Plugin

Ich will also mit Tests, die sich innerhalb meines Plugins befinden ausschliesslich Code testen, der sich ebenfalls dort befindet.

Stellt sich also zunächst die Frage: wie mache ich das? Und gleich anschliessend: Muss ich immer noch was ausschliessen?

Die erste Frage beantwortet sich leicht. Hier meine phpunit.xml.

(more…)

· · · · · · ·

Older posts >>

Theme Design by devolux.nh2.me