← Terug naar nieuws

LEGO Merge Train Hackathon

Kleurrijke LEGO-blokjes

Tijdens ons jaarlijkse kerstevenement organiseerden we een hackathon die twee van onze favoriete dingen combineerde: programmeren en LEGO! De uitdaging? Een LEGO-trein bouwen die tot leven komt zodra er een merge train wordt gestart in ons GitLab-systeem. Als bonus zou het systeem ook aankondigen wat er wordt samengevoegd en de bijdragers daarachter in het zonnetje zetten.

Om onze visie tot leven te brengen, gebruikten we een 9V LEGO-treinsysteem en koppelden dit aan een slimme stekker (Shelly). Vervolgens schreven we een Python-script dat informatie over de meest recente merge trains uit GitLab ophaalt via de GraphQL-API. Telkens wanneer een nieuwe merge train wordt gedetecteerd, activeert het script de slimme stekker, waardoor de LEGO-trein in beweging komt.

De hackathon was een groot succes en het eindresultaat is een geliefde functie op ons kantoor geworden. Elke keer dat een merge train wordt gestart — wat de voltooiing van een nieuw stuk functionaliteit markeert — komt de LEGO-trein zoemend in beweging en maakt hij een paar vrolijke rondjes door het kantoor.

Als aanvulling op de ervaring zenden de kantoorspeakers details van de merge request uit, waarbij de doorgevoerde wijzigingen en de teamleden die hebben bijgedragen worden belicht.