[ 
https://issues.apache.org/jira/browse/SLING-5449?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bertrand Delacretaz updated SLING-5449:
---------------------------------------
    Description: 
Discussions on our dev list and with my colleagues around SLING-5355 (the ACL 
definition language) show that we need to initialize a number of things when 
starting on a new or existing content repository:

* Create the "base tree", paths like /libs, /apps, /var that many modules use 
and sometimes compete to create.
* Create service users
* Set ACLs on the base tree for those service users
* And maybe setup some JCR-specific things like node types and custom 
privileges, that other content repositories would ignore.

I'll create a more general module than what I created for SLING-5355 (which 
hasn't been released) to cover those things, and put it under 
{{commons/repoinit}} as it shouldn't have any dependencies on Sling. We might 
donate it to Jackrabbit once it matures but for now my goal is to implement the 
whole cycle inside Sling as it's the primary customer of that.

The JCR-specific APIs should only use a JCR Session as a handle to the content 
repository, to keep this independent of Sling and allow it to be used in other 
contexts like tests.

_Edit: changed the path from {{commons/jcrinit}} to {{commons/repoinit}}, even 
if some parts are specific to JCR the repoinit language will be mostly generic_

  was:
Discussions on our dev list and with my colleagues around SLING-5355 (the ACL 
definition language) show that we need to initialize a number of things when 
starting on a new or existing content repository:

* Create the "base tree", paths like /libs, /apps, /var that many modules use 
and sometimes compete to create.
* Create service users
* Set ACLs on the base tree for those service users
* And maybe setup some JCR-specific things like node types and custom 
privileges, that other content repositories would ignore.

I'll create a more general module than what I created for SLING-5355 (which 
hasn't been released) to cover those things, and put it under 
{{commons/jcrinit}} as it shouldn't have any dependencies on Sling. We might 
donate it to Jackrabbit once it matures but for now my goal is to implement the 
whole cycle inside Sling as it's the primary customer of that.

The JCR-specific APIs should only use a JCR Session as a handle to the content 
repository, to keep this independent of Sling and allow it to be used in other 
contexts like tests.


> Content repository initialization language
> ------------------------------------------
>
>                 Key: SLING-5449
>                 URL: https://issues.apache.org/jira/browse/SLING-5449
>             Project: Sling
>          Issue Type: Improvement
>          Components: Commons
>            Reporter: Bertrand Delacretaz
>            Assignee: Bertrand Delacretaz
>            Priority: Minor
>         Attachments: SLING-5449-launchpad-testing.patch
>
>
> Discussions on our dev list and with my colleagues around SLING-5355 (the ACL 
> definition language) show that we need to initialize a number of things when 
> starting on a new or existing content repository:
> * Create the "base tree", paths like /libs, /apps, /var that many modules use 
> and sometimes compete to create.
> * Create service users
> * Set ACLs on the base tree for those service users
> * And maybe setup some JCR-specific things like node types and custom 
> privileges, that other content repositories would ignore.
> I'll create a more general module than what I created for SLING-5355 (which 
> hasn't been released) to cover those things, and put it under 
> {{commons/repoinit}} as it shouldn't have any dependencies on Sling. We might 
> donate it to Jackrabbit once it matures but for now my goal is to implement 
> the whole cycle inside Sling as it's the primary customer of that.
> The JCR-specific APIs should only use a JCR Session as a handle to the 
> content repository, to keep this independent of Sling and allow it to be used 
> in other contexts like tests.
> _Edit: changed the path from {{commons/jcrinit}} to {{commons/repoinit}}, 
> even if some parts are specific to JCR the repoinit language will be mostly 
> generic_



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to