How to Execute a Sling Replication

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

How to Execute a Sling Replication

Andreas Schaefer
Hi

I managed to build and install the Sling Distribution including
the sample package. Everything looks fine but I am not sure
how to start a replication of a given node.

I want to replicate a given node on the Author to the Publish
instance(s) defined in the used agent. How would I do that
from the command line?

Thanks - Andy Schaefer
Reply | Threaded
Open this post in threaded view
|

Re: How to Execute a Sling Replication

Timothee Maret-2
Hi Andreas,

The documentation could indeed be improved in this area.

I think your use case matches forward distribution. You could look at the
curl commands in


https://github.com/apache/sling/tree/trunk/contrib/extensions/distribution#forward-distribution

Regards,

Timothee

2017-07-24 16:46 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:

> Hi
>
> I managed to build and install the Sling Distribution including
> the sample package. Everything looks fine but I am not sure
> how to start a replication of a given node.
>
> I want to replicate a given node on the Author to the Publish
> instance(s) defined in the used agent. How would I do that
> from the command line?
>
> Thanks - Andy Schaefer
>
Reply | Threaded
Open this post in threaded view
|

Re: How to Execute a Sling Replication

Andreas Schaefer
Hi Timothee

Thanks for the quick reply. If you are referring to:

curl -v -u admin:admin http://localhost:8080/libs/sling/distribution/services/agents/publish -d 'action=ADD' -d 'path=/content/sample1’

then it does not work on my installation. I get a ‘Unsupported Operation Exception: create’ which
I think happens because the call to the agent is ignored. One thing I noticed is that this node
in Composum is never resolved (spinner keeps on spinning).

With the investigation into the Default Distribution Component Provider is will also check out
this as I think they are related.

- Andy

> On Jul 24, 2017, at 11:13 AM, Timothee Maret <[hidden email]> wrote:
>
> Hi Andreas,
>
> The documentation could indeed be improved in this area.
>
> I think your use case matches forward distribution. You could look at the
> curl commands in
>
>
> https://github.com/apache/sling/tree/trunk/contrib/extensions/distribution#forward-distribution
>
> Regards,
>
> Timothee
>
> 2017-07-24 16:46 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
>
>> Hi
>>
>> I managed to build and install the Sling Distribution including
>> the sample package. Everything looks fine but I am not sure
>> how to start a replication of a given node.
>>
>> I want to replicate a given node on the Author to the Publish
>> instance(s) defined in the used agent. How would I do that
>> from the command line?
>>
>> Thanks - Andy Schaefer
>>

Reply | Threaded
Open this post in threaded view
|

Re: How to Execute a Sling Replication

Timothee Maret-2
Hi Andy,

Indeed, I am referring to the curl command you shared.

Regarding the unsupported operation exception, I think you are on the right
track when thinking that the agent is not started.
An agent configuration refers to set of services. The agent is only started
if all the referenced services are available.
The likely reason for your agent not to be started, is that one or more
references are not satisfied.

In order to figure out what reference may be unsatisfied, you may want to
look at the agent component you are configuring in the OSGI components
console (path is /system/console/components). The references marked as
"Unsatisfied" must be resolved, typically by adding a configuration for the
missing referenced service.

HTH,

Timothee

2017-07-24 21:32 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:

> Hi Timothee
>
> Thanks for the quick reply. If you are referring to:
>
> curl -v -u admin:admin http://localhost:8080/libs/
> sling/distribution/services/agents/publish -d 'action=ADD' -d
> 'path=/content/sample1’
>
> then it does not work on my installation. I get a ‘Unsupported Operation
> Exception: create’ which
> I think happens because the call to the agent is ignored. One thing I
> noticed is that this node
> in Composum is never resolved (spinner keeps on spinning).
>
> With the investigation into the Default Distribution Component Provider is
> will also check out
> this as I think they are related.
>
> - Andy
>
> > On Jul 24, 2017, at 11:13 AM, Timothee Maret <[hidden email]> wrote:
> >
> > Hi Andreas,
> >
> > The documentation could indeed be improved in this area.
> >
> > I think your use case matches forward distribution. You could look at the
> > curl commands in
> >
> >
> > https://github.com/apache/sling/tree/trunk/contrib/
> extensions/distribution#forward-distribution
> >
> > Regards,
> >
> > Timothee
> >
> > 2017-07-24 16:46 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
> >
> >> Hi
> >>
> >> I managed to build and install the Sling Distribution including
> >> the sample package. Everything looks fine but I am not sure
> >> how to start a replication of a given node.
> >>
> >> I want to replicate a given node on the Author to the Publish
> >> instance(s) defined in the used agent. How would I do that
> >> from the command line?
> >>
> >> Thanks - Andy Schaefer
> >>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: How to Execute a Sling Replication

