Skip to content

Tests: Update LdapOperations to fail on bind immediately#8740

Merged
spoore1 merged 1 commit into
SSSD:masterfrom
jakub-vavra-cz:DS_aws
May 29, 2026
Merged

Tests: Update LdapOperations to fail on bind immediately#8740
spoore1 merged 1 commit into
SSSD:masterfrom
jakub-vavra-cz:DS_aws

Conversation

@jakub-vavra-cz

Copy link
Copy Markdown
Contributor

Summary

  • fail fast in LdapOperations.__init__ when LDAP bind fails, raising LdapException instead of keeping a tuple in self.conn
  • initialize LDAP using self.uri so optional custom port values are honored
  • avoid later misleading runtime errors such as 'tuple' object has no attribute 'modify_s' and surface the real bind problem early

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the LDAP initialization in the test utilities to correctly use the configured self.uri (which includes the port if specified) instead of the raw uri. It also adds error handling to raise an LdapException if the LDAP bind operation returns an error tuple. There are no review comments to address, and I have no additional feedback to provide.

@spoore1

spoore1 commented May 28, 2026

Copy link
Copy Markdown
Contributor

Testing with this looks good:

2026-05-28T14:26:59 =========================== short test summary info ============================
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_all_misc.py::TestMisc::test_0017_filesldap
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_all_misc.py::TestMisc::test_0006_getent_group
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_all_misc.py::TestMisc::test_0007_getent_admproxy
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_all_misc.py::TestMisc::test_0008_1636002
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_automount.py::Testautofsresponder::test_two_automount_maps
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_backtrace.py::TestPoorManBacktrace::test_0002_bz1949149
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_backtrace.py::TestPoorManBacktrace::test_0003_bz1949149
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_backtrace.py::TestPoorManBacktrace::test_0004_bz1949149
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_backtrace.py::TestPoorManBacktrace::test_0005_bz1949149
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_kcm.py::TestKcm::test_client_timeout
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_kcm.py::TestKcm::test_refresh_contain_timestamp
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_kcm.py::TestKcm::test_kcm_check_socket_path
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_kcm.py::TestKcm::test_expired_tickets
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_krb5.py::TestKrbWithLogin::test_0002_generating_lot_of
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_krb_fips.py::Testkrbfips::test_kcm_not_store_tgt
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_ldap_library_debug_level.py::TestLdapLibDebugLevel::test_0001_bz1884207
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_ldap_library_debug_level.py::TestLdapLibDebugLevel::test_0002_bz1884207
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_ldap_library_debug_level.py::TestLdapLibDebugLevel::test_0003_bz1884207
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_local_overrides.py::TestLocalOverrides::test_0001_bz1919942
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_ns_account_lock.py::TestNsAccountLock::test_user_inactivated_locked
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_ns_account_lock.py::TestNsAccountLock::test_inactive_managed_roles
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_ns_account_lock.py::TestNsAccountLock::test_inactivated_filtered_roles
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_ns_account_lock.py::TestNsAccountLock::test_nested_role_inactivated
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_services.py::TestServices::test_0006_bz1909755
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_services.py::TestServices::test_0007_bz971435
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_services.py::TestServices::test_0008_bz1516266
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0001_bz1638295
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0002_bz1638295
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0003_bz1638295
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0004_bz1638295
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0005_bz1638295
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0006_bz1638295
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0007_bz1638295
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0008_bz1761047
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0009_bz1751691
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0010_bz1628122
2026-05-28T14:26:59 PASSED src/tests/multihost/alltests/test_sssctl_ldap.py::Testsssctl::test_0011_bz1406678
2026-05-28T14:26:59 ========= 37 passed, 183 deselected, 2 warnings in 3533.08s (0:58:53) ==========

@spoore1

spoore1 commented May 28, 2026

Copy link
Copy Markdown
Contributor

/packit test

@spoore1

spoore1 commented May 28, 2026

Copy link
Copy Markdown
Contributor

/packit copr-build

@spoore1 spoore1 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. test failures are system tests not multihost tests. The TestingFarm failures are also system tests and not related.

@sssd-bot

Copy link
Copy Markdown
Contributor

The pull request was accepted by @spoore1 with the following PR CI status:


🟢 CodeQL (success)
🟢 osh-diff-scan:fedora-rawhide-x86_64:upstream (success)
🟢 rpm-build:centos-stream-10-x86_64:upstream (success)
🟢 rpm-build:fedora-42-x86_64:upstream (success)
🟢 rpm-build:fedora-43-x86_64:upstream (success)
🟢 rpm-build:fedora-44-x86_64:upstream (success)
🟢 rpm-build:fedora-rawhide-x86_64:upstream (success)
🟢 testing-farm:fedora-42-x86_64:upstream (success)
🟢 testing-farm:fedora-43-x86_64:upstream (success)
🟢 testing-farm:fedora-44-x86_64:centos-stream-10 (success)
🟢 testing-farm:fedora-44-x86_64:upstream (success)
🔴 testing-farm:fedora-rawhide-x86_64:upstream (failure)
🟢 Analyze (target) / cppcheck (success)
🟢 Build / freebsd (success)
🔴 Build / make-distcheck (failure)
🟢 ci / intgcheck (centos-10) (success)
🟢 ci / intgcheck (fedora-42) (success)
🟢 ci / intgcheck (fedora-43) (success)
🟢 ci / intgcheck (fedora-44) (success)
🟢 ci / intgcheck (fedora-45) (success)
🟢 ci / prepare (success)
🟢 ci / system (centos-10) (success)
🟢 ci / system (fedora-42) (success)
🟢 ci / system (fedora-43) (success)
🔴 ci / system (fedora-44) (failure)
🔴 ci / system (fedora-45) (failure)
➖ Coverity scan / coverity (skipped)
🟢 Static code analysis / codeql (success)
🟢 Static code analysis / pre-commit (success)
🟢 Static code analysis / python-system-tests (success)


There are unsuccessful or unfinished checks. Make sure that the failures are not related to this pull request before merging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants