http://src-aem-host:port/crx/packmgr/index.jsp に移動し、管理者権限でログインしてください。
環境
AEM 6.x
手順
以下の手順は、cURL、Python、Java SDK がインストールされている Mac OS、Linux または Windows 上で実行する必要があります。
-
-
「ACLー移行」という名のパッケージを作成します。
-
「編集」ボタンをクリックします。
-
詳細タブを選択し、AC の処理モードを結合に設定します。
-
保存します。
-
パッケージを作成してダウンロードします。
-
ファイルシステム上でパッケージに対してこのコマンド実行し、META-INF/vault/filter.xml ファイルを抽出してください。
jar -xvf ACL-migration-1.0.zip META-INF/vault/filter.xml
-
同じディレクトリで、このコマンドを実行して、ソースインスタンスから ACL パスの json ファイルをダウンロードします。ユーザー名とパスワードを設定し、ホストを修正して、xpath クエリー /jcr:root/content//element(*,rep:ACL) を自分のものに置き換えます。
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
-
generate-package-filter.py ファイルを作成し、python コードを下記のコマンドの内部にペーストします。
-
data.json が作成されたフォルダーと同じフォルダーから python スクリプトを実行し、META - INF/vault/filter.xml に出力を保存します(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>")
-
このコマンドを使用して、zip ファイル内の filter.xml を更新します。
jar -uvf ACL-migration-1.0.zip META-INF/vault/filter.xml
-
ソースインスタンスのパッケージマネージャーに zip ファイルをアップロードします。http://src-aem-host:port/crx/packmgr/index.jsp
-
「構築」あるいは「再構築」をクリックしてパッケージを構築してください。
-
ソース AEM サーバーから、パッケージをダウンロードします。
-
送信先の AEM サーバーパッケージマネージャーからパッケージをアップロードします:http://dst-aem-host:port/crx/packmgr/index.jsp
-
「インストール」をクリックしてインストールを実行します。