-
Notifications
You must be signed in to change notification settings - Fork 61
Issue 65 user and group support #148
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
62e51dc to
af1a2ed
Compare
8f3c1a4 to
739efa6
Compare
b01b3ce to
73efeca
Compare
32d932d to
f010b6d
Compare
|
@sagarsane @viveksachdeva Would you mind taking a look at this? I was able to find the time to revisit this after awhile. The only thing I need to add to this is a README change. With this change, you should be able to sync users, and groups under the /home path. One thing to note (that I will include in the README), is that you will need to add the admin user as an exclude path within the config - system won't let you modify admin user. I created some test users, and test groups and synced between instances - some things to check:
Some things that won't work (but will work with future work mentioned above) :
|
|
@jbornemann : Just a thought.. |
|
@viveksachdeva it's a good thought. I think it would be better for us to move to be consistently Java, or consistently Groovy across our codebase. There are also some bigger questions and challenges we will need to tackle when we move to Java that are out of scope for this enhancement. |
|
Agreed that Moving everything to Java is out of scope of this.. Will there be a challenge to have new classes in Java instead of Groovy? |
and both have same branch installed... |
|
Just curious .. |
|
@sagarsane : Yeah.. I added that when I was testing an old branch.. Any negative value defaults to 100.. :) |
|
kk! I'll test it out soon too after I'm done with initial review .. |
|
@sagarsane Yes, the user/group association will be lost until #157 is implemented. This is an issue with reference associations in general. We don't have any mechanism for preserving references yet since we create nodes with the node API, etc; jcr:uuid's are different between server to server. Then, groups will have little use until #158 is implemented ;-) I wasn't going to advertise the release of Users/Groups until the v8.0 milestone is met (and the solution is complete). Yes, since we aren't using workspace importXML (like I believe the Package Manager uses), rather the UserManager, our behavior is different. We don't import an XML snapshot of a repository; We stream and save nodes. Each server has a unique authorizable path for users/groups. I'm not sure of their exact intentions, but a couple of guesses :
@viveksachdeva 👻 what did you do to it? 😛 |
|
Talked to @jbornemann on my findings .. and realized that those findings are expected. Apart from the review comments, +1 testing from me. |
|
Giving this one more try.. :) this time 6.1 -> 6.1 |
|
Getting a different error now: :( My config file: For groups: 07.11.2016 20:22:13.212 ERROR [clientJobLauncherTaskExecutor-1] org.springframework.batch.core.step.AbstractStep Encountered an error executing step clientJcrNodes in job clientJob For users: |
|
@viveksachdeva your testing pointed out some good issues. As in the Geometrixx example content, we need to support all sorts of arbitrary data under authorizables; not just profile/preferences. I started the day by researching more on how authorizable node names are generated to maybe potentially avoid this problem all together(good reference material in our case is AuthorizableNodeName, RandomizedAuthorizableNodeName), and examining some ways we could approach things a bit differently. I thought that maybe we could provide a customized UserManager, and inject our own AuthorizableNodeName implementation, or really just use AuthorizableNodeName.DEFAULT; but UserManager is bound to JackrabbitSession, so I don't think this is feasible in isolation. Furthermore, AuthorizableNodeName is only passed in an authorizableId, so it would be tricky to generate authorizable nodes only based on the node name coming in. I'm currently modifying the approach to send all nodes under authorizables with authorizables. It's almost there, but there are still issues. I'm going to pick it up again tomorrow. |
|
Oh interesting :) |
d811f6d to
dc59cbd
Compare
|
Thanks for the find @viveksachdeva. Could you retest this? These scenarios should be covered now. |
dc59cbd to
4093436
Compare
|
awesome :D .... i will test this one out in some time .. |
17b4824 to
011af90
Compare
|
@jbornemann : I am now able to sync users and groups but relationship is lost(which is expected at this point in time)... So +1 Testing :) |
011af90 to
c33b6c0
Compare
|
Thanks guys! |




This PR provides support for syncing authorizable nodes (Users, Groups), in addition to a few minor commits:
To make this change wholesome, and useful; a few other changes will need to be tackled as part of