Releases werden auf Basis der Apps veröffentlicht. Apps bestehen aus einem Namen und einer Repository-URL, in der Regel ein Git-Repository, aus dem die App heruntergeladen werden kann. Apps können manuell gepflegt werden oder per Schnittstelle aus einem Gitlab-Repository ausgelesen werden.
Apps aus einer Gitlab-Instanz synchronisieren
Öffnen Sie das SaaS-Dashboard.
Öffnen Sie die SaaS-Konfiguration in der entsprechenden Kachel.
Pflegen Sie die folgenden Felder und speichern Sie.
Feld | Beschreibung |
---|---|
ID der GitLab-Obergruppe der brandbox-Produkte | Die Gruppen-ID aus GitLab, mit der die Apps aus den Untergruppen dieser Gruppe in die Tabelle "Apps" synchronisiert werden. |
ID der GitLab-Untergruppe mit core-Apps | Die Gruppen-ID der Untergruppe, die lizenzpflichtige Core-Apps enthält. Diese werden bei der Synchronisation entsprechend markiert. |
Öffnen Sie nun die GitLab API Config in der Kachel "GitLab".
Hinterlegen Sie die API-URL Ihrer GitLab-Installation mit einem Zugangstoken, der Leserechte für die oben definierten Gruppen und Projekte hat.
Öffnen Sie nun die Apps-Tabelle in der Kachel "Release".
Klicken Sie in der Toolbar auf "Apps synchronisieren" und bestätigen Sie.
Der Prozess lädt den Tab nach erfolgreicher Synchronisation neu und zeigt neue/geänderte Apps direkt an.
Hinweis |
---|
Ein Gitlab-Token kann nur ein Jahr gültig sein. Daher muss der Token jedes Jahr neu angelegt werden. Hierzu in Gitlab den User devops@konmedia.com impersonaten und in dessen Einstellungen einen Access-Token mit den Rechten api und read_repository anlegen. |
Apps indizieren
Diese Funktion erstellt eine Abhängigkeitskette der Apps untereinander auf Basis des Composer-Baums. Der Baum wird über Eltern-Kind-Beziehungen von App zu App erstellt. Diese Information wird für die Lizensierung von Apps und Produkten benötigt.
Da der Baum aus Metadaten der verwendeten Release-Technologie (Satis) basiert, kann die Indizierung erst nach einem initialen Release ausgelöst werden.
Öffnen Sie die Apps-Tabelle in der Kachel "Release".
Klicken Sie in der Toolbar auf "Apps indizieren" und bestätigen Sie.
Der Prozess lädt den Tab nach erfolgreicher Synchronisation neu.
Tipp: Stellen Sie in den Ansichtseinstellungen auf die Baum-Ansicht um, um die App-Beziehungen zu visualisieren.
...
Der Release-Prozess erstellt ein statisches Composer-Repository mit Satis. Die geschieht durch das Deployment eines Satis-Docker-Containers in Kubernetes. Für den Release wird eine Kubernetes-Anbindung benötigt, in dem das Release-Host-System selbst auch laufen muss.
Öffnen Sie im Administrations-Dashboard die Lokale Kubernetes Konfiguration in der Kachel "Kubernetes".
Hinterlegen Sie API-Endpunkt für die Kubernetes-API, einen API-Token sowie den Namespace, in dem Satis deployed werden soll.
Öffnen Sie die Apps-Tabelle in der Kachel "Release".
Klicken Sie in der Toolbar auf "Release starten" und bestätigen Sie.
Es erscheint eine Erfolgsmeldung, der Button "Release starten" wird ausgeblendet.
Der Prozess läuft asynchron und ist abgeschlossen, sobald der Button "Release starten" wieder erscheint. Hierzu die Ansicht in gewünschten Zeitabständen aktualisieren.
Hinweis: die Dauer des Releases hängt von der Anzahl Apps und deren getaggten Versionen ab.