Installation et configuration de GitLab pour Edge Delivery Services
Pour publier du contenu de Experience Manager Guides vers Edge Delivery Services (EDS) à l’aide de GitLab, connectez un référentiel GitLab à votre site EDS à l’aide de la fonctionnalité Cloud Manager Apporter votre propre Git (BYOG). Cet article répertorie les étapes dans l’ordre. Pour plus d’informations sur chaque étape, consultez la documentation associée.
Fonctionnement
- Un référentiel GitHub crée le site EDS via l’application de synchronisation de code AEM.
- Un référentiel GitLab stocke le contenu publié à partir de Experience Manager Guides.
- relie les deux en recevant les événements push GitLab (webhook) et en les synchronisant avec le site EDS.
Conditions préalables
- Accès à GitHub et GitLab (GitLab.com ou auto-hébergé) pour créer des référentiels et des jetons.
- Accès à Cloud Manager, avec un rôle qui permet d’ajouter des référentiels (Responsable de déploiement ou Propriétaire de l’entreprise).
- Rôle d’administrateur système ou de développeur d’API dans votre organisation Adobe pour créer l’intégration de l’API Cloud Manager.
- Organisation
aem.liveenregistrée dans le service de configuration. En savoir plus dans Configuration du service de configuration.
Configuration de GitLab pour Edge Delivery Services
Pour configurer GitLab en vue de son utilisation avec Edge Delivery Services, procédez comme suit dans l’ordre spécifié afin d’assurer une configuration et une intégration correctes.
1. Créer le site EDS à l’aide de GitHub
Créez un référentiel GitHub à partir du standard AEM Guides et installez-y l’application de synchronisation du code AEM. Enregistrez l’URL en direct (https://<branch>--<github-repo>--<github-username>.aem.live) générée pour plus tard.
Pour connaître les étapes, voir Création d’un référentiel GitHub pour EDS et Connexion de GitHub à Adobe via la synchronisation de code AEM.
2. Création du référentiel GitLab
Créez un référentiel GitLab distinct (par exemple, my-eds-gitlab) à partir de la même norme standard AEM Guides. Experience Manager Guides publie la sortie générée dans ce référentiel. EDS attend une branche main.
Pour créer le référentiel, créez un projet vierge et transmettez-y le contenu du aem-guides-boilerplate ou importez-le dans un nouveau projet. Pour connaître les étapes, voir Créer un projet et Importer votre projet de GitHub vers GitLab dans la documentation GitLab.
3. Configurer l’URL du point de montage
Dans le référentiel GitHub, mettez à jour fstab.yaml afin que la source de contenu pointe vers le référentiel GitLab, puis validez la modification dans main.
https://<worker URL>/gitlab/<git acc domain>/<git username>/<git repo>/main/docs
<worker URL><git acc domain>gitlab.com, ou votre domaine auto-hébergé.<git username><git repo>main / docs4. Création de jetons d’accès GitLab
Créez le ou les jetons d’accès requis pour :
- , pour valider et accéder au référentiel. Pour en savoir plus, consultez la section Ajouter des référentiels externes dans Cloud Manager.
- Profil de publication, pour valider la sortie publiée. Créez un jeton d’accès au projet GitLab avec le rôle Développeur et la portée
api. Pour en savoir plus, consultez la documentation GitLab.
5. Ajout du référentiel GitLab à Cloud Manager
Dans Cloud Manager, accédez à Référentiels > Ajouter un référentiel, sélectionnez Référentiel privé et validez la propriété à l’aide du jeton d’accès. Patientez jusqu’à ce que le statut du référentiel soit Prêt. L’option BYOG n’est disponible qu’une fois qu’au moins un référentiel externe est Prêt.
Pour connaître les étapes, voir Ajouter des référentiels externes dans Cloud Manager.
6. Générer une clé API Cloud Manager
Créez une intégration d’API dans Adobe Developer Console (API Cloud Manager, OAuth de serveur à serveur) et copiez l’ID client (clé API).
Pour connaître les étapes, voir Création d’un projet d’intégration d’API.
7. Configuration du webhook GitLab
Dans Cloud Manager, sélectionnez Configurer le Webhook pour le référentiel et copiez les URL du Webhook et Secret. Ajoutez la clé API à l’URL (<webhook URL>&api-key=<CLIENT_ID>). Dans GitLab, accédez à Paramètres > Webhooks, ajoutez l’URL et le secret, sélectionnez la branche main et activez Événements push.
Pour plus d’informations, consultez Configuration de votre référentiel externe dans Cloud Manager.
8. Ajout du site EDS à Cloud Manager
Dans Cloud Manager, accédez à Edge Delivery > Ajouter un site Edge Delivery et saisissez l’URL en direct enregistrée à l’étape 1. Effectuez la validation de la propriété.
Pour connaître les étapes, voir Ajouter un site Edge Delivery.
9. Connecter le référentiel à l’aide de l’option Apporter votre propre Git
Sur le site EDS de Cloud Manager, sélectionnez Apporter votre propre Git (BYOG), choisissez le référentiel GitLab, puis confirmez. Copiez et stockez en toute sécurité le secret généré. Il n’est affiché qu’une seule fois et un nouveau secret est généré si vous reconfigurez le site.
Pour plus d’informations, consultez Configuration de votre site Edge Delivery dans Cloud Manager.
10. Configuration du site EDS pour utiliser Cloud Manager
Définissez la source de code du site EDS sur le référentiel Cloud Manager, à l’aide des ID de programme (/program/<PROGRAM_ID>/) et ID de référentiel (/repo/<REPO_ID>/) de l’URL du webhook. Créez ensuite un secret nommé exactement cm-byog avec le secret de l’étape 9.
Pour les appels d’API d’administration, consultez Configuration de votre site AEM pour utiliser Cloud Manager.
11. Synchroniser et vérifier
Dans Cloud Manager, sélectionnez Code de synchronisation dans le menu du site et choisissez la branche main. Ouvrez ensuite https://main--<site>--<org>.aem.page pour vérifier le site.
Pour plus d’informations, consultez les sections Déclencher votre première synchronisation et Vérifier votre site AEM.
12. Publier à partir de Experience Manager Guides
Créez un profil de publication EDS avec le type de compte Git défini sur GitLab, à l’aide du jeton d’accès au projet de l’étape 4. Sélectionnez ensuite ce profil dans un paramètre prédéfini de sortie EDS et générez la sortie. La sortie est validée dans le dossier docs du référentiel GitLab.
Pour connaître les étapes, consultez les sections Créer le profil de publication EDS et Créer un paramètre prédéfini de sortie pour EDS et générer une sortie.
Résolution des problèmes
- Le site affiche l’ancien contenu après une notification push : vérifiez que le webhook diffuse les événements vers Cloud Manager, puis vérifiez le statut de la dernière tâche de synchronisation.
- Erreur de synchronisation
Unable to fetch hlxignore: 401: le secretcm-byogest incorrect. Recréez-le avec le secret de l’étape 9. - Référentiel lié à un autre site : un référentiel Cloud Manager ne peut être lié qu’à un seul site à la fois. Pour partager un référentiel sur plusieurs sites, utilisez Repoless.
Pour plus d’informations, consultez la section Dépannage dans Apporter votre propre Git.