Allez sur http://src-aem-host:port/crx/packmgr/index.jsp et connectez-vous en tant qu’administrateur.
Environnement
AEM 6.x
Étapes
Les instructions ci-dessous doivent être exécutées sous Mac OS, Linux ou Windows (sur Cygwin) avec cURL, Python SDK et Java SDK :
-
-
Créez un package appelé «ACL-migration»
-
Cliquez sur la touche Éditer.
-
Sélectionnez l’onglet Advanced et définissez le mode AC Handling sur Merge.
-
Enregistrer.
-
Compilez le package et téléchargez-le.
-
Dans le système de fichiers, exécutez cette commande sur le contenu afin d’extraire le fichier META-INF/vault/filter.xml :
jar -xvf ACL-migration-1.0.zip META-INF/vault/filter.xml
-
Dans le même répertoire, exécutez cette commande pour télécharger un fichier json des chemins ACL depuis l’instance source. Définissez le nom d’utilisateur et le mot de passe, corrigez l’hôte et remplacez la requête xpath /jcr:root/content//element(*,rep:ACL) par votre propre requête) :
curl -u admin:admin 'http://aemhost/crx/de/query.jsp?' -G --data '_dc=1507011481908&_charset_=utf-8&type=xpath&stmt=/jcr:root/content//element(*,rep:ACL)&showResults=true' > data.json
-
Créez un fichier generate-package-filter.py et collez le code python ci-dessous :
-
Exécutez le script python à partir du dossier où data.json a été créé et enregistrez la sortie sur META-INF/vault/filter.xml (remplacez le contenu existant de filter.xml) :
python generate-packge-filter.py > META-INF/vault/filter.xml
import json from pprint import pprint with open('data.json') as data_file: data = json.load(data_file) print("<?xml version=\"1.0\" encoding=\"UTF-8\"?>") print("<workspaceFilter version=\"1.0\">") for item in data["results"]: print("<filter root=\"{}\"/>".format(item["path"])) print("</workspaceFilter>")
-
Utilisez cette commande pour mettre à jour le filter.xml dans le fichier zip :
jar -uvf ACL-migration-1.0.zip META-INF/vault/filter.xml
-
Téléchargez le fichier zip sur le package manager d’instance source : http://src-aem-host:port/crx/packmgr/index.jsp
-
Cliquez sur Build ou Rebuild pour créer le package.
-
Téléchargez le package depuis le serveur AEM.
-
Téléchargez le package sur le package manager du serveur AEM de destination : http://dst-aem-host:port/crx/packmgr/index.jsp
-
Cliquez sur Install pour l’installer.
Accéder à votre compte