Andreas Schaefer
Hi Timothee

I am slowly getting there. As much as I love OSGi for its extensibility as much
I hate it when it goes wrong.

Turns out for the Forward Distribution Agent I need a Distribution Package Builder
which is not configured in the Sample but I could also not find it in the IT tests.

After having a closer at the IT tests I figured out that I also need to set the
run mode ‘notshared’.

This did the trick and now I have the author configuration up and running.

I let you know if I run into other issues.

Thanks - Andy

> On Jul 25, 2017, at 7:22 AM, Timothee Maret <[hidden email]> wrote:
>
> Hi Andy,
>
> Indeed, I am referring to the curl command you shared.
>
> Regarding the unsupported operation exception, I think you are on the right
> track when thinking that the agent is not started.
> An agent configuration refers to set of services. The agent is only started
> if all the referenced services are available.
> The likely reason for your agent not to be started, is that one or more
> references are not satisfied.
>
> In order to figure out what reference may be unsatisfied, you may want to
> look at the agent component you are configuring in the OSGI components
> console (path is /system/console/components). The references marked as
> "Unsatisfied" must be resolved, typically by adding a configuration for the
> missing referenced service.
>
> HTH,
>
> Timothee
>
> 2017-07-24 21:32 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
>
>> Hi Timothee
>>
>> Thanks for the quick reply. If you are referring to:
>>
>> curl -v -u admin:admin http://localhost:8080/libs/
>> sling/distribution/services/agents/publish -d 'action=ADD' -d
>> 'path=/content/sample1’
>>
>> then it does not work on my installation. I get a ‘Unsupported Operation
>> Exception: create’ which
>> I think happens because the call to the agent is ignored. One thing I
>> noticed is that this node
>> in Composum is never resolved (spinner keeps on spinning).
>>
>> With the investigation into the Default Distribution Component Provider is
>> will also check out
>> this as I think they are related.
>>
>> - Andy
>>
>>> On Jul 24, 2017, at 11:13 AM, Timothee Maret <[hidden email]> wrote:
>>>
>>> Hi Andreas,
>>>
>>> The documentation could indeed be improved in this area.
>>>
>>> I think your use case matches forward distribution. You could look at the
>>> curl commands in
>>>
>>>
>>> https://github.com/apache/sling/tree/trunk/contrib/
>> extensions/distribution#forward-distribution
>>>
>>> Regards,
>>>
>>> Timothee
>>>
>>> 2017-07-24 16:46 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
>>>
>>>> Hi
>>>>
>>>> I managed to build and install the Sling Distribution including
>>>> the sample package. Everything looks fine but I am not sure
>>>> how to start a replication of a given node.
>>>>
>>>> I want to replicate a given node on the Author to the Publish
>>>> instance(s) defined in the used agent. How would I do that
>>>> from the command line?
>>>>
>>>> Thanks - Andy Schaefer
>>>>
>>
>>

Reply | Threaded
Open this post in threaded view
|

Re: How to Execute a Sling Replication

Timothee Maret-2
Hi Andy,

2017-07-25 18:30 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:

> Hi Timothee
>
> I am slowly getting there. As much as I love OSGi for its extensibility as
> much
> I hate it when it goes wrong.
>
> Turns out for the Forward Distribution Agent I need a Distribution Package
> Builder
> which is not configured in the Sample but I could also not find it in the
> IT tests.
>

The Distribution Package Builder configuration should be located here

https://github.com/apache/sling/blob/trunk/contrib/extensions/distribution/sample/src/main/resources/SLING-CONTENT/libs/sling/distribution/install.notshared

or here


https://github.com/apache/sling/tree/trunk/contrib/extensions/distribution/sample/src/main/resources/SLING-CONTENT/libs/sling/distribution/install.shared

The configuration is only installed on the instance if the run mode
('notshared' resp. 'shared') is selected.


>
> After having a closer at the IT tests I figured out that I also need to
> set the
> run mode ‘notshared’.


