Einrichten und Konfigurieren von GitLab für Edge Delivery Services
Um Inhalte mithilfe von GitLab von Experience Manager Guides in Edge Delivery Services (EDS) zu veröffentlichen, verbinden Sie ein GitLab-Repository über die Cloud Manager-Funktion Eigenes Git (BYOG) hinzufügen mit Ihrer EDS-Site. In diesem Artikel werden die Schritte nacheinander aufgelistet. Einzelheiten zu den einzelnen Schritten finden Sie in der entsprechenden Dokumentation.
Funktionsweise
- Ein GitHub-Repository erstellt die EDS-Site über die AEM Code Sync -App.
- Ein GitLab-Repository speichert die von Experience Manager Guides veröffentlichten Inhalte.
- Cloud Manager verbindet beide, indem GitLab-Push-Ereignisse (Webhook) empfangen und mit der EDS-Site synchronisiert werden.
Voraussetzungen
- Zugriff auf GitHub und GitLab (GitLab.com oder selbst gehostet) zum Erstellen von Repositorys und Token.
- Zugriff auf Cloud Manager mit einer Rolle, die das Hinzufügen von Repositorys ermöglicht (Bereitstellungs-Manager oder Geschäftsinhaber).
- Systemadministrator oder API-Entwicklerrolle in Ihrem Adobe-Unternehmen, um die Cloud Manager-API-Integration zu erstellen.
- Eine im Konfigurations-Service registrierte
aem.live. Weitere Informationen finden Sie unter Einrichten des Konfigurationsdienstes.
Konfigurieren von GitLab für Edge Delivery Services
Um GitLab für die Verwendung mit Edge Delivery Services zu konfigurieren, führen Sie die folgenden Schritte in der angegebenen Reihenfolge aus, um eine ordnungsgemäße Einrichtung und Integration sicherzustellen.
1. Erstellen der EDS-Site mit GitHub
Erstellen Sie ein GitHub-Repository aus dem AEM Guides-Textbaustein und installieren Sie die AEM Code Sync -App darauf. Speichern Sie die generierte Live-URL (https://<branch>--<github-repo>--<github-username>.aem.live) für später.
Anweisungen hierzu finden Sie unter Erstellen eines GitHub-Repositorys für EDS und Verbinden von GitHub mit Adobe über die AEM-Codesynchronisierung.
2. Erstellen des GitLab-Repositorys
Erstellen Sie ein separates GitLab-Repository (z. B. my-eds-gitlab) aus demselben AEM Guides-Textbaustein. Experience Manager Guides veröffentlicht die generierte Ausgabe in diesem Repository. EDS erwartet eine main.
Um das Repository zu erstellen, erstellen Sie entweder ein leeres Projekt und übertragen Sie den Inhalt von aem-guides-boilerplate oder importieren Sie das Boilerplate in ein neues Projekt. Anweisungen hierzu finden Sie unter Erstellen eines Projekts und Importieren Ihres Projekts von GitHub nach GitLab in der GitLab-Dokumentation.
3. Konfigurieren der Bereitstellungspunkt-URL
Aktualisieren Sie im GitHub-Repository fstab.yaml so, dass die Inhaltsquelle auf das GitLab-Repository verweist, und übertragen Sie die Änderung auf main.
https://<worker URL>/gitlab/<git acc domain>/<git username>/<git repo>/main/docs
<worker URL><git acc domain>gitlab.com, oder Ihre selbst gehostete Domain.<git username><git repo>main / docs4. Erstellen von GitLab-Zugriffstoken
Erstellen Sie die Zugriffstoken, die für Folgendes erforderlich sind:
- Cloud Manager, um das Repository zu validieren und darauf zuzugreifen. Weitere Informationen finden Sie unter Hinzufügen externer Repositorys in Cloud Manager.
- Experience Manager Guides-Veröffentlichungsprofil, um die veröffentlichte Ausgabe zu übertragen. Erstellen Sie ein GitLab-Projekt-Zugriffstoken mit der Rolle Entwickler und dem
api. Weitere Informationen finden Sie in der GitLab-Dokumentation.
5. Hinzufügen des GitLab-Repositorys zu Cloud Manager
Gehen Sie in Cloud Manager zu Repositorys > Repository hinzufügen, wählen Sie Privates Repository aus und überprüfen Sie die Eigentümerschaft mithilfe des Zugriffstokens. Warten Sie, bis der Repository-Status Bereit ist. Die BYOG-Option ist erst verfügbar, wenn mindestens ein externes Repository bereit ist.
Anweisungen hierzu finden Sie unter Hinzufügen externer Repositorys in Cloud Manager.
6. Generieren eines Cloud Manager-API-Schlüssels
Erstellen Sie eine API-Integration in Adobe Developer Console (Cloud Manager API, OAuth Server-to-Server) und kopieren Sie die Client-ID (API-Schlüssel).
Anweisungen hierzu finden Sie unter Erstellen eines API-Integrationsprojekts.
7. Konfigurieren des GitLab-Webhooks
Wählen Sie in Cloud Manager Webhook konfigurieren für das Repository aus und kopieren Sie die Webhook-URL und Secret. Hängen Sie den API-Schlüssel an die URL an (<webhook URL>&api-key=<CLIENT_ID>). Wechseln Sie in GitLab zu Einstellungen > Webhooks, fügen Sie die URL und das Geheimnis hinzu, wählen Sie die main Verzweigung aus und aktivieren Sie Push-Ereignisse.
Weitere Informationen finden Sie unter Konfigurieren des externen Repositorys in Cloud Manager.
8. Hinzufügen der EDS-Site zu Cloud Manager
Wechseln Sie in Cloud Manager zu Edge Delivery > Edge Delivery-Site hinzufügen und geben Sie die in Schritt 1 gespeicherte Live-URL ein. Führen Sie die Eigentümervalidierung durch.
Anweisungen hierzu finden Sie unter Hinzufügen einer Edge Delivery-Site.
9. Verbinden Sie das Repository mit Bring Your Own Git
Wählen Sie auf der EDS-Website in Cloud Manager Eigenes Git (BYOG), wählen Sie das GitLab-Repository aus und bestätigen Sie. Kopieren Sie die generierten geheimen Daten und speichern Sie sie sicher. Er wird nur einmal angezeigt und es wird ein neuer geheimer Schlüssel generiert, wenn Sie die Site neu konfigurieren.
Weitere Informationen finden Sie unter Konfigurieren Ihrer Edge Delivery-Site in Cloud Manager.
10. Konfigurieren der EDS-Site für die Verwendung von Cloud Manager
Setzen Sie die Code-Quelle der EDS-Site auf das Cloud Manager-Repository, indem Sie die Programm-ID (/program/<PROGRAM_ID>/) und Repository-ID (/repo/<REPO_ID>/) aus der Webhook-URL verwenden. Erstellen Sie dann aus Schritt 9 geheime Daten mit dem Namen cm-byog mit den geheimen Daten.
Für die Admin-API-Aufrufe anzeigen Sie Konfigurieren Sie Ihre AEM-Site für die Verwendung von Cloud Manager.
11. Synchronisieren und überprüfen
Wählen Sie in Cloud Manager Code synchronisieren aus dem Menü der Site aus und wählen Sie die main. Öffnen Sie dann https://main--<site>--<org>.aem.page, um die Site zu überprüfen.
Weitere Informationen finden Sie unter Trigger der ersten Synchronisierung und AEM-Site überprüfen.
12. Aus Experience Manager Guides veröffentlichen
Erstellen Sie ein EDS-Veröffentlichungsprofil mit Git-Kontotyp , der auf GitLab festgelegt ist, unter Verwendung des Projektzugriffs-Tokens aus Schritt 4. Wählen Sie dann dieses Profil in einer EDS-Ausgabevorgabe aus und generieren Sie die Ausgabe. Die Ausgabe wird in den docs des GitLab-Repositorys übertragen.
Anweisungen hierfür finden Sie Erstellen des EDS-Veröffentlichungsprofils und Erstellen einer Ausgabevorgabe für EDS und Generieren einer Ausgabe.
Fehlerbehebung
- Site zeigt alten Inhalt nach einer Push-Benachrichtigung an Überprüfen Sie, ob der Webhook Ereignisse an Cloud Manager sendet, und überprüfen Sie dann den Status des neuesten Synchronisierungsauftrags.
- Synchronisierungsfehler
Unable to fetch hlxignore: 401: Dascm-byogist falsch. Erstellen Sie sie mit den geheimen Daten aus Schritt 9 neu. - Repository ist mit einer anderen Website verknüpft Ein Cloud Manager-Repository kann jeweils nur mit einer Website verknüpft werden. Um ein Repository für mehrere Sites freizugeben, verwenden Sie Repoless.
Weitere Informationen finden Sie unter Fehlerbehebung in „Eigenes Git einbringen.