Dekorative Doppelhelix

Neue Funktion: Verwenden von privaten Git-Repositories mit AEM as a Cloud Service

In AEM as a Cloud Service oder dem von Adobe gehosteten AEM 6.5-Produkt (AEM Managed Services oder "AMS") gibt es seit langem die Anforderung , dass für die Bereitstellung von Code in einer von Adobe gehosteten Umgebung dieser Code zuerst in das gehostete Git-Repository von Adobe übertragen werden muss.

Die Begründung ist ziemlich einfach: Das Cloud Manager CI/CD-Framework von Adobe muss eine Reihe von Überprüfungen des Codes durchführen, dann Builds für diesen Code über den containerisierten Build-Dienst ausführen und dann auch in der Lage sein, Releases im Repository zu markieren, sobald die Produktionsbereitstellungen abgeschlossen sind.

Privat vs. Adobe Repos - Kontext

Es gab lange Zeit eine Reihe von Komplexitäten und Einschränkungen, mit denen AEMaaCS- und AMS-Kunden bei der Verwendung zu kämpfen hatten, was es zu einer äußerst wünschenswerten und gefragten Funktion gemacht hat, ein privates Git-Repository mit Cloud-gehostetem AEM verwenden zu können, wie z. B.:

Pflege von zwei Repos

Das Adobe Git-Repository ist nur ein Bereitstellungs-Repository . Es soll nicht das primäre Git sein, mit dem Sie arbeiten, um Ihre AEM-Site zu entwickeln. Es gibt kein SLA für Verfügbarkeit oder Backups. Beim Ausführen Ihres Projekts müssen Sie also Ihr eigenes internes Repository sowie das Adobe-Repository für die Bereitstellung verwalten und dann die Synchronisierung zwischen diesen Repositorys verwalten.

Adobe Repo fehlen Funktionen wie Pull Requests

Es gibt eine Reihe von Funktionen, die der Adobe Git-Implementierung fehlen, was bestimmte Pipelines in der Frühphase etwas schwierig macht. Das Adobe Git verfügt beispielsweise nicht über Threading oder Pull Requests.

Dies wird zu einem Problem, wenn die Adobe CI/CD-Pipeline der einzige Ort ist, an dem Sie wirklich die gesamte Suite von Build-Automatisierungstests ausführen können, die Dinge wie Sicherheitsverletzungen, Leistungseinbußen, Verstöße gegen Sonarqube-Regeln usw. aufdecken würden.
Wenn Sie also eine neue Funktion haben, für die Sie eine PR öffnen möchten, von der Sie glauben, dass sie die Website schneller macht, müssen Sie diese PR auf Ihrem eigenen Github öffnen, Ihr Lead muss sie "genehmigen", auch wenn wir nicht wissen, ob sie die Build-Prüfungen besteht, Sie übergeben sie dann an das Adobe Git, an welchem Punkt es vielleicht SCHEITERT und dann war Ihre PR irgendwie wertlos.

Sicherheit & Benutzerverwaltung

Es gibt keine fein abgestimmten Steuerelemente für das Adobe-Git, um die Benutzerverwaltung und den Benutzerzugriff zu steuern. Am Ende müssen Sie also Ihre eigene Sicherheit in Ihrem eigenen Git implementieren und sich dann auf die Build-Automatisierung verlassen, die Sie auf Ihrer Seite erstellen, um zu versuchen, zu begrenzen, welche Branches, Commits, Änderungen usw. in das Adobe Git gelangen. Es ist möglich, fügt aber nur eine fehleranfällige Ebene der Rube-Goldberg-Komplexität hinzu.

Private Git-Repositories für AEM as a Cloud Service & AMS: Was hat Adobe veröffentlicht?

Um es klar zu sagen: Dies ist eine erste allgemeine Version dieser Funktion (die dieses Jahr auf dem Adobe Summit angekündigt wurde und im vergangenen Jahr mit verschiedenen Kunden in der Vorschau war). Daher unterstützt es nicht JEDE Funktion, die Sie sich wünschen, und es gibt eine Reihe von Einschränkungen, die Sie beachten sollten. Aber es ist ein großer Schritt vorwärts für diejenigen, die in dieser Welt leben, also werde ich versuchen, ein paar Dinge zu skizzieren, die es tun kann und was nicht.

Was Sie jetzt tun können:

Was Sie noch nicht tun können:

Perfektionieren Ihrer AEM-Pipeline

Wenn dies nach etwas aussieht, das Sie vielleicht selbst ausprobieren möchten, finden Sie hier die Dokumentation zu den ersten Schritten mit selbstverwaltetem Github in AEM.

Wenn Sie sich jedoch nicht sicher sind, ob Sie dies implementieren möchten oder nicht, oder wenn Sie andere Bereitstellungs- oder CI/CD-Sorgen haben, über die Sie sprechen möchten, spreche ich gerne mit Ihnen!

Um mehr zu diesem Thema zu erfahren (wenn Sie Podcasts mögen), diskutieren unser CTO Dwayne Hale und ich hier die Vor- und Nachteile des Betriebs von Cloud- und selbst gehosteten AEM-Geräten.

https://www.youtube.com/watch?v=Z2p2iY-b20M

Tad Reeves

Leitender Architekt bei Arbory Digital

AEM Architect & DevOps mit 14 Jahren Erfahrung in AEM/CQ und 25+ Jahren in der Systeminfrastruktur. Er fährt schon länger Mountainbike, als er sich um die Systemadministration kümmert, und obwohl er ursprünglich aus Maine stammt, lebt er in den Bergen im Nordwesten von Georgia.

Kontaktieren Sie Tad auf Linkedin

Gefällt Ihnen, was Sie gehört haben? Haben Sie Fragen dazu, was für Sie das Richtige ist? Wir würden uns freuen, mit Ihnen zu sprechen! Kontaktieren Sie uns

Podcast-Episoden & Blogbeiträge

Was ist AEM? Wofür wird AEM verwendet? Eine grundlegende Erklärung von AEM für Anfänger - Arbory Digital Podcast Ep6
Was ist AEM? Wofür wird Adobe Experience Manager verwendet? Wir haben versucht, in 30 Minuten oder weniger zu erklären, was AEM ist und tut - und irgendwie haben wir es geschafft, obwohl die Feuerwehr zufällig etwa 19 Minuten nach der Podcast-Aufnahme auftauchte!
Optimierung der Site-Performance in China für AEM und andere Plattformen
Wie viel wissen Sie über die Tools, die Ihnen zur Verfügung stehen, um die Leistung Ihrer Website auf dem chinesischen Festland zu optimieren? Und selbst wenn Sie keine chinesischsprachige Website haben, müssen Sie sich um die Leistung in China kümmern? SIE TUN!
Gibt es selbst gehostetes AEM immer noch? In der heutigen Edge-Delivery-Welt neu interpretiert
Im heutigen Krieg zwischen Cloud-Rückführung und blitzschnellen neuen Edge-Delivery-Services wollen wir uns noch einmal die Frage stellen: Ist selbst gehostetes AEM immer noch ein Thema?