Wenn Sie in einem größeren Unternehmen oder einer Agentur arbeiten, die viele Apps entwickelt und versendet, kann der Freigabeprozess sehr zeitaufwendig werde. In einem solchen Szenario sind viele Menschen involviert, wie z.B. die IT-Abteilung, Fachabteilung, App-Owner, die Tester und natürlich die Entwickler. Darüber hinaus verwenden all diese Menschen verschiedene Werkzeuge für die Aufgaben Entwicklung, Test und App-Verteilung, die zu einer Fragmentierung der IT-Infrastruktur und der Verbreitung von Zugangsdaten führt. Eine weitere wichtige Sache, die man beachten sollte, ist die Verantwortung für diese Tools und die Infrastruktur, die nur selten genutzt wird. Als Entwickler zum Beispiel möchte ich nicht für das Management der Quellcode-Repositorys und Infrastruktur für Continuous Integration verantwortlich sein. Als verantwortlicher IT-Infrastrukturmanager habe ich keine Ahnung, mit welchen Problemen man im Code der Business-App umgehen muss und wie die App mit dem CI-Tool erstellt wird. Währenddessen wächst die Nachfrage für schnellere App-Bereitstellung. Warum gibt es keine Infrastruktur, die diese Probleme ein für allemal lösen kann?
Die Kombination aus dem führenden Git-Repository und dem Continuous-Integration-Tool - GitLab und der Enterprise Mobility Lösung Relution. Ein vollständige App Lifecycle Management löst diese Probleme.
Der gesamte App-Release-Prozess, von der Einrichtung neuer App-Projekte bis hin zu der erforderlichen Infrastruktur, um Apps an Kunden zu versenden. Die App-Verteilung über Unternehmens- oder öffentliche App-Stores, kann hiermit vereinfacht und automatisiert werden.
Es muss nicht nachgewiesen werden, dass der Einsatz von Code Repositories und CI/CD-Tools (Wikipedia) Teams in Softwareprojekten bei der Entwicklung helfen. GitLab ist einer der drei großen Player da draußen (zusammen mit dem GitHub & BitBucket) und findet viel Anwendung, vor allem in Unternehmen und Behörden (laut GitLab-Website, wird es von mehr als 100.000 Unternehmen verwendet). Es verfügt über einen großen Funktionsumfang, der die gesamte App-Entwicklung abdeckt. Es hat eine riesige Community und viele Erweiterungs- und Scripting-Möglichkeiten. Eins der tollen Dinge an GitLab ist die Kombination von Git-Repositories und Continuous Delivery Build Jobs. Entwickler können ihren Code einchecken und definieren eine sogenannte.yml-Datei, die alle Befehle zum Kompilieren, Erstellen und Freigeben einer App beinhaltet. Der integrierte kontinuierliche Bereitstellungsmechanismus baut die App dann automatisch bei jedem neuen Commit auf.
Relution ist ein mobiles App Lifecycle Management Tool, das eine bestimmte Perspektive auf die Apps hat. Es unterstützt den Release-Lebenszyklus verschiedener App-Versionen und bietet eine Infrastruktur für das App-Management. Nachdem eine App in Relution hochgeladen wurde (natürlich kann dieser Schritt automatisiert werden), kann sie von den App-Besitzern in verschiedenen Phasen freigegeben werden. Sie können Berechtigungen für Entwickler, Tester und App-Besitzer definieren, damit die App in verschiedenen Phasen überprüft werden kann. Zusätzlich kann Relution Metadaten von Apps wie Beschreibungen und Screenshots verwalten, sowie die Apps automatisch neu signieren. Dies hilft insbesondere Unternehmen mit vielen externen Apps die von Agenturen angeliefert werden. Das Relution Signing hilft dabei, die Unternehmenszertifikate und sonstige kritische Daten im Unternehmen zu halten und diese nicht nach Extern verteilen zu müssen. Relution ermöglicht es Unternehmen auch, von einem eigenen App Store zu profitieren, der für Enterprise Apps genutzt wird. Diese Funktion wird hauptsächlich für Firmen-Apps verwendet, die nicht über die öffentlichen App-Stores verteilt werden sollen - wie z.B. interne Apps, CRM-Apps oder andere Geschäfts-Anwendungen.
Um auf das in der Einleitung beschriebene Problem zurückzukommen, möchten wir Ihnen eine Lösung zeigen, Folgend ist beschrieben, wie ein Workflow in der Realität mit GitLab und Relution aussehen könnte:
Relution nutzt viele der großartigen Funktionen von GitLab im Hintergrund. Wenn eine Entwicklungsumgebung von der IT genehmigt wird, wird ein neues Projekt-Repository angelegt. Es ist mit zwei wichtigen Dateien vorbelegt: die.yml-Datei und ein Uploadskript. Die .yml-Datei wird verwendet, um einen Build-Job einzurichten und das Upload-Skript wird für das Hochladen der App-Artefakte in Relution zur weiteren Verarbeitung verwendet. Zusätzlich werden die Entwicklerrechte automatisch auf dem GitLab-Server und im Repository festgelegt, so dass die definierten Entwickler mit ihrem SSH-Schlüssel mit dem Repository kommunizieren können. GitLab kann (muss aber nicht) im Hintergrund bleiben, da die Entwickler ihre Buildparameter in der .yml-Datei definieren können. Die erstellten Apps können über die Relution-App an die Entwickler verteilt werden (der Entwickler commited etwas und nach einer Weile erhält er die gebaute App auf seinem mobilen Gerät zur Prüfung). Natürlich müssen Entwickler ihren öffentlichen SSH-Schlüssel in Relution hochladen, bevor sie das Repository klonen können. Von nun an wird ein neuer Build auf dem ontinuous Integration Server ausgelöst, sobald ein Entwickler Änderungen am Master durchführt. Die Build-Artefakte (Apps), die durch einen erfolgreichen Build erstellt wurden, werden in Relution hochgeladen und sind mit der entsprechende Entwicklungsumgebung verknüpft. Hochgeladene Apps sind in der Relutionansicht App Store oder über den Development Hub sichtbar.
Kostenlos und zeitlich unbegrenzt für bis zu 5 Geräte & 5 Apps. Keine Zahlungsinformationen notwendig.