See
<http://vm-166.abc.idm.lab.eng.brq.redhat.com:8080/job/NIGHTLY/97/display/redirect>
------------------------------------------
[...truncated 7547 lines...]
except ldap.LDAPError as e:
log.error('\''Failed to add COS template for branch6: error '\'' +
e.message['\''desc'\''])
assert False
# Add the COS definition
try:
topology_st.standalone.add_s(Entry((BRANCH6_COS_DEF, {
'\''objectclass'\'': '\''top ldapsubentry cosSuperDefinition
cosPointerDefinition'\''.split(),
'\''cn'\'':
'\''cn=nsPwPolicyEntry,ou=lower,ou=lower,ou=people,dc=example,dc=com'\'',
'\''costemplatedn'\'': BRANCH6_COS_TMPL,
'\''cosAttribute'\'': '\''pwdpolicysubentry default
operational-default'\''
})))
except ldap.LDAPError as e:
log.error('\''Failed to add COS def for branch6: error '\'' +
e.message['\''desc'\''])
assert False
time.sleep(2)
#
# Now check that each user has its expected passwordPolicy subentry
#
try:
entries = topology_st.standalone.search_s(USER1_DN,
ldap.SCOPE_BASE, '\''(objectclass=top)'\'', ['\''pwdpolicysubentry'\''])
if not entries[0].hasValue('\''pwdpolicysubentry'\'', BRANCH1_PWP):
log.fatal('\''User %s does not have expected
pwdpolicysubentry!'\'')
assert False
except ldap.LDAPError as e:
log.fatal('\''Unable to search for entry %s: error %s'\'' %
(USER1_DN, e.message['\''desc'\'']))
> assert False
E assert False
tickets/ticket47980_test.py:541: AssertionError
---------------------------- Captured stdout setup -----------------------------
OK group dirsrv exists
OK user dirsrv exists
---------------------------- Captured stderr setup -----------------------------
INFO:lib389.topologies:Instance with parameters {'\''ldap-port'\'': 38901,
'\''suffix'\'': '\''dc=example,dc=com'\'', '\''krb5_realm'\'': None,
'\''deployed-dir'\'': '\''/usr'\'', '\''inst-backupdir'\'': '\''/tmp'\'',
'\''hostname'\'': '\''localhost'\'', '\''server-id'\'': '\''standalone1'\'',
'\''root-pw'\'': '\''password'\'', '\''root-dn'\'': '\''cn=Directory
Manager'\'', '\''group-id'\'': None, '\''InstScriptsEnabled'\'': None,
'\''user-id'\'': None, '\''ldap-secureport'\'': None} was created.
----------------------------- Captured stderr call -----------------------------
INFO:dirsrvtests.tests.tickets.ticket47980_test:Testing Ticket 47980 - Testing
multiple nested COS pointer definitions are processed correctly
CRITICAL:dirsrvtests.tests.tickets.ticket47980_test:Unable to search for entry
uid=user1,ou=level1,dc=example,dc=com: error Operations error
_______________________________ test_ticket48944 _______________________________
topo = <lib389.topologies.TopologyMain object at 0x7f02fe830990>
def test_ticket48944(topo):
"""On a read only replica invalid state info can accumulate
:ID: 833be131-f3bf-493e-97c6-3121438a07b1
:feature: Account Policy Plugin
:setup: Two master and two consumer setup
:steps: 1. Configure Account policy plugin with alwaysrecordlogin set
to yes
2. Check if entries are synced across masters and consumers
3. Stop all masters and consumers
4. Start master1 and bind as user1 to create lastLoginTime
attribute
5. Start master2 and wait for the sync of lastLoginTime
attribute
6. Stop master1 and bind as user1 from master2
7. Check if lastLoginTime attribute is updated and greater than
master1
8. Stop master2, start consumer1, consumer2 and then master2
9. Check if lastLoginTime attribute is updated on both consumers
10. Bind as user1 to both consumers and check the value is
updated
11. Check if lastLoginTime attribute is not updated from
consumers
12. Start master1 and make sure the lastLoginTime attribute is
not updated on consumers
13. Bind as user1 from master1 and check if all masters and
consumers have the same value
14. Check error logs of consumers for
"deletedattribute;deleted" message
:expectedresults: No accumulation of replica invalid state info on
consumers
"""
log.info("Ticket 48944 - On a read only replica invalid state info can
accumulate")
user_name = '\''newbzusr'\''
tuserdn = '\''uid={}1,ou=people,{}'\''.format(user_name, SUFFIX)
inst_list = ['\''master1'\'', '\''master2'\'', '\''consumer1'\'',
'\''consumer2'\'']
for inst_name in inst_list:
_enable_plugin(topo, inst_name)
log.info('\''Sleep for 10secs for the server to come up'\'')
time.sleep(10)
log.info('\''Add few entries to server and check if entries are
replicated'\'')
for nos in range(10):
userdn = '\''uid={}{},ou=people,{}'\''.format(user_name, nos,
SUFFIX)
try:
topo.ms['\''master1'\''].add_s(Entry((userdn, {
'\''objectclass'\'': '\''top person'\''.split(),
'\''objectclass'\'': '\''inetorgperson'\'',
'\''cn'\'': user_name,
'\''sn'\'': user_name,
'\''userpassword'\'': USER_PW,
'\''mail'\'': '\''{}@redhat.com'\''.format(user_name)})))
except ldap.LDAPError as e:
log.error('\''Failed to add {} user: error
{}'\''.format(userdn, e.message['\''desc'\'']))
raise e
log.info('\''Checking if entries are synced across masters and
consumers'\'')
entries_m1 = topo.ms['\''master1'\''].search_s(SUFFIX,
ldap.SCOPE_SUBTREE, '\''uid={}*'\''.format(user_name), ['\''uid=*'\''])
exp_entries = str(entries_m1).count('\''dn:
uid={}*'\''.format(user_name))
entries_m2 = topo.ms['\''master2'\''].search_s(SUFFIX,
ldap.SCOPE_SUBTREE, '\''uid={}*'\''.format(user_name), ['\''uid=*'\''])
act_entries = str(entries_m2).count('\''dn:
uid={}*'\''.format(user_name))
assert act_entries == exp_entries
inst_list = ['\''consumer1'\'', '\''consumer2'\'']
for inst in inst_list:
entries_other = topo.cs[inst].search_s(SUFFIX, ldap.SCOPE_SUBTREE,
'\''uid={}*'\''.format(user_name), ['\''uid=*'\''])
act_entries = str(entries_other).count('\''dn:
uid={}*'\''.format(user_name))
assert act_entries == exp_entries
topo.ms['\''master2'\''].stop(timeout=10)
topo.ms['\''master1'\''].stop(timeout=10)
topo.cs['\''consumer1'\''].stop(timeout=10)
topo.cs['\''consumer2'\''].stop(timeout=10)
topo.ms['\''master1'\''].start(timeout=10)
lastLogin_m1_1 = _last_login_time(topo, tuserdn, '\''master1'\'',
'\''bind_n_check'\'')
log.info('\''Start master2 to sync lastLoginTime attribute from
master1'\'')
topo.ms['\''master2'\''].start(timeout=10)
time.sleep(5)
log.info('\''Stop master1'\'')
topo.ms['\''master1'\''].stop(timeout=10)
log.info('\''Bind as user1 to master2 and check if lastLoginTime
attribute is greater than master1'\'')
> lastLogin_m2_1 = _last_login_time(topo, tuserdn, '\''master2'\'',
> '\''bind_n_check'\'')
<http://vm-166.abc.idm.lab.eng.brq.redhat.com:8080/job/NIGHTLY/ws/source/389-ds-base/dirsrvtests/tests/tickets/ticket48944_test.py>:156:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
<http://vm-166.abc.idm.lab.eng.brq.redhat.com:8080/job/NIGHTLY/ws/source/389-ds-base/dirsrvtests/tests/tickets/ticket48944_test.py>:34:
in _last_login_time
topo.ms[inst_name].simple_bind_s(userdn, USER_PW)
<http://vm-166.abc.idm.lab.eng.brq.redhat.com:8080/job/NIGHTLY/ws/source/lib389/lib389/__init__.py>:162:
in inner
return f(*args, **kwargs)
/usr/lib64/python2.7/site-packages/ldap/ldapobject.py:223: in simple_bind_s
resp_type, resp_data, resp_msgid, resp_ctrls =
self.result3(msgid,all=1,timeout=self.timeout)
<http://vm-166.abc.idm.lab.eng.brq.redhat.com:8080/job/NIGHTLY/ws/source/lib389/lib389/__init__.py>:162:
in inner
return f(*args, **kwargs)
/usr/lib64/python2.7/site-packages/ldap/ldapobject.py:514: in result3
resp_ctrl_classes=resp_ctrl_classes
<http://vm-166.abc.idm.lab.eng.brq.redhat.com:8080/job/NIGHTLY/ws/source/lib389/lib389/__init__.py>:162:
in inner
return f(*args, **kwargs)
/usr/lib64/python2.7/site-packages/ldap/ldapobject.py:521: in result4
ldap_result =
self._ldap_call(self._l.result4,msgid,all,timeout,add_ctrls,add_intermediates,add_extop)
<http://vm-166.abc.idm.lab.eng.brq.redhat.com:8080/job/NIGHTLY/ws/source/lib389/lib389/__init__.py>:162:
in inner
return f(*args, **kwargs)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <lib389.DirSrv object at 0x7f02fe84bb10>
func = <built-in method result4 of LDAP object at 0x7f0308a4bdf0>
args = (2, 1, -1, 0, 0, 0), kwargs = {}, diagnostic_message_success = None
e = INVALID_CREDENTIALS({'\''desc'\'': '\''Invalid credentials'\''},)
def _ldap_call(self,func,*args,**kwargs):
"""
Wrapper method mainly for serializing calls into OpenLDAP libs
and trace logs
"""
self._ldap_object_lock.acquire()
if __debug__:
if self._trace_level>=1:
self._trace_file.write('\''*** %s %s - %s\n%s\n'\'' % (
repr(self),
self._uri,
'\''.'\''.join((self.__class__.__name__,func.__name__)),
pprint.pformat((args,kwargs))
))
if self._trace_level>=9:
traceback.print_stack(limit=self._trace_stack_limit,file=self._trace_file)
diagnostic_message_success = None
try:
try:
> result = func(*args,**kwargs)
E INVALID_CREDENTIALS: {'\''desc'\'': '\''Invalid credentials'\''}
/usr/lib64/python2.7/site-packages/ldap/ldapobject.py:106: INVALID_CREDENTIALS
---------------------------- Captured stdout setup -----------------------------
OK group dirsrv exists
OK user dirsrv exists
OK group dirsrv exists
OK user dirsrv exists
OK group dirsrv exists
OK user dirsrv exists
OK group dirsrv exists
OK user dirsrv exists
('\''Update succeeded: status '\'', '\''0 Total update succeeded'\'')
('\''Update succeeded: status '\'', '\''0 Total update succeeded'\'')
('\''Update succeeded: status '\'', '\''0 Total update succeeded'\'')
---------------------------- Captured stderr setup -----------------------------
INFO:lib389.topologies:Instance with parameters {'\''ldap-port'\'': 39201,
'\''suffix'\'': '\''dc=example,dc=com'\'', '\''krb5_realm'\'': None,
'\''deployed-dir'\'': '\''/usr'\'', '\''inst-backupdir'\'': '\''/tmp'\'',
'\''hostname'\'': '\''localhost'\'', '\''server-id'\'': '\''consumer1'\'',
'\''root-pw'\'': '\''password'\'', '\''root-dn'\'': '\''cn=Directory
Manager'\'', '\''group-id'\'': None, '\''InstScriptsEnabled'\'': None,
'\''user-id'\'': None, '\''ldap-secureport'\'': None} was created.
INFO:lib389:Found entry dn: cn=replrepl,cn=config
cn: bind dn pseudo user
cn: replrepl
objectClass: top
objectClass: person
sn: bind dn pseudo user
userPassword:
{SSHA512}Lzrv2s3GvWhLHrkNeyyarm1zjwNa/WNGWn/5aqSYcJhMeWVl487Kj0fFlIxDDt/n0aUr2kZDW9yujkFaxj/rEC/4+44Erhud
INFO:lib389.topologies:Instance with parameters {'\''ldap-port'\'': 39202,
'\''suffix'\'': '\''dc=example,dc=com'\'', '\''krb5_realm'\'': None,
'\''deployed-dir'\'': '\''/usr'\'', '\''inst-backupdir'\'': '\''/tmp'\'',
'\''hostname'\'': '\''localhost'\'', '\''server-id'\'': '\''consumer2'\'',
'\''root-pw'\'': '\''password'\'', '\''root-dn'\'': '\''cn=Directory
Manager'\'', '\''group-id'\'': None, '\''InstScriptsEnabled'\'': None,
'\''user-id'\'': None, '\''ldap-secureport'\'': None} was created.
INFO:lib389:Found entry dn: cn=replrepl,cn=config
cn: bind dn pseudo user
cn: replrepl
objectClass: top
objectClass: person
sn: bind dn pseudo user
userPassword:
{SSHA512}DbYqdGR4dOu6U3GYfmoY0lP/i3lYQ1EQR7ZRh35Tyn8A1/krqVlLTdqEfkOrZyn9Ej3ciEJATtcIwh5VFXSVEPBE4uglIotn
INFO:lib389.topologies:Instance with parameters {'\''ldap-port'\'': 39001,
'\''suffix'\'': '\''dc=example,dc=com'\'', '\''krb5_realm'\'': None,
'\''deployed-dir'\'': '\''/usr'\'', '\''inst-backupdir'\'': '\''/tmp'\'',
'\''hostname'\'': '\''localhost'\'', '\''server-id'\'': '\''master1'\'',
'\''root-pw'\'': '\''password'\'', '\''root-dn'\'': '\''cn=Directory
Manager'\'', '\''group-id'\'': None, '\''InstScriptsEnabled'\'': None,
'\''user-id'\'': None, '\''ldap-secureport'\'': None} was created.
INFO:lib389:Found entry dn: cn=replrepl,cn=config
cn: bind dn pseudo user
cn: replrepl
objectClass: top
objectClass: person
sn: bind dn pseudo user
userPassword:
{SSHA512}GpIoboj/nc2v6fop0sDZHT7iS0xh/PL3Og0ixJK7X4ovKL8+o5v5/82uNabPmmK0zlspd2xDcKx6wYF1bpTUjgdQ5qyv401i
INFO:lib389.topologies:Instance with parameters {'\''ldap-port'\'': 39002,
'\''suffix'\'': '\''dc=example,dc=com'\'', '\''krb5_realm'\'': None,
'\''deployed-dir'\'': '\''/usr'\'', '\''inst-backupdir'\'': '\''/tmp'\'',
'\''hostname'\'': '\''localhost'\'', '\''server-id'\'': '\''master2'\'',
'\''root-pw'\'': '\''password'\'', '\''root-dn'\'': '\''cn=Directory
Manager'\'', '\''group-id'\'': None, '\''InstScriptsEnabled'\'': None,
'\''user-id'\'': None, '\''ldap-secureport'\'': None} was created.
INFO:lib389:Found entry dn: cn=replrepl,cn=config
cn: bind dn pseudo user
cn: replrepl
objectClass: top
objectClass: person
sn: bind dn pseudo user
userPassword:
{SSHA512}LQ7LKt5ay++EQ6tUATRfR+gJBKTdR0pbF8Y8Cy0b/PpQBid05q1H+LZiaGHxQDuAAgPHJRTEhWZPBPIfmn3Kr0jEppg1sjA9
INFO:Replica:Starting async replication
cn=meTo_localhost:39001,cn=replica,cn=dc\3Dexample\2Cdc\3Dcom,cn=mapping
tree,cn=config
INFO:Replica:Starting async replication
cn=meTo_localhost:39201,cn=replica,cn=dc\3Dexample\2Cdc\3Dcom,cn=mapping
tree,cn=config
INFO:Replica:Starting async replication
cn=meTo_localhost:39202,cn=replica,cn=dc\3Dexample\2Cdc\3Dcom,cn=mapping
tree,cn=config
----------------------------- Captured stderr call -----------------------------
INFO:dirsrvtests.tests.tickets.ticket48944_test:Ticket 48944 - On a read only
replica invalid state info can accumulate
INFO:dirsrvtests.tests.tickets.ticket48944_test:Enable account policy plugin
and configure required attributes
INFO:dirsrvtests.tests.tickets.ticket48944_test:Configure Account policy plugin
on master1
INFO:dirsrvtests.tests.tickets.ticket48944_test:Enable account policy plugin
and configure required attributes
INFO:dirsrvtests.tests.tickets.ticket48944_test:Configure Account policy plugin
on master2
INFO:dirsrvtests.tests.tickets.ticket48944_test:Enable account policy plugin
and configure required attributes
INFO:dirsrvtests.tests.tickets.ticket48944_test:Configure Account policy plugin
on consumer1
INFO:dirsrvtests.tests.tickets.ticket48944_test:Enable account policy plugin
and configure required attributes
INFO:dirsrvtests.tests.tickets.ticket48944_test:Configure Account policy plugin
on consumer2
INFO:dirsrvtests.tests.tickets.ticket48944_test:Sleep for 10secs for the server
to come up
INFO:dirsrvtests.tests.tickets.ticket48944_test:Add few entries to server and
check if entries are replicated
INFO:dirsrvtests.tests.tickets.ticket48944_test:Checking if entries are synced
across masters and consumers
INFO:dirsrvtests.tests.tickets.ticket48944_test:Start master2 to sync
lastLoginTime attribute from master1
INFO:dirsrvtests.tests.tickets.ticket48944_test:Stop master1
INFO:dirsrvtests.tests.tickets.ticket48944_test:Bind as user1 to master2 and
check if lastLoginTime attribute is greater than master1
======== 16 failed, 566 passed, 1 skipped, 38 error in 8897.36 seconds
========='
+ '[' 1 -ne 0 ']'
+ echo CI Tests 'FAILED!'
CI Tests FAILED!
+ MSG=FAILED
+ RC=1
+ sudo /usr/sbin/sendmail [email protected] [email protected]
+ sudo rm -rf /var/tmp/slapd.vg.106801 /var/tmp/slapd.vg.63085
/var/tmp/slapd.vg.89976 /var/tmp/slapd.vg.90088
+ exit 1
Build step 'Execute shell' marked build as failure
_______________________________________________
389-devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]