See <http://vm-166.abc.idm.lab.eng.brq.redhat.com:8080/job/NIGHTLY/85/display/redirect> ------------------------------------------ [...truncated 4477 lines...] suites/paged_results/paged_results_test.py::test_maxsimplepaged_per_conn_success[1000] PASSED suites/paged_results/paged_results_test.py::test_maxsimplepaged_per_conn_failure[0] PASSED suites/paged_results/paged_results_test.py::test_maxsimplepaged_per_conn_failure[1] PASSED suites/password/password_test.py::test_password_delete_specific_password PASSED suites/password/pwdAdmin_test.py::test_pwdAdmin_init PASSED suites/password/pwdAdmin_test.py::test_pwdAdmin PASSED suites/password/pwdAdmin_test.py::test_pwdAdmin_config_validation PASSED suites/password/pwdPolicy_attribute_test.py::test_change_pwd[on-off-UNWILLING_TO_PERFORM] PASSED suites/password/pwdPolicy_attribute_test.py::test_change_pwd[off-off-UNWILLING_TO_PERFORM] PASSED suites/password/pwdPolicy_attribute_test.py::test_change_pwd[off-on-None] PASSED suites/password/pwdPolicy_attribute_test.py::test_change_pwd[on-on-None] PASSED suites/password/pwdPolicy_attribute_test.py::test_pwd_min_age PASSED suites/password/pwdPolicy_inherit_global_test.py::test_entry_has_no_restrictions[off-off] PASSED suites/password/pwdPolicy_inherit_global_test.py::test_entry_has_no_restrictions[on-off] PASSED suites/password/pwdPolicy_inherit_global_test.py::test_entry_has_no_restrictions[off-on] PASSED suites/password/pwdPolicy_inherit_global_test.py::test_entry_has_restrictions[cn=config] PASSED suites/password/pwdPolicy_inherit_global_test.py::test_entry_has_restrictions[cn="cn=nsPwPolicyEntry,ou=People,dc=example,dc=com",cn=nsPwPolicyContainer,ou=People,dc=example,dc=com] PASSED suites/password/pwdPolicy_syntax_test.py::test_pwdPolicy_syntax PASSED suites/password/pwdPolicy_warning_test.py::test_different_values[ ] PASSED suites/password/pwdPolicy_warning_test.py::test_different_values[junk123] PASSED suites/password/pwdPolicy_warning_test.py::test_different_values[on] PASSED suites/password/pwdPolicy_warning_test.py::test_different_values[off] PASSED suites/password/pwdPolicy_warning_test.py::test_expiry_time PASSED suites/password/pwdPolicy_warning_test.py::test_password_warning[passwordSendExpiringTime-off] PASSED suites/password/pwdPolicy_warning_test.py::test_password_warning[passwordWarning-3600] PASSED suites/password/pwdPolicy_warning_test.py::test_with_different_password_states PASSED suites/password/pwdPolicy_warning_test.py::test_default_behavior PASSED suites/password/pwdPolicy_warning_test.py::test_when_maxage_and_warning_are_the_same PASSED suites/password/pwdPolicy_warning_test.py::test_with_local_policy PASSED suites/password/pwd_algo_test.py::test_pwd_algo_test PASSED suites/password/pwd_lockout_bypass_test.py::test_lockout_bypass PASSED suites/password/pwp_history_test.py::test_pwp_history_test PASSED suites/password/regression_test.py::test_trivial_passw_check[UIDpwtest1] PASSED suites/password/regression_test.py::test_trivial_passw_check[MAILpwtest1@xxxxxxxxxx] PASSED suites/password/regression_test.py::test_trivial_passw_check[GNpwtest1] PASSED suites/password/regression_test.py::test_trivial_passw_check[CNpwtest1] PASSED suites/password/regression_test.py::test_trivial_passw_check[SNpwtest1] PASSED suites/password/regression_test.py::test_trivial_passw_check[CNpwtest1ZZZZ] PASSED suites/password/regression_test.py::test_trivial_passw_check[ZZZZZCNpwtest1] PASSED suites/password/regression_test.py::test_trivial_passw_check[ZCNpwtest1] PASSED suites/password/regression_test.py::test_trivial_passw_check[CNpwtest1Z] PASSED suites/password/regression_test.py::test_trivial_passw_check[ZCNpwtest1Z] PASSED suites/password/regression_test.py::test_trivial_passw_check[ZZCNpwtest1] PASSED suites/password/regression_test.py::test_trivial_passw_check[CNpwtest1ZZ] PASSED suites/password/regression_test.py::test_trivial_passw_check[ZZCNpwtest1ZZ] PASSED suites/password/regression_test.py::test_trivial_passw_check[ZZZCNpwtest1] PASSED suites/password/regression_test.py::test_trivial_passw_check[CNpwtest1ZZZ] PASSED suites/password/regression_test.py::test_trivial_passw_check[ZZZCNpwtest1ZZZ] PASSED suites/password/regression_test.py::test_trivial_passw_check[ZZZZZZCNpwtest1ZZZZZZZZ] PASSED suites/password/regression_test.py::test_global_vs_local[UIDpwtest1] PASSED suites/password/regression_test.py::test_global_vs_local[MAILpwtest1@xxxxxxxxxx] PASSED suites/password/regression_test.py::test_global_vs_local[GNpwtest1] PASSED suites/password/regression_test.py::test_global_vs_local[CNpwtest1] PASSED suites/password/regression_test.py::test_global_vs_local[SNpwtest1] PASSED suites/password/regression_test.py::test_global_vs_local[CNpwtest1ZZZZ] PASSED suites/password/regression_test.py::test_global_vs_local[ZZZZZCNpwtest1] PASSED suites/password/regression_test.py::test_global_vs_local[ZCNpwtest1] PASSED suites/password/regression_test.py::test_global_vs_local[CNpwtest1Z] PASSED suites/password/regression_test.py::test_global_vs_local[ZCNpwtest1Z] PASSED suites/password/regression_test.py::test_global_vs_local[ZZCNpwtest1] PASSED suites/password/regression_test.py::test_global_vs_local[CNpwtest1ZZ] PASSED suites/password/regression_test.py::test_global_vs_local[ZZCNpwtest1ZZ] PASSED suites/password/regression_test.py::test_global_vs_local[ZZZCNpwtest1] PASSED suites/password/regression_test.py::test_global_vs_local[CNpwtest1ZZZ] PASSED suites/password/regression_test.py::test_global_vs_local[ZZZCNpwtest1ZZZ] PASSED suites/password/regression_test.py::test_global_vs_local[ZZZZZZCNpwtest1ZZZZZZZZ] PASSED suites/plugins/accpol_test.py::test_glact_inact PASSED suites/plugins/accpol_test.py::test_glremv_lastlogin PASSED suites/plugins/accpol_test.py::test_glact_login PASSED suites/plugins/accpol_test.py::test_glinact_limit PASSED suites/plugins/accpol_test.py::test_glnologin_attr PASSED suites/plugins/accpol_test.py::test_glnoalt_stattr PASSED suites/plugins/accpol_test.py::test_glattr_modtime PASSED suites/plugins/accpol_test.py::test_glnoalt_nologin PASSED suites/plugins/accpol_test.py::test_glinact_nsact PASSED suites/plugins/accpol_test.py::test_glinact_acclock PASSED suites/plugins/accpol_test.py::test_glnact_pwexp PASSED suites/plugins/accpol_test.py::test_locact_inact PASSED suites/plugins/accpol_test.py::test_locinact_modrdn PASSED suites/plugins/accpol_test.py::test_locact_modrdn PASSED suites/plugins/attr_uniqueness_test.py::test_attr_uniqueness_init PASSED suites/plugins/attr_uniqueness_test.py::test_attr_uniqueness PASSED suites/plugins/dna_test.py::test_basic PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_001 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_003 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_004 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_005 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_006 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_007 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_008 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_009 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_010 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_011 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_012 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_013 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_014 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_015 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_016 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_017 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_018 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_019 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_020 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_021 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_022 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_023 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_024 PASSED suites/plugins/memberof_test.py::test_memberof_MultiGrpAttr_025 PASSED suites/plugins/memberof_test.py::test_memberof_auto_add_oc PASSED suites/plugins/rootdn_plugin_test.py::test_rootdn_init PASSED suites/plugins/rootdn_plugin_test.py::test_rootdn_access_specific_time PASSED suites/plugins/rootdn_plugin_test.py::test_rootdn_access_day_of_week PASSED suites/plugins/rootdn_plugin_test.py::test_rootdn_access_denied_ip PASSED suites/plugins/rootdn_plugin_test.py::test_rootdn_access_denied_host PASSED suites/plugins/rootdn_plugin_test.py::test_rootdn_access_allowed_ip PASSED suites/plugins/rootdn_plugin_test.py::test_rootdn_access_allowed_host PASSED suites/plugins/rootdn_plugin_test.py::test_rootdn_config_validate PASSED suites/psearch/psearch_test.py::test_psearch PASSED suites/replication/acceptance_test.py::test_add_entry PASSED suites/replication/acceptance_test.py::test_modify_entry PASSED suites/replication/acceptance_test.py::test_delete_entry PASSED suites/replication/acceptance_test.py::test_modrdn_entry[0] PASSED suites/replication/acceptance_test.py::test_modrdn_entry[1] PASSED suites/replication/acceptance_test.py::test_modrdn_after_pause PASSED suites/replication/acceptance_test.py::test_modify_stripattrs PASSED suites/replication/acceptance_test.py::test_new_suffix PASSED suites/replication/acceptance_test.py::test_many_attrs PASSED suites/replication/acceptance_test.py::test_double_delete PASSED suites/replication/acceptance_test.py::test_password_repl_error PASSED suites/replication/acceptance_test.py::test_invalid_agmt PASSED suites/replication/changelog_test.py::test_verify_changelog PASSED suites/replication/changelog_test.py::test_verify_changelog_online_backup PASSED suites/replication/changelog_test.py::test_verify_changelog_offline_backup PASSED suites/replication/cleanallruv_test.py::test_clean PASSED suites/replication/cleanallruv_test.py::test_clean_restart PASSED suites/replication/cleanallruv_test.py::test_clean_force PASSED suites/replication/cleanallruv_test.py::test_abort PASSED suites/replication/cleanallruv_test.py::test_abort_restart PASSED suites/replication/cleanallruv_test.py::test_abort_certify PASSED suites/replication/cleanallruv_test.py::test_stress_clean PASSED suites/replication/cleanallruv_test.py::test_multiple_tasks_with_force PASSED suites/replication/single_master_test.py::test_mail_attr_repl PASSED suites/replication/single_master_test.py::test_lastupdate_attr_before_init PASSED suites/replication/tombstone_test.py::test_purge_success PASSED suites/replication/wait_for_async_feature_test.py::test_not_int_value PASSED suites/replication/wait_for_async_feature_test.py::test_multi_value PASSED suites/replication/wait_for_async_feature_test.py::test_value_check[waitfor_async_attr0] PASSED suites/replication/wait_for_async_feature_test.py::test_value_check[waitfor_async_attr1] PASSED suites/replication/wait_for_async_feature_test.py::test_value_check[waitfor_async_attr2] PASSED suites/replication/wait_for_async_feature_test.py::test_value_check[waitfor_async_attr3] PASSED suites/replication/wait_for_async_feature_test.py::test_behavior_with_value[waitfor_async_attr0] PASSED suites/replication/wait_for_async_feature_test.py::test_behavior_with_value[waitfor_async_attr1] PASSED suites/replication/wait_for_async_feature_test.py::test_behavior_with_value[waitfor_async_attr2] PASSED suites/replication/wait_for_async_feature_test.py::test_behavior_with_value[waitfor_async_attr3] PASSED suites/schema/test_eduperson.py::test_account_locking PASSED suites/schema/test_schema.py::test_schema_comparewithfiles PASSED suites/setup_ds/setup_ds_test.py::test_slapd_InstScriptsEnabled[true] PASSED suites/setup_ds/setup_ds_test.py::test_slapd_InstScriptsEnabled[false] PASSED =================================== FAILURES =================================== _____________________ test_ticket48228_test_subtree_policy _____________________ topology_st = <lib389.topologies.TopologyMain object at 0x7f5e0bf3c790> def test_ticket48228_test_subtree_policy(topology_st): """ Check subtree level password policy """ log.info('\'' Set inhistory = 6'\'') set_subtree_pwpolicy(topology_st) log.info('\'' Bind as directory manager'\'') log.info("Bind as %s" % DN_DM) topology_st.standalone.simple_bind_s(DN_DM, PASSWORD) log.info('\'' Add an entry'\'' + USER2_DN) try: topology_st.standalone.add_s( Entry((USER2_DN, {'\''objectclass'\'': "top person organizationalPerson inetOrgPerson".split(), '\''sn'\'': '\''2'\'', '\''cn'\'': '\''user 2'\'', '\''uid'\'': '\''user2'\'', '\''givenname'\'': '\''user'\'', '\''mail'\'': '\''user2@xxxxxxxxxxx'\'', '\''userpassword'\'': '\''password'\''}))) except ldap.LDAPError as e: log.fatal('\''test_ticket48228: Failed to add user'\'' + USER2_DN + '\'': error '\'' + e.message['\''desc'\'']) assert False log.info('\'' Update the password of '\'' + USER2_DN + '\'' 6 times'\'') > update_passwd(topology_st, USER2_DN, '\''password'\'', 6) <http://vm-166.abc.idm.lab.eng.brq.redhat.com:8080/job/NIGHTLY/ws/source/389-ds-base/dirsrvtests/tests/tickets/ticket48228_test.py>:231: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ topology_st = <lib389.topologies.TopologyMain object at 0x7f5e0bf3c790> user = '\''uid=user2,dc=example,dc=com'\'', passwd = '\''password'\'', times = 6 def update_passwd(topology_st, user, passwd, times): # Set the default value cpw = passwd for i in range(times): log.info(" Bind as {%s,%s}" % (user, cpw)) topology_st.standalone.simple_bind_s(user, cpw) # Now update the value for this iter. cpw = '\''password%d'\'' % i try: topology_st.standalone.modify_s(user, [(ldap.MOD_REPLACE, '\''userpassword'\'', cpw)]) except ldap.LDAPError as e: log.fatal( '\''test_ticket48228: Failed to update the password '\'' + cpw + '\'' of user '\'' + user + '\'': error '\'' + e.message[ '\''desc'\'']) assert False # checking the first password, which is supposed to be in history inhistory = check_passwd_inhistory(topology_st, user, cpw, passwd) > assert inhistory == 1 E assert 0 == 1 <http://vm-166.abc.idm.lab.eng.brq.redhat.com:8080/job/NIGHTLY/ws/source/389-ds-base/dirsrvtests/tests/tickets/ticket48228_test.py>:142: AssertionError ----------------------------- Captured stderr call ----------------------------- INFO:dirsrvtests.tests.tickets.ticket48228_test: Set inhistory = 6 INFO:dirsrvtests.tests.tickets.ticket48228_test: +++++ Enable subtree level password policy +++++ INFO:dirsrvtests.tests.tickets.ticket48228_test: Add the container INFO:dirsrvtests.tests.tickets.ticket48228_test: Add the password policy subentry {passwordHistory: on, passwordInHistory: 6} INFO:dirsrvtests.tests.tickets.ticket48228_test: Add the COS template INFO:dirsrvtests.tests.tickets.ticket48228_test: Add the COS definition INFO:dirsrvtests.tests.tickets.ticket48228_test: Bind as directory manager INFO:dirsrvtests.tests.tickets.ticket48228_test:Bind as cn=Directory Manager INFO:dirsrvtests.tests.tickets.ticket48228_test: Add an entryuid=user2,dc=example,dc=com INFO:dirsrvtests.tests.tickets.ticket48228_test: Update the password of uid=user2,dc=example,dc=com 6 times INFO:dirsrvtests.tests.tickets.ticket48228_test: Bind as {uid=user2,dc=example,dc=com,password} INFO:dirsrvtests.tests.tickets.ticket48228_test: Bind as {uid=user2,dc=example,dc=com,password0} INFO:dirsrvtests.tests.tickets.ticket48228_test: Bind as {uid=user2,dc=example,dc=com,password1} INFO:dirsrvtests.tests.tickets.ticket48228_test: Bind as {uid=user2,dc=example,dc=com,password2} INFO:dirsrvtests.tests.tickets.ticket48228_test: Bind as {uid=user2,dc=example,dc=com,password3} INFO:dirsrvtests.tests.tickets.ticket48228_test: Bind as {uid=user2,dc=example,dc=com,password4} INFO:dirsrvtests.tests.tickets.ticket48228_test: Bind as {uid=user2,dc=example,dc=com,password5} ============= 1 failed, 607 passed, 1 skipped in 12972.67 seconds ==============' + '[' 1 -ne 0 ']' + echo CI Tests 'FAILED!' CI Tests FAILED! + MSG=FAILED + RC=1 + sudo /usr/sbin/sendmail mreynolds@xxxxxxxxxx firstyear@xxxxxxxxxx + sudo rm -rf /var/tmp/slapd.vg.50764 /var/tmp/slapd.vg.77453 /var/tmp/slapd.vg.77598 /var/tmp/slapd.vg.92819 + exit 1 Build step 'Execute shell' marked build as failure _______________________________________________ 389-devel mailing list -- 389-devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to 389-devel-leave@xxxxxxxxxxxxxxxxxxxxxxx