#50254 Issue: 50253 - Making an nsManagedRoleDefinition type in src/lib389/lib389/idm/nsrole.py
Closed by spichugi. Opened by aborah.
aborah/389-ds-base manage  into  master

Download 50254.patch

Making an nsManagedRoleDefinition type in src/lib389/lib389/idm/nsrole.py

https://pagure.io/389-ds-base/issue/50253

Reviewed by: ???

rebased onto 9a74f46f7ffc79e31c61ed9f59ed4cf5f50195bb

rebased onto 58b4ca0f3d2a6fdeed30e2b43c83a7f23977b963

rebased onto 5a2435d33e54668cfe67d6fe1fc443bf9ae957e9

Shouldn't it be "nsManagedRole" (note the 'd' in Managed) to match the objectClass name?

So I never understand why you do this pattern. Why not do:

nsroles = nsManagedRoles(topo.standalone, DEFAULT_SUFFIX)
nsrole1 = nsroles.create(properties={'cn': 'role1'})
...
uas = UserAccounts(topo.standalone, DEFAULT_SUFFIX)
user = uas.create(properties = {
    'nsRoleDN': nsrole1.dn
})

So keep the nsrole1 around then you can use the .dn, and give that to the user?

Don't do a replace on this aci, do "add" to add the ACI to the set (replace destroys all existing acis and can break tests in amazing ways like I found out recently. ....)

Why not do "for i in uas.list(): i.delete()".

Okay, I don't understand, but you keep refusing to use the pluralised DSLdapObjects types? They are there to proxy creates, they help setup things, and they can get by name and list etc. I think there are ways to make this test much more legible, robust and better. Right now it looks really fragile.

rebased onto 581eebeb16803969ef906dfbe03c2b75b54958f5

@firstyear all changes are done as per your suggestion , please check

rebased onto 769aab86b4c5e53df63b743f269220b29510adf2

rebased onto 56d2c795b0d1fdbde8114399bbaaa3978beb1e21

rebased onto e01335211ee9431ac5924ec5f766df4908697e76

rebased onto 6b0dd4143ef944294cece9b0ca61c94b4d64ded5

Just a general naming remark. Many 389-ds objects come from nescape days and start with 'ns'. lib389 is new and intend to be the unique interface to configure/reach 389-ds. It could be a opportunity to drop 'ns' in the defined lib389 classes even if internally the function use 'ns..' attributes/oc.

rebased onto f6100b6d0a125cd9a141f071c16a08063c5212ff

rebased onto 390bd7451c1ee5513de277ba3294b60fef7c5b55

Align the comment with the class , dropping the 'ns'

idem, please remove the 'ns'

Local variable could be also 'roles' and 'role'

idem , drop of 'ns'. in the comment also below

rebased onto 3e93f8ca40152de8f685d76e10610a4214c85e31

As nsFilterRoles is not widely used so far. Could you change it into FilterRoles or is it too late ?
Also the name of the file 'nsrole.py' could be renamed 'role.py'

rebased onto 14ecbc9179607e97a9981a77892a257e143df57f

As nsFilterRoles is not widely used so far. Could you change it into FilterRoles or is it too late ?
Also the name of the file 'nsrole.py' could be renamed 'role.py'

It has been already used in acivattr_test.py, basic_test.py, cos_test.py (already maerged).So we cant make these change right now .

All other changes are done as per your suggestion

@aborah I think we can make those changes as part of this patch, so can we do the rename like @tbordaz suggests? He generally has good points, and test cases are not "fixed in stone". We change them a lot.

rebased onto 964a4a4c75fc95158f52f7d04198134806adf792

rebased onto 8913ec4660c0db09c7e36f3470b0bba9b20ba1f1

Minor change test_nsmangerole --> test_managedrole (without 'ns' and with 'd')

test_managedrole

rebased onto f8d0f4d652835fed3fa699793ea31a303aecf416

@tbordaz all changes are done as per your suggestion . kindly check

@aborah thanks for your continuous effort moving away from 'ns' ;)
The code looks good to me so you have my ACK but wait for @firstyear ACK before merging (he is the true python expert)

Seems fine to me at this point,

rebased onto 2c5f34d6f3d9ddac30b980724f4eb3dad285882c

Pull-Request has been merged by firstyear

389-ds-base is moving from Pagure to Github. This means that new issues and pull requests
will be accepted only in 389-ds-base's github repository.

This pull request has been cloned to Github as issue and is available here:
- https://github.com/389ds/389-ds-base/issues/3313

If you want to continue to work on the PR, please navigate to the github issue,
download the patch from the attachments and file a new pull request.

Thank you for understanding. We apologize for all inconvenience.

Pull-Request has been closed by spichugi

Metadata