この会話は、活動がないためロックされています。新しい投稿を作成してください。
この会話は、活動がないためロックされています。新しい投稿を作成してください。
We're migrating to aemaacs from AEM 6.5. We have a custom cloud configuration in place for datalayer. We followed this guide - https://experienceleague.adobe.com/docs/experience-manager-64/developing/extending-aem/extending-clo... in initial setup.
Is there any such guide for aemaacs? We're not able to get the existing config work for cloud publisher. While running repoinit script to set ACL for anonymous user we're facing PathNotFoundException for /etc/cloudservices/*.
Any help appreciated.
Thanks!
解決済! 解決策の投稿を見る。
表示
返信
いいね!の合計
hello @vmanohar23
repo-init scripts execute at the time of deployment on AEM Images. Thus, they are capable of setting permissions on both mutable and immutable paths.
The repo-init can set ACL only if a node already exists. Thus, if we receive PathNotFoundException, it means that /etc/cloudservices/* isn't available when repo-init is executing, during deployment
To resolve the same, create these paths with proper primaryType via repo-init. This would assure that the path is available, while setting ACLs. Example:
{ "scripts": [
"create path /etc/cloudservices(sling:Folder)\n\n",
"create path /etc/cloudservices/aemdatalayer(cq:Page)\n create path /etc/cloudservices/aemdatalayer/jcr:content(cq:PageContent)\n\n",
"set ACL on /etc/cloudservices/aemdatalayer\n\tallow jcr:read for \"anonymous\"" ] }
{ "scripts": [ "set ACL on /etc/cloudservices/aemdatalayer\n\tallow jcr:read for \"anonymous\"" ] }
This is under config.publish by name org.apache.sling.jcr.repoinit.RepositoryInitializer~<project-name>.cfg.json
The problem would be because the repo init statements mention mutable content in the documentation[0].
/apps and /libs are immutable at runtime and ACLs are stored under the respective nodes that need the permission in AEM.
hello @vmanohar23
repo-init scripts execute at the time of deployment on AEM Images. Thus, they are capable of setting permissions on both mutable and immutable paths.
The repo-init can set ACL only if a node already exists. Thus, if we receive PathNotFoundException, it means that /etc/cloudservices/* isn't available when repo-init is executing, during deployment
To resolve the same, create these paths with proper primaryType via repo-init. This would assure that the path is available, while setting ACLs. Example:
{ "scripts": [
"create path /etc/cloudservices(sling:Folder)\n\n",
"create path /etc/cloudservices/aemdatalayer(cq:Page)\n create path /etc/cloudservices/aemdatalayer/jcr:content(cq:PageContent)\n\n",
"set ACL on /etc/cloudservices/aemdatalayer\n\tallow jcr:read for \"anonymous\"" ] }