
Fiori für ABAP - Deployment
Wie sieht es eigentlich mit dem Deployment von unserer Fiori Anwendung aus? Schauen wir uns verschiedene Einstellungen einmal im Detail an und stellen die App zur Verfügung.
Inhaltsverzeichnis
In diesem Artikel prüfen wir das Deployment und die verschiedenen Einstellungen innerhalb unserer Anwendung. Am Ende stellen wir die Anwendung im Launchpad zur Verfügung.
Einleitung
Bisher haben wir vor allem mit der Preview im Business Application Studio gearbeitet und uns unsere Sales App über die Standard-Tools angeschaut. Da war aber ein wichtiger Bestandteil die eigentliche Bereitstellung im ABAP-System und im echten Launchpad, um die Anwendung unserem Fachbereich zur Verfügung stellen zu können. Dazu sind verschiedene Schritte innerhalb der Konfiguration nötig, um später dann ein Deployment durchführen zu können.
Erstellung
Hier stellt man nun eigentlich die verschiedenen Einstellungen vor, die benötigt werden, um das Deployment durchzuführen. Dafür gibt es aktuell drei Wege, einmal den manuellen Anlageweg, die Anlage über die Application Information und die Anlage über den eigentlichen Fiori Wizard (SAP Fiori generator) bei der Anlage des Projekts.
Wizard
Bei den Projektattributen können wir entscheiden, ob wir die Deployment-Konfiguration direkt mit der Anlage des Projektes definieren. Dort sind die Optionen als Checkbox abgebildet und man muss sie aktiv aktivieren.
Hast du den Radio-Button aktiviert, erhältst du einen zusätzlichen Schritt in der Generierung des Projektes. Hier stehen die verschiedenen Felder und Informationen zur Verfügung, die du dem System mitgibst, um die Konfiguration vorzunehmen. Die verschiedenen Einstellungen schauen wir uns dann gleich noch mal im Detail in der eigentlichen Datei an.
Application Information
Bei einem Rechtsklick auf das webapp-Verzeichnis findest du auch die Application Information. Wenn du diese startest, ist das eine Übersichtsseite, die uns erste Eindrücke von der Anwendung gibt, beispielsweise, welche UI5-Version verwendet wird, welcher Service vorhanden ist und welche verschiedenen Seiten es im Projekt gibt.
Im unteren Bereich findest du auch verschiedene Einstellungen, wo du Konfigurationen wie die Launchpad-Konfiguration oder eine Deployment-Konfiguration noch einmal anlegen kannst. Wenn du auf den Add-Button klickst, wird der Wizard noch einmal neu gestartet und legt die Datei entsprechend im Verzeichnis an. Ein einfacher und sauberer Weg, um verpasste Konfigurationen noch einmal zu erzeugen.
Manuell
Natürlich kannst du die Datei auch manuell anlegen. Dabei musst du im Wurzelverzeichnis des Projektes einfach nur die Datei "ui5-deploy.yaml" anlegen und die entsprechenden Einstellungen im Projekt vornehmen. Weitere Infos zum Template findest du in der SAP Help. Grundsätzlich würden wir empfehlen, die Datei direkt bei der Generierung des Projektes mit anzulegen, da dies der einfachste Weg ist, die entsprechende Struktur zu erhalten.
Hinweis: Daher am besten die verschiedenen Wizards nutzen, um die Datei zu erzeugen. So ist sichergestellt, dass die Konfiguration den Anforderungen entspricht.
Datei
In der ui5-deploy.yaml findest du die eigentlichen Einstellungen für das Deployment in dein entsprechendes System. Diese Datei solltest du normalerweise auch im Projektverzeichnis speichern, damit deine Kollegen alle Informationen haben, in welches Artefakt und in welches System deployed wurde.
YAML
Bei YAML handelt es sich um ein spezielles Format für die Konfiguration von Services und Build-Pipelines in anderen Diensten. Dabei werden die verschiedenen Begriffe, Keywords und Einstellungen mit entsprechenden Einrückungen untereinandergebracht. Es werden keine Zeichen am Ende verwendet, sondern die Konfiguration wird direkt von oben nach unten geschrieben. Die entsprechenden Einrückungen bedeuten, dass diese Komponenten zu der übergeordneten, höher liegenden Komponente gehören. Weiterhin gibt es verschiedene Nomenklaturen für Felder und Auflistungen innerhalb der Datei.
Inhalt
Schauen wir uns einmal die Datei im Überblick an. Dabei findest du die typische Struktur einer YAML-Datei und bestimmte Komponenten, die automatisch in dieser Datei generiert wurden. Im nächsten Abschnitt schauen wir uns einmal die spezifischen Teile an, die uns mehr interessieren.
Unterhalb der "Configuration" findest du die Einstellungen zum Deployment es Projekts:
- target - Hier sind die Einstellungen des Zielsystems zu finden. Über den Destination Service wird die entsprechende Destination angegeben und dahinter das Zielsystem. In diesem Fall deployen wir auf ein ABAP-System. Unter URL finden wir das eigentliche System, in diesem Fall ein ABAP Environment, welches sich in der BTP befindet. Das Kennzeichen "scp" zeigt hier zusätzlich an, dass es sich um ein System innerhalb der BTP handelt.
- app - Im Bereich der Anwendung findest du Einstellungen zum deployten Artefakt, dem Zielpaket und dem Transport mit der eigentlichen Beschreibung. "name" ist das eigentliche ABAP-Artefakt, welches später im System angelegt wird und die entsprechende Beschreibung enthält. Das Artefakt legen wir in einem spezifischen Paket an, welches wir unter "package" angeben. Beim "transport" geben wir hier nicht die Aufgabe ein, sondern den Transport selbst. Beim Deployment wird das Artefakt dann an den entsprechenden Transport gehängt.
- exclude - Im Bereich exclude nehmen wir gewisse Ressourcen heraus, die wir nicht auf das System deployen wollen, wie zum Beispiel alles, was an Test-Artefakten für die Fiori-Entwicklung da ist. Diese können wir später mit GitHub sichern, müssen diese aber nicht in ein ABAP-System bringen, da sie zur Laufzeit nicht benötigt werden.
Prozess
Führen wir nun das eigentliche Deployment unserer Anwendung durch, um die BSP-Applikation im ABAP-System anzulegen.
Application Information
Im Bereich der Application Information, wie bereits oben beschrieben, findest du auch zusätzliche Optionen für automatisierte Aufgaben innerhalb des Projektes. So findest du dort auch einen Button, der das Deployment (Deploy) für uns übernimmt. Das Deployment funktioniert aber nur, wenn wir eine entsprechende Deployment-Konfiguration auch schon erzeugt haben.
Der nächste Schritt startet die Konsole und führt das eigentliche Deployment der Anwendung durch. Bevor das geschieht, werden die Artefakte fertig gebaut und für das Deployment vorbereitet. Im nächsten Schritt werden wir auch gefragt, ob wir das Deployment wirklich durchführen wollen, und erhalten noch eine kurze Zusammenfassung zu den verschiedenen Punkten. Diese bestätigen wir mit „Yes“ und das eigentliche Deployment wird auf dem System durchgeführt. Wurde das Deployment durchgeführt, sollten wir unsere BSP-Applikation im System finden. Es kann durchaus auch vorkommen, dass du beim Prozess eine Fehlermeldung bekommst, was an einer fehlenden Konfiguration liegt, die App aber trotzdem angelegt wurde.
Berechtigung
Nachdem das Artefakt im System deployed wurde, müssen wir ein Launchpad App Descriptor Item anlegen, um die entsprechende Fiori-Konfiguration für das Launchpad vorzubereiten. Diese können wir bereits über unsere Anwendung generieren oder, wie in unserem Fall, direkt im System. Weitere Informationen zur Anlage findest du in diesem Artikel.
Im Nachgang müssen wir dann unsere Anwendung unserer IAM-App zuordnen. Die IAM-App ordnen wir wieder einem Business-Katalog zu, und den Business-Katalog können wir uns dann entsprechend in einer Rolle vergeben, sodass wir die Berechtigung im System erhalten. Weitere Informationen zur Anlage und zur Berechtigung findest du in einem älteren Artikel zu diesem Thema. Weiterhin findest du auch Informationen auf YouTube, wenn du dir ein Tutorial dazu anschauen willst, wie wir das Deployment durchgeführt haben und entsprechende Anwendungen berechtigt haben.
Test
Haben wir nun alle Einstellungen erfolgreich im System angelegt, die Rolle berechtigt und zugeordnet, finden wir unsere eigentliche Anwendung nun im Launchpad wieder. Über den App-Finder finden wir die entsprechende Kachel, da wir sie aktuell keinem Space zugeordnet haben, und können dann unsere Anwendung im System starten.
Du solltest nun die gleiche Anwendung wiederfinden, wie wir sie bereits im Business Application Studio im Preview gesehen haben. Damit haben wir das Deployment durchgeführt und die Anwendung kann nun ganz normal berechtigt werden.
Fazit
Für das Deployment brauchen wir eine entsprechende Konfiguration, die wir in unserem Fiori-Projekt anlegen, entweder direkt zum Start bei der Generierung oder später, bevor wir das Deployment durchführen. Der Build und das Deployment sorgt dafür, dass eine entsprechende BSP-Applikation auf dem ABAP-System zur Verfügung gestellt wird, welche wir dann über die entsprechenden Einstellungen im Launchpad bekannt machen können, sodass auch unsere Endanwender auf die Anwendung zugreifen können.









