Configurazione di GitLab per Edge Delivery Services
Per pubblicare contenuti da Experience Manager Guides a Edge Delivery Services (EDS) utilizzando GitLab, connetti un archivio GitLab al tuo sito EDS tramite la funzionalità Bring Your Own Git (BYOG) di Cloud Manager. Questo articolo elenca i passaggi in sequenza. Per informazioni dettagliate su ciascun passaggio, consulta la documentazione collegata.
Come funziona
- Un archivio GitHub crea il sito EDS tramite l’app AEM Code Sync.
- Un repository GitLab memorizza il contenuto pubblicato da Experience Manager Guides.
- Cloud Manager collega i due eventi tramite la ricezione di eventi push GitLab (webhook) e la loro sincronizzazione con il sito EDS.
Prerequisiti
- Accesso a GitHub e GitLab (GitLab.com o self-hosted) per creare archivi e token.
- Accesso a Cloud Manager, con un ruolo che consente di aggiungere archivi (Responsabile della distribuzione o Proprietario business).
- Amministratore di sistema o sviluppatore API nella tua organizzazione Adobe per creare l’integrazione API di Cloud Manager.
- Organizzazione
aem.liveregistrata nel servizio di configurazione. Ulteriori informazioni sono disponibili in Configurazione del servizio.
Configurare GitLab per Edge Delivery Services
Per configurare GitLab per l’utilizzo con Edge Delivery Services, esegui i seguenti passaggi nella sequenza specificata per garantire la corretta configurazione e integrazione.
1. Creare il sito EDS tramite GitHub
Crea un archivio GitHub dalla piattaforma standard AEM Guides e installa su di esso l’app AEM Code Sync. Salva l’URL live (https://<branch>--<github-repo>--<github-username>.aem.live) generato per dopo.
Per i passaggi, visualizzare Creare un archivio GitHub per EDS e Connettere GitHub ad Adobe tramite AEM Code Sync.
2. Creare l’archivio GitLab
Creare un archivio GitLab separato (ad esempio, my-eds-gitlab) dalla stessa piattaforma standard di AEM Guides. Experience Manager Guides pubblica l’output generato in questo archivio. EDS richiede un ramo main.
Per creare l’archivio, creare un progetto vuoto e inviarvi il contenuto di aem-guides-boilerplate oppure importare la boilerplate in un nuovo progetto. Per i passaggi, visualizza Crea un progetto e Importa il progetto da GitHub a GitLab nella documentazione di GitLab.
3. Configurare l’URL del punto di montaggio
Nell’archivio GitHub, aggiornare fstab.yaml in modo che l’origine di contenuto punti all’archivio GitLab e confermare la modifica in main.
https://<worker URL>/gitlab/<git acc domain>/<git username>/<git repo>/main/docs
<worker URL><git acc domain>gitlab.com, o dominio con hosting autonomo.<git username><git repo>main / docs4. Creare token di accesso GitLab
Crea i token di accesso necessari per:
- Cloud Manager, per convalidare e accedere all’archivio. Ulteriori informazioni in Aggiungere archivi esterni in Cloud Manager.
- Profilo pubblicazione Experience Manager Guides, per eseguire il commit dell’output pubblicato. Crea un token di accesso al progetto GitLab con il ruolo Sviluppatore e l’ambito
api. Ulteriori informazioni sono disponibili nella documentazione GitLab.
5. Aggiungere l’archivio GitLab a Cloud Manager
In Cloud Manager, vai a Archivi > Aggiungi archivio, seleziona Archivio privato e convalida la proprietà utilizzando il token di accesso. Attendere che lo stato dell’archivio sia Pronto. L’opzione BYOG è disponibile solo dopo che almeno un archivio esterno è pronto.
Per i passaggi, visualizza Aggiungi archivi esterni in Cloud Manager.
6. Generare una chiave API Cloud Manager
Creare un’integrazione API in Adobe Developer Console (API Cloud Manager, Server-to-Server OAuth) e copiare il ID client (chiave API).
Per i passaggi, visualizzare Creazione di un progetto di integrazione API.
7. Configurare il webhook GitLab
In Cloud Manager, selezionare Webhook di configurazione per l’archivio e copiare l’URL del webhook e il segreto. Aggiungere la chiave API all’URL (<webhook URL>&api-key=<CLIENT_ID>). In GitLab, vai a Impostazioni > Webhook, aggiungi l’URL e il segreto, seleziona il ramo main e abilita Eventi push.
Per ulteriori dettagli, visualizzare Configurare l’archivio esterno in Cloud Manager.
8. Aggiungere il sito EDS a Cloud Manager
In Cloud Manager, vai a Edge Delivery > Aggiungi sito Edge Delivery e immetti l’URL live salvato nel passaggio 1. Completare la convalida della proprietà.
Per i passaggi, visualizza Aggiungi un sito Edge Delivery.
9. Connettere l’archivio utilizzando Porta il tuo Git
Nel sito EDS di Cloud Manager, seleziona Porta il tuo Git (BYOG), scegli l’archivio GitLab e conferma. Copia e archivia in modo sicuro il segreto generato. Viene visualizzato una sola volta e viene generato un nuovo segreto se riconfiguri il sito.
Per informazioni dettagliate, visualizza Configura il tuo sito Edge Delivery in Cloud Manager.
10. Configurare il sito EDS per l’utilizzo di Cloud Manager
Impostare l’origine codice del sito EDS nel repository di Cloud Manager utilizzando l’ID programma (/program/<PROGRAM_ID>/) e l’ID repository (/repo/<REPO_ID>/) dall’URL del webhook. Quindi creare un segreto denominato esattamente cm-byog con il segreto del passaggio 9.
Per le chiamate API amministratore, visualizza Configura il tuo sito AEM per utilizzare Cloud Manager.
11. Sincronizza e verifica
In Cloud Manager, selezionare Sincronizza codice dal menu del sito e scegliere il ramo main. Quindi apri https://main--<site>--<org>.aem.page per verificare il sito.
Per ulteriori dettagli, visualizza Attiva la prima sincronizzazione e Verifica il tuo sito AEM.
12. Pubblica da Experience Manager Guides
Creare un profilo di pubblicazione EDS con il tipo di account Git impostato su GitLab, utilizzando il token di accesso al progetto del passaggio 4. Quindi selezionate questo profilo in un predefinito di output EDS e generate l’output. L’output viene confermato nella cartella docs dell’archivio GitLab.
Per i passaggi, visualizzare Creare il profilo di pubblicazione EDS e Creare un predefinito di output per EDS e generare l’output.
Risoluzione di problemi
- Il sito visualizza contenuto precedente dopo un messaggio push: Verificare che il webhook stia distribuendo eventi a Cloud Manager, quindi controllare lo stato del processo di sincronizzazione più recente.
- Errore di sincronizzazione
Unable to fetch hlxignore: 401: Il segretocm-byognon è corretto. Ricrea il segreto dal passaggio 9. - Archivio collegato a un altro sito: Un archivio Cloud Manager può essere collegato a un solo sito alla volta. Per condividere un repository tra siti, utilizzare Ripoless.
Per ulteriori dettagli, vedi Risoluzione dei problemi in Porta il tuo Git.