Fermer

octobre 9, 2023

Utiliser l’outil de modernisation du référentiel pour une migration fluide vers AEMaaCS / Blogs / Perficient


Avec l’introduction de Adobe Experience Manager en tant que service cloud (AEMaaCS), les clients qui exécutent actuellement AEM sur site ou via Adobe Managed Services (AMS) et souhaitent migrer vers le cloud doivent planifier les modifications apportées au référentiel AEM. Un outil pour faciliter le processus est le Repository Modernizer.

Cet outil intervient après avoir déjà utilisé l’analyseur de bonnes pratiques et fait partie du processus de refactorisation du code. Le Repository Modernizer est nécessaire pour mettre à jour la structure du référentiel de code d’une structure 6.X vers une structure compatible avec AEMaaCS.

Transformer votre base de code afin qu’elle adhère à la nouvelle structure de package conforme au service cloud est une étape cruciale et l’outil Repository Modernizer peut aider à réduire l’effort de restructuration du projet en séparant le code et le contenu. Cette séparation du contenu est nécessaire pour atteindre zéro temps d’arrêt pour les déploiements et les mises à jour d’AEM.

La nécessité de moderniser le référentiel et de séparer le contenu

Contrairement à AEM exécuté sur site ou sur AMS, AEMaaCS est conteneurisé. Cela signifie que les instances AEM sont transitoires et peuvent être créées et détruites à tout moment pour répondre à la demande. Pour maintenir la cohérence du code et du contenu dans ces conteneurs transitoires, AEM définit deux types de contenu : mutable et immuable.

Le contenu mutable est stocké et accessible via un service de référentiel de contenu commun par toutes les instances AEM. Le contenu immuable est intégré à l’image utilisée pour créer de nouvelles instances AEM dans chaque conteneur lancé. Le contenu immuable ne peut être modifié que via une version de Cloud Manager Pipeline et non au moment de l’exécution.

Structure d’emballage compatible avec le cloud

Les zones considérées comme immuables sont /apps et /libs tandis que le reste du référentiel, y compris /content, /conf, /var, /etc, /oak:index, /system, /tmp, etc. est considéré comme mutable. Notez que /oak:index doit toujours être déployé avec du code immuable dans le cadre d’un déploiement de Pipeline avant que le contenu mutable puisse être déployé. D’autres contenus mutables peuvent également être inclus dans le cadre d’un déploiement de pipeline, et seul ce contenu mutable peut être modifié au moment de l’exécution.

Le contenu supplémentaire que vous n’avez peut-être pas conservé dans votre référentiel de code et qui doit être inclus pour une utilisation dans AEMaaCS est les configurations OSGi, y compris Repo Init pour la création d’utilisateurs système, etc. Vous ne pourrez pas modifier les configurations OSGi au moment de l’exécution comme vous le feriez. sur les versions non cloud d’AEM. De plus, si vous avez défini des modes d’exécution personnalisés à utiliser pour les configurations, ils ne sont pas pris en charge dans AEMaaCS. Vous devez utiliser uniquement les modes d’exécution prédéfinis et pris en charge qui incluent le type d’instance de création ou de publication et l’environnement dans lequel le cloud inclut rde, dev, stage et prod.

L’utilisation du gestionnaire de packages pour déployer un contenu immuable ne peut pas être effectuée dans AEMaaCS. Tout package contenant du contenu immuable échouera lors de la tentative d’installation via le gestionnaire de packages.

Reportez-vous au lien inclus dans les références ci-dessous pour plus de détails sur la structure de package recommandée.

Restructuration de projet avec moderniseur de référentiel

Les projets qui ne sont pas conformes à la structure ci-dessus qui prend en charge la séparation du contenu mutable et immuable devront être restructurés pour respecter les exigences. Adobe fournit l’outil Repository Modernizer pour aider à refactoriser une base de code AEM afin qu’elle soit compatible avec AEMaaCS.

Modes d’exécution du moderniseur de référentiel

Le modernisateur de référentiel peut être exécuté via deux méthodes différentes :

  1. Adobe I/O CLI (recommandé)
  2. Utilitaire autonome

Adobe IO CLI (approche recommandée)

L’outil Repository Modernizer est fourni en tant qu’utilitaire sous Adobe I/O CLI AEM Cloud Service Migration Plugin. Pour utiliser cet utilitaire, il faut suivre les étapes ci-dessous.

1. Installez Node.js 10.0+
Le plug-in de migration AEM Cloud Service nécessite Node.js (environnement d’exécution JavaScript) version 10.0 ou supérieure pour s’exécuter et peut être installé à partir de https://nodejs.org/fr

Les utilisateurs Mac peuvent également utiliser Homebrew pour installer Node.js https://brew.sh/

Brew installer nodejs

2. Installer Adobe I/O CLI https://github.com/adobe/aio-cli
L’étape suivante consiste à installer le plug-in Adobe I/O CLI en exécutant la commande suivante

npm install -g @adobe/aio-cli

3. Installez le plug-in de migration du service cloud AEM https://github.com/adobe/aio-cli-plugin-aem-cloud-service-migration

plugins aio : installer @adobe/aio-cli-plugin-aem-cloud-service-migration

REMARQUE : les utilisateurs Windows devront avoir installé Visual Studio sur leur système.

4. Configurer la configuration des outils de migration
Les outils de migration sont configurés via un fichier nommé aem-migration-config.yaml. L’emplacement de configuration des outils de migration doit être :

Mac/Unix: ~/.config/@adobe/aio-cli

les fenêtres: %LOCALAPPDATA%\@adobe\aio-cli

Les configurations du Repository Modernizer sont configurées dans la section depositModernizer: qui comprend la configuration du pom parent et de tous les autres projets à inclure dans l’archétype.

5. Changez le répertoire (cd) dans le répertoire de sortie et exécutez la commande

aio aem-migration : moderniseur de référentiel

Le au-dessus de commande volonté créer unn Compatible AEMaaCS structure dans votre répertoire actuel. Une fois qu’une nouvelle structure de projet a été générée, tu peux initialiser un nouveau GIT dépôt, vérifier il danset je l’engage retour à le Dépôt GIT. Votre structure de code est désormais prête à être utilisée avec AEM en tant que service cloud.

Les références

Modernisateur de référentiel
https://experienceleague.adobe.com/docs/experience-manager-cloud-service/content/migration-journey/refactoring-tools/repo-modernizer.html
Migration vers le cloud du plug-in AIO CLI
https://github.com/adobe/aio-cli-plugin-aem-cloud-service-migration
Configurer l’outil de migration de services cloud
https://github.com/adobe/aio-cli-plugin-aem-cloud-service-migration/blob/master/config/README.md
Structure du projet AEM
https://experienceleague.adobe.com/docs/experience-manager-cloud-service/content/implementing/developing/aem-project-content-package-structure.html
Déploiement sur AEM en tant que service cloud
https://experienceleague.adobe.com/docs/experience-manager-cloud-service/content/implementing/deploying/overview.html
Valider la syntaxe YAML
https://www.yamllint.com/

Vous voulez plus de contenu AEMaaCS ? Découvrez cette série en 3 parties.

Comment l’automatisation du contenu créatif dans AEMaaCS accélère la diffusion de contenu – Partie 1

Comment l’automatisation du contenu créatif dans AEMaaCS accélère la diffusion de contenu – Partie 2

Comment l’automatisation du contenu créatif dans AEMaaCS accélère la diffusion de contenu – Partie 3






Source link

octobre 9, 2023