> This did the trick and now I have the author configuration up and running.
>

Excellent!


>
> I let you know if I run into other issues.
>

Sure, happy to help.

Regards,

Timothee


>
> Thanks - Andy
>
> > On Jul 25, 2017, at 7:22 AM, Timothee Maret <[hidden email]> wrote:
> >
> > Hi Andy,
> >
> > Indeed, I am referring to the curl command you shared.
> >
> > Regarding the unsupported operation exception, I think you are on the
> right
> > track when thinking that the agent is not started.
> > An agent configuration refers to set of services. The agent is only
> started
> > if all the referenced services are available.
> > The likely reason for your agent not to be started, is that one or more
> > references are not satisfied.
> >
> > In order to figure out what reference may be unsatisfied, you may want to
> > look at the agent component you are configuring in the OSGI components
> > console (path is /system/console/components). The references marked as
> > "Unsatisfied" must be resolved, typically by adding a configuration for
> the
> > missing referenced service.
> >
> > HTH,
> >
> > Timothee
> >
> > 2017-07-24 21:32 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
> >
> >> Hi Timothee
> >>
> >> Thanks for the quick reply. If you are referring to:
> >>
> >> curl -v -u admin:admin http://localhost:8080/libs/
> >> sling/distribution/services/agents/publish -d 'action=ADD' -d
> >> 'path=/content/sample1’
> >>
> >> then it does not work on my installation. I get a ‘Unsupported Operation
> >> Exception: create’ which
> >> I think happens because the call to the agent is ignored. One thing I
> >> noticed is that this node
> >> in Composum is never resolved (spinner keeps on spinning).
> >>
> >> With the investigation into the Default Distribution Component Provider
> is
> >> will also check out
> >> this as I think they are related.
> >>
> >> - Andy
> >>
> >>> On Jul 24, 2017, at 11:13 AM, Timothee Maret <[hidden email]>
> wrote:
> >>>
> >>> Hi Andreas,
> >>>
> >>> The documentation could indeed be improved in this area.
> >>>
> >>> I think your use case matches forward distribution. You could look at
> the
> >>> curl commands in
> >>>
> >>>
> >>> https://github.com/apache/sling/tree/trunk/contrib/
> >> extensions/distribution#forward-distribution
> >>>
> >>> Regards,
> >>>
> >>> Timothee
> >>>
> >>> 2017-07-24 16:46 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
> >>>
> >>>> Hi
> >>>>
> >>>> I managed to build and install the Sling Distribution including
> >>>> the sample package. Everything looks fine but I am not sure
> >>>> how to start a replication of a given node.
> >>>>
> >>>> I want to replicate a given node on the Author to the Publish
> >>>> instance(s) defined in the used agent. How would I do that
> >>>> from the command line?
> >>>>
> >>>> Thanks - Andy Schaefer
> >>>>
> >>
> >>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: How to Execute a Sling Replication

Andreas Schaefer
Hi Timothee

I saw in the sample configuration’s Init class that there is this line:

AccessControlUtils.addAccessControlEntry(session, null, serviceUser.getPrincipal(), new String[]{ Privilege.JCR_ALL }, true);
Any idea what this does with the absolute path set to null?

Thanks - Andy Schaefer

