16-10-2008 12:06:31

Tijd voor een nerdy post. Zoals we al in een aantal postings op dit weblog verteld hebben, doen we bij BIT veel met CFengine, vaak gecombineerd met PXE om booten vanaf het netwerk mogelijk te maken en altijd in combinatie met Subversion voor versiebeheer. Grote voordelen hiervan zijn onder andere dat we wijzigingen op platformen van identieke servers snel en overal hetzelfde kunnen uitvoeren en dat we versie historie hebben.

Recent liepen we tegen het fenomeen ‘Code Swarm‘ aan. Met een code swarm worden de ontwikkelingen aan de diverse onderdelen van een softwareproject in de loop der tijd gevisualiseerd via zogenaamde ‘organische informatie visualisatie’. Bekijk bijvoorbeeld de code swarm van de programmeertaal Python of de webserver Apache maar eens, daar is goed te zien hoe er door verschillende mensen in de loop van de tijd aan de verschillende onderdelen van een project gewerkt wordt.

Terug naar CFengine nu. In 2006 zijn we begonnen met het gebruiken van CFengine. Sindsdien worden steeds meer platforms en servers van BIT (en inmiddels ook van een aantal klanten) hiermee beheerd. Een tijdje geleden werd de 10.000ste wijziging in onze Subversion repository voor CFEngine gemaakt. Daarom leek het ons leuk om ook eens een Code Swarm te bouwen van de logs van ons CFEngine project en met behulp van de uitleg op deze website is dat een eitje.

In de swarm worden verschillende kleuren gebruikt voor de verschillende onderdelen van het CFEngine project. Bestanden die door een specifieke medewerker gewijzigd worden, zwermen om zijn naam heen en lichten op als ze gewijzigd worden. Aan de animatie is goed te zien hoe steeds meer medewerkers van BIT wijzigingen zijn gaan maken aan de CFEngine configuraties. Dit komt onder andere doordat steeds meer van de PXE bootende platformen (waaronder de complete in 2007 gebouwde BIT mailsetup) gebruik is gaan maken van CFEngine.

Een speciaal woordje van dank gaat uit naar Sten voor het voorzien van de swarm van kleuren voor de verschillende deelprojecten.