Eco CI

Eco CI ist der interne Name für ein Projekt, in dem wir kleine Tools entwickeln, um CI-Pipelines in Bezug auf ihren Energieverbrauch transparenter zu machen und auch kleine Tools zu entwickeln, die Energie/CO2 in der Pipeline einsparen können.

Unsere aktuelle Arbeit konzentriert sich auf Github Actions, eine der bisher größten kostenlosen Plattformen für kontinuierliche Integration.

Durch die Integration unserer maßgeschneiderten Github Actions und Github Apps in Ihren Test-Workflow erhalten Sie eine automatische Abschätzung der Energiekosten des Workflow-Laufs.

Github Actions - Energieabschätzung

Github Actions laufen auf Microsoft Azure VMs. In diesen VMs ist eine direkte Messung mit etwas wie RAPL leider nicht möglich.

Wir nutzen unsere Arbeit aus dem Cloud Energy Projekt, um den Energieverbrauch dieser Azure-VMs zu schätzen.

Das Ergebnis ist eine leicht integrierbare Github-Aktion, mit der Sie die Energie in Joule für den CI-Lauf erhalten. Es ist auch möglich, nur Ergebnisse für einen Teil des CI-Laufs zu erhalten.

Github Aktionen Energieabschätzung
Demo der Eco-CI-Funktion im Green Metrics Tool

 


Github Aktion - Eco CI Activity Checker

Der Eco CI Activity Checker wurde für CI-Workflows entwickelt, die nach einem bestimmten Zeitplan ablaufen.

Oftmals werden diese Workflows auch dann ausgeführt, wenn in den letzten z.B. 24 Stunden kein einziger Commit stattgefunden hat, oder auch wenn ein paar Minuten vor dem Lauf ein manueller Lauf ausgelöst wurde.

Der Eco CI Activity Checker überspringt dann den Testlauf und spart so Energie und CO2.

 


Gitlab Plugin

Bitte beachten Sie für Gitlab unsere zentrale Github repository Dokumentation, die alles über die Gitlab-Funktionalität beinhaltet.

 


Wie geht es mit dem Eco-CI-Projekt weiter?

Eine weitere Einsparung kann durch die Umplanung von Arbeit, die nicht zeitabhängig ist, auf Zeiten wo das Stromnetzes “grüner” ist erzielt werden. Dies ist eine geplante Funktion, die bald als separate Aktion entwickelt wird.

Auch hängende und im Leerlauf befindliche VMs werden derzeit in einem unserer Projekte angegangen, um sie abzuschalten und die Verschwendung von Leerlaufstrom zu stoppen

Schauen Sie doch auch gerne in unseren Blog um auf dem Laufenden zu bleiben.