> On Jul 26, 2017, at 1:52 AM, Timothee Maret <[hidden email]> wrote:
>
> Hi Andy,
>
> 2017-07-25 18:30 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
>
>> Hi Timothee
>>
>> I am slowly getting there. As much as I love OSGi for its extensibility as
>> much
>> I hate it when it goes wrong.
>>
>> Turns out for the Forward Distribution Agent I need a Distribution Package
>> Builder
>> which is not configured in the Sample but I could also not find it in the
>> IT tests.
>>
>
> The Distribution Package Builder configuration should be located here
>
> https://github.com/apache/sling/blob/trunk/contrib/extensions/distribution/sample/src/main/resources/SLING-CONTENT/libs/sling/distribution/install.notshared
>
> or here
>
>
> https://github.com/apache/sling/tree/trunk/contrib/extensions/distribution/sample/src/main/resources/SLING-CONTENT/libs/sling/distribution/install.shared
>
> The configuration is only installed on the instance if the run mode
> ('notshared' resp. 'shared') is selected.
>
>
>>
>> After having a closer at the IT tests I figured out that I also need to
>> set the
>> run mode ‘notshared’.
>
>
>> This did the trick and now I have the author configuration up and running.
>>
>
> Excellent!
>
>
>>
>> I let you know if I run into other issues.
>>
>
> Sure, happy to help.
>
> Regards,
>
> Timothee
>
>
>>
>> Thanks - Andy
>>
>>> On Jul 25, 2017, at 7:22 AM, Timothee Maret <[hidden email]> wrote:
>>>
>>> Hi Andy,
>>>
>>> Indeed, I am referring to the curl command you shared.
>>>
>>> Regarding the unsupported operation exception, I think you are on the
>> right
>>> track when thinking that the agent is not started.
>>> An agent configuration refers to set of services. The agent is only
>> started
>>> if all the referenced services are available.
>>> The likely reason for your agent not to be started, is that one or more
>>> references are not satisfied.
>>>
>>> In order to figure out what reference may be unsatisfied, you may want to
>>> look at the agent component you are configuring in the OSGI components
>>> console (path is /system/console/components). The references marked as
>>> "Unsatisfied" must be resolved, typically by adding a configuration for
>> the
>>> missing referenced service.
>>>
>>> HTH,
>>>
>>> Timothee
>>>
>>> 2017-07-24 21:32 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
>>>
>>>> Hi Timothee
>>>>
>>>> Thanks for the quick reply. If you are referring to:
>>>>
>>>> curl -v -u admin:admin http://localhost:8080/libs/
>>>> sling/distribution/services/agents/publish -d 'action=ADD' -d
>>>> 'path=/content/sample1’
>>>>
>>>> then it does not work on my installation. I get a ‘Unsupported Operation
>>>> Exception: create’ which
>>>> I think happens because the call to the agent is ignored. One thing I
>>>> noticed is that this node
>>>> in Composum is never resolved (spinner keeps on spinning).
>>>>
>>>> With the investigation into the Default Distribution Component Provider
>> is
>>>> will also check out
>>>> this as I think they are related.
>>>>
>>>> - Andy
>>>>
>>>>> On Jul 24, 2017, at 11:13 AM, Timothee Maret <[hidden email]>
>> wrote:
>>>>>
>>>>> Hi Andreas,
>>>>>
>>>>> The documentation could indeed be improved in this area.
>>>>>
>>>>> I think your use case matches forward distribution. You could look at
>> the
>>>>> curl commands in
>>>>>
>>>>>
>>>>> https://github.com/apache/sling/tree/trunk/contrib/
>>>> extensions/distribution#forward-distribution
>>>>>
>>>>> Regards,
>>>>>
>>>>> Timothee
>>>>>
>>>>> 2017-07-24 16:46 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
>>>>>
>>>>>> Hi
>>>>>>
>>>>>> I managed to build and install the Sling Distribution including
>>>>>> the sample package. Everything looks fine but I am not sure
>>>>>> how to start a replication of a given node.
>>>>>>
>>>>>> I want to replicate a given node on the Author to the Publish
>>>>>> instance(s) defined in the used agent. How would I do that
>>>>>> from the command line?
>>>>>>
>>>>>> Thanks - Andy Schaefer
>>>>>>
>>>>
>>>>
>>
>>

Reply | Threaded
Open this post in threaded view
|

Re: How to Execute a Sling Replication

Timothee Maret-2
Hi Andy,

The 'null' path allows to set repository level permissions.
See also


https://jackrabbit.apache.org/oak/docs/security/permission/differences.html#Repository_Level_Operations

HTH,

Timothee

2017-07-31 17:46 GMT+02:00 Andreas Schaefer <[hidden email]>:

