Double hélice décorative

Nouvelle fonctionnalité : Utilisation de dépôts Git privés avec AEM as a Cloud Service

Dans AEM as a Cloud Service ou dans le produit AEM 6.5 hébergé par Adobe (AEM Managed Services ou "AMS"), le déploiement d' un code dans un environnement hébergé par Adobe exige depuis longtemps que ce code soit d'abord enregistré dans le dépôt git hébergé par Adobe.

Le raisonnement est assez simple - le cadre CI/CD Cloud Manager d'Adobe doit effectuer un certain nombre de vérifications sur le code, puis exécuter des constructions sur ce code à partir de leur service de construction conteneurisé, et enfin être en mesure de marquer les versions dans le repo une fois que les déploiements de production sont terminés.

Dépôts privés ou Adobe - Contexte

Les clients d'AEMaaCS et d'AMS ont longtemps dû faire face à un certain nombre de complexités et de limitations lors de l'utilisation de ce système, ce qui a fait de la possibilité d'utiliser un repo git privé avec AEM hébergé dans le nuage une fonctionnalité très souhaitable et recherchée :

Gestion de deux dépôts

Le dépôt Adobe git n'est qu'un dépôt de déploiement. Il n'est pas destiné à être le git principal à partir duquel vous travaillez pour développer votre site AEM. Il n'y a pas d'accord de niveau de service pour la disponibilité ou les sauvegardes. Ainsi, dans le cadre de votre projet, vous devez maintenir votre propre dépôt interne ainsi que le dépôt d'Adobe pour le déploiement, et gérer la synchronisation entre ces dépôts.

Le repo d'Adobe manque de fonctionnalités comme les demandes d'extraction (pull requests)

L'implémentation d'Adobe git manque d'un certain nombre de fonctionnalités, ce qui complique quelque peu la mise en place de certains pipelines à un stade précoce. Par exemple, le git d'Adobe n'a pas de threading ou de pull requests.

Cela devient un problème lorsque le pipeline Adobe CI/CD est le seul endroit où vous pouvez vraiment exécuter la suite complète de tests d'automatisation de la construction qui montrerait des choses comme les violations de sécurité, la dégradation des performances, les violations des règles Sonarqube, etc.
Donc, si vous avez une nouvelle fonctionnalité sur laquelle vous voulez ouvrir un PR qui - disons - rend le site plus rapide, vous devez ouvrir ce PR sur votre propre Github, votre responsable doit l'"approuver" même si nous ne savons pas s'il passe les contrôles de construction, vous le livrez ensuite à travers le git d'Adobe à un moment où il peut échouer et votre PR était alors en quelque sorte sans valeur.

Sécurité & Gestion des utilisateurs

Il n'y a pas de contrôles fins sur Adobe git pour contrôler l'accès à la gestion des utilisateurs &. Vous devez donc mettre en place votre propre sécurité sur votre propre git, puis vous appuyer sur l'automatisation de la construction que vous créez de votre côté pour tenter de limiter les branches, les commits, les changements, etc. qui arrivent sur le git d'Adobe. C'est possible, mais cela ne fait qu'ajouter un niveau de complexité Rube Goldberg propice aux erreurs.

Dépôts Git privés pour AEM as a Cloud Service & AMS : Qu'est-ce qu'Adobe a publié ?

Pour être clair, il s'agit de la première version générale de cette fonctionnalité (annoncée lors du sommet Adobe de cette année et testée en avant-première auprès de plusieurs clients au cours de l'année écoulée). En tant que tel, il ne prend pas en charge TOUTES les fonctionnalités que vous pourriez souhaiter, et il existe un certain nombre de limitations dont vous devez être conscient. Mais c'est un grand pas en avant pour ceux qui vivent dans ce monde, et je vais donc essayer d'esquisser un certain nombre de choses qu'il peut et ne peut pas faire.

Ce que vous pouvez faire maintenant :

Ce que vous ne pouvez pas encore faire :

Perfectionner votre pipeline AEM

Si cela vous semble quelque chose à essayer vous-même, la documentation est ici sur la façon de démarrer avec Github autogéré dans AEM.

Cependant, si vous n'êtes pas sûr de vouloir mettre en œuvre cette solution, ou si vous avez d'autres problèmes de déploiement ou de CI/CD dont vous voulez discuter, je suis à votre disposition !

Par ailleurs, pour en savoir plus sur le sujet (si vous aimez les podcasts), notre CTO Dwayne Hale et moi-même discutons ici des mérites et des inconvénients de l'utilisation d'un équipement AEM hébergé dans le nuage par rapport à un équipement AEM auto-hébergé.

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

Tad Reeves

Architecte principal chez Arbory Digital

Architecte AEM & DevOps avec 14 ans d'expérience sur AEM/CQ et plus de 25 ans dans l'infrastructure des systèmes. Il pratique le VTT depuis plus longtemps qu'il n'administre des systèmes et, bien qu'originaire du Maine, il vit dans les montagnes du nord-ouest de la Géorgie.

Contacter Tad sur Linkedin

Vous avez aimé ce que vous avez entendu ? Vous avez des questions sur ce qui vous convient le mieux ? Nous aimerions en parler ! Contact avec nous

Episodes de podcast & Articles de blog

Qu'est-ce que l'AEM ? A quoi sert l'AEM ? Une explication de base d'AEM pour les débutants - Arbory Digital Podcast Ep6
Qu'est-ce que l'AEM ? À quoi sert Adobe Experience Manager ? Nous avons tenté d'expliquer ce qu'est et ce que fait l'AEM en 30 minutes ou moins - et nous avons réussi à le faire, même si le service des incendies est apparu au hasard après 19 minutes d'enregistrement du podcast !
Optimiser les performances du site en Chine pour AEM & autres plateformes
Que savez-vous des outils à votre disposition pour optimiser les performances de votre site en Chine continentale ? Et même si vous n'avez pas de site en chinois, devez-vous vous préoccuper des performances en Chine ? VOUS LE FAITES !
L'AEM auto-hébergé est-il toujours d'actualité ? Revisité dans le monde de l'Edge Delivery d'aujourd'hui
Dans la guerre actuelle entre le rapatriement du cloud et les nouveaux services Edge Delivery ultra-rapides, revenons sur la question suivante : l'AEM auto-hébergé est-il toujours d'actualité ?