Dipl. Informatiker/in HF Fachrichtung Applikation
Branch Manager
CI-Tool zur Automatisierung von Aufgaben für einen Branchabzug
Ein Branchabzug wird durch eine neue Programmversion ausgelöst. Für die Software Repositories des Programms werden neue Branches angelegt, Dateien bearbeitet, Continuous Integration Builds erstellt und vieles mehr. Diese Aufgaben werden über einen Workflow verarbeitet.
Ausgangslage
Die KMS Software "nest" wird durch mehrere fachbereichsspezifische Teams (u. a. Veranlagung, Bezug, Quellensteuer) entwickelt. Jedes Team arbeitet in einem eigenen Software-Repository (Subversion und Git). Soll eine neue nest Programmversion an den Kunden ausgeliefert werden, muss ein Branchabzug dieser Repositories geschehen.
Ein solcher Branchabzug kommt mit einigen repetitiven Arbeiten in Subversion, Git, TeamCity und Octopus. Diese werden aktuell von Hand für jedes Repository durch einen Mitarbeiter im Infrastructure-Team durchgeführt.
Umsetzung
Die Applikation dieser Diplomarbeit übernimmt einen Teil dieser Aufgaben und automatisiert sie. Die einzelnen Aufgaben werden über einen Workflow verarbeitet. Der Workflow verarbeitet einzelne Arbeitsschritte, die in einer Workflow Configuration festgelegt werden. Die Configuration erlaubt eine einfache Erweiterung des Workflows und ermöglicht eine parallele und asynchrone Verarbeitung der Arbeitsschritte.
Anhand der Parameter, die der Benutzer der Applikation übergibt und der Konfigurations-Datei entscheidet sich der Workflow, welche Arbeitsschritte er verarbeitet.
Ergebnis
Ein Branchabzug kann mit einem Klick gestartet werden und dauert nur noch wenige Sekunden. Ein mühsames Lesen der Anleitung für den Branchabzug fällt weg.
Es sind keine manuellen Datei Manipulationen mehr nötig, wodurch das Risiko von Fehlern gesenkt wurde.