> Hi Timothee
>
> I saw in the sample configuration’s Init class that there is this line:
>
> AccessControlUtils.addAccessControlEntry(session, null,
> serviceUser.getPrincipal(), new String[]{ Privilege.JCR_ALL }, true);
> Any idea what this does with the absolute path set to null?
>
> Thanks - Andy Schaefer
>
> > On Jul 26, 2017, at 1:52 AM, Timothee Maret <[hidden email]> wrote:
> >
> > Hi Andy,
> >
> > 2017-07-25 18:30 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
> >
> >> Hi Timothee
> >>
> >> I am slowly getting there. As much as I love OSGi for its extensibility
> as
> >> much
> >> I hate it when it goes wrong.
> >>
> >> Turns out for the Forward Distribution Agent I need a Distribution
> Package
> >> Builder
> >> which is not configured in the Sample but I could also not find it in
> the
> >> IT tests.
> >>
> >
> > The Distribution Package Builder configuration should be located here
> >
> > https://github.com/apache/sling/blob/trunk/contrib/
> extensions/distribution/sample/src/main/resources/
> SLING-CONTENT/libs/sling/distribution/install.notshared
> >
> > or here
> >
> >
> > https://github.com/apache/sling/tree/trunk/contrib/
> extensions/distribution/sample/src/main/resources/
> SLING-CONTENT/libs/sling/distribution/install.shared
> >
> > The configuration is only installed on the instance if the run mode
> > ('notshared' resp. 'shared') is selected.
> >
> >
> >>
> >> After having a closer at the IT tests I figured out that I also need to
> >> set the
> >> run mode ‘notshared’.
> >
> >
> >> This did the trick and now I have the author configuration up and
> running.
> >>
> >
> > Excellent!
> >
> >
> >>
> >> I let you know if I run into other issues.
> >>
> >
> > Sure, happy to help.
> >
> > Regards,
> >
> > Timothee
> >
> >
> >>
> >> Thanks - Andy
> >>
> >>> On Jul 25, 2017, at 7:22 AM, Timothee Maret <[hidden email]> wrote:
> >>>
> >>> Hi Andy,
> >>>
> >>> Indeed, I am referring to the curl command you shared.
> >>>
> >>> Regarding the unsupported operation exception, I think you are on the
> >> right
> >>> track when thinking that the agent is not started.
> >>> An agent configuration refers to set of services. The agent is only
> >> started
> >>> if all the referenced services are available.
> >>> The likely reason for your agent not to be started, is that one or more
> >>> references are not satisfied.
> >>>
> >>> In order to figure out what reference may be unsatisfied, you may want
> to
> >>> look at the agent component you are configuring in the OSGI components
> >>> console (path is /system/console/components). The references marked as
> >>> "Unsatisfied" must be resolved, typically by adding a configuration for
> >> the
> >>> missing referenced service.
> >>>
> >>> HTH,
> >>>
> >>> Timothee
> >>>
> >>> 2017-07-24 21:32 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
> >>>
> >>>> Hi Timothee
> >>>>
> >>>> Thanks for the quick reply. If you are referring to:
> >>>>
> >>>> curl -v -u admin:admin http://localhost:8080/libs/
> >>>> sling/distribution/services/agents/publish -d 'action=ADD' -d
> >>>> 'path=/content/sample1’
> >>>>
> >>>> then it does not work on my installation. I get a ‘Unsupported
> Operation
> >>>> Exception: create’ which
> >>>> I think happens because the call to the agent is ignored. One thing I
> >>>> noticed is that this node
> >>>> in Composum is never resolved (spinner keeps on spinning).
> >>>>
> >>>> With the investigation into the Default Distribution Component
> Provider
> >> is
> >>>> will also check out
> >>>> this as I think they are related.
> >>>>
> >>>> - Andy
> >>>>
> >>>>> On Jul 24, 2017, at 11:13 AM, Timothee Maret <[hidden email]>
> >> wrote:
> >>>>>
> >>>>> Hi Andreas,
> >>>>>
> >>>>> The documentation could indeed be improved in this area.
> >>>>>
> >>>>> I think your use case matches forward distribution. You could look at
> >> the
> >>>>> curl commands in
> >>>>>
> >>>>>
> >>>>> https://github.com/apache/sling/tree/trunk/contrib/
> >>>> extensions/distribution#forward-distribution
> >>>>>
> >>>>> Regards,
> >>>>>
> >>>>> Timothee
> >>>>>
> >>>>> 2017-07-24 16:46 GMT+02:00 Andreas Schaefer Sr. <[hidden email]>:
> >>>>>
> >>>>>> Hi
> >>>>>>
> >>>>>> I managed to build and install the Sling Distribution including
> >>>>>> the sample package. Everything looks fine but I am not sure
> >>>>>> how to start a replication of a given node.
> >>>>>>
> >>>>>> I want to replicate a given node on the Author to the Publish
> >>>>>> instance(s) defined in the used agent. How would I do that
> >>>>>> from the command line?
> >>>>>>
> >>>>>> Thanks - Andy Schaefer
> >>>>>>
> >>>>
> >>>>
> >>
> >>
>