URL: https://github.com/SSSD/sssd/pull/5742
Author: aborah-sudo
 Title: #5742: Tests: RHEL9.0 Regression - alltests-tier1_2
Action: synchronized

To pull the PR as Git branch:
git remote add ghsssd https://github.com/SSSD/sssd
git fetch ghsssd pull/5742/head:pr5742
git checkout pr5742
From 8e1cd18778fae686cea6f45e82efa9bf1a8cbc13 Mon Sep 17 00:00:00 2001
From: Anuj Borah <abo...@redhat.com>
Date: Wed, 11 Aug 2021 15:46:59 +0530
Subject: [PATCH] Tests: RHEL9.0 Regression - alltests-tier1_2

1. 'files provider' enabled
2. nss-pam-ldapd has been removed from rhel9.
---
 .../multihost/alltests/test_sssctl_ldap.py    | 219 ++++++++++--------
 1 file changed, 121 insertions(+), 98 deletions(-)

diff --git a/src/tests/multihost/alltests/test_sssctl_ldap.py b/src/tests/multihost/alltests/test_sssctl_ldap.py
index 44fc5660fd..5d41faf5eb 100644
--- a/src/tests/multihost/alltests/test_sssctl_ldap.py
+++ b/src/tests/multihost/alltests/test_sssctl_ldap.py
@@ -14,6 +14,11 @@
 from constants import ds_instance_name
 
 
+def client_version(multihost):
+    if [int(s) for s in multihost.client[0].distro if s.isdigit()][0] >= 9:
+        return True
+
+
 @pytest.mark.usefixtures('setup_sssd', 'create_posix_usersgroups',
                          'sssdproxyldap')
 @pytest.mark.sssctl
@@ -79,7 +84,8 @@ def test_0003_bz1638295(self, multihost, localusers, backupsssdconf):
         tools = sssdTools(multihost.client[0])
         multihost.client[0].service_sssd('stop')
         tools.remove_sss_cache('/var/lib/sss/db')
-        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp'}, action='update')
+        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp',
+                                 'enable_files_domain': 'true'}, action='update')
         domain_params = {'allowed_uids': 'root, user5000',
                          'user_attributes': '-name, -uidNumber'}
         tools.sssd_conf("ifp", domain_params)
@@ -105,7 +111,8 @@ def test_0004_bz1638295(self, multihost, localusers, backupsssdconf):
         tools = sssdTools(multihost.client[0])
         multihost.client[0].service_sssd('stop')
         tools.remove_sss_cache('/var/lib/sss/db')
-        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp'}, action='update')
+        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp',
+                                 'enable_files_domain': 'true'}, action='update')
         domain_params = {'allowed_uids': '0, 5000',
                          'user_attributes': '-name, -uidNumber'}
         tools.sssd_conf("ifp", domain_params)
@@ -130,7 +137,8 @@ def test_0005_bz1638295(self, multihost, localusers, backupsssdconf):
         tools = sssdTools(multihost.client[0])
         multihost.client[0].service_sssd('stop')
         tools.remove_sss_cache('/var/lib/sss/db')
-        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp'}, action='update')
+        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp',
+                                 'enable_files_domain': 'true'}, action='update')
         domain_params = {'allowed_uids': '5000',
                          'user_attributes': '-name, -uidNumber'}
         tools.sssd_conf("ifp", domain_params)
@@ -152,7 +160,8 @@ def test_0006_bz1638295(self, multihost, backupsssdconf):
         tools = sssdTools(multihost.client[0])
         multihost.client[0].service_sssd('stop')
         tools.remove_sss_cache('/var/lib/sss/db')
-        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp'}, action='update')
+        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp',
+                                 'enable_files_domain': 'true'}, action='update')
         domain_params = {'allowed_uids': '0, foo1@%s' % ds_instance_name,
                          'user_attributes': '+mail, -gecos'}
         tools.sssd_conf("ifp", domain_params)
@@ -178,7 +187,8 @@ def test_0007_bz1638295(self, multihost, localusers, backupsssdconf):
         tools = sssdTools(multihost.client[0])
         multihost.client[0].service_sssd('stop')
         tools.remove_sss_cache('/var/lib/sss/db')
-        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp'}, action='update')
+        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp',
+                                 'enable_files_domain': 'true'}, action='update')
         domain_params = {'allowed_uids': 'root, 5000',
                          'user_attributes': '-name, -uidNumber'}
         tools.sssd_conf("ifp", domain_params)
@@ -200,51 +210,58 @@ def test_0008_bz1761047(self, multihost):
          sssctl/sssctl_domains.c:sssctl_domain_status_active_server()
         :id: bf38d933-5eaf-43cc-b763-55cacf447bd1
         """
-        tools = sssdTools(multihost.client[0])
-        domain_name = tools.get_domain_section_name()
-        multihost.client[0].service_sssd('stop')
-        tools.remove_sss_cache('/var/lib/sss/db')
-        sssd_params = {'domains': '%s, %s' % (domain_name, 'proxy')}
-        tools.sssd_conf("sssd", sssd_params, action='update')
-        proxy_params = {'auth_provider': 'proxy',
-                        'id_provider': 'proxy',
-                        'debug_level': '0xFFF0',
-                        'proxy_lib_name': 'ldap',
-                        'proxy_pam_target': 'sssdproxyldap'}
-        tools.sssd_conf("domain/proxy", proxy_params, action='add')
-        multihost.client[0].service_sssd('start')
-        cat = 'cat /etc/sssd/sssd.conf'
-        multihost.client[0].run_command(cat, raiseonerr=False)
-        sssctl_cmd = 'sssctl domain-status proxy'
-        cmd = multihost.client[0].run_command(sssctl_cmd, raiseonerr=False)
-        # when sssd crashes it returns with exit code of 139
-        assert cmd.returncode == 0
-        # remove the proxy section
-        tools.sssd_conf("domain/proxy", proxy_params, 'delete')
-        multihost.client[0].run_command(cat, raiseonerr=False)
+        if client_version(multihost):
+            exit
+        else:
+            multihost.client[0].run_command("yum install -y  nss-pam-ldapd")
+            tools = sssdTools(multihost.client[0])
+            domain_name = tools.get_domain_section_name()
+            multihost.client[0].run_command("systemctl stop sssd")
+            multihost.client[0].run_command("rm -rf /var/lib/sss/db/*")
+            sssd_params = {'domains': '%s, %s' % (domain_name, 'proxy')}
+            tools.sssd_conf("sssd", sssd_params, action='update')
+            proxy_params = {'auth_provider': 'proxy',
+                            'id_provider': 'proxy',
+                            'debug_level': '0xFFF0',
+                            'proxy_lib_name': 'ldap',
+                            'proxy_pam_target': 'sssdproxyldap'}
+            tools.sssd_conf("domain/proxy", proxy_params, action='add')
+            multihost.client[0].service_sssd('start')
+            cat = 'cat /etc/sssd/sssd.conf'
+            multihost.client[0].run_command(cat, raiseonerr=False)
+            sssctl_cmd = 'sssctl domain-status proxy'
+            cmd = multihost.client[0].run_command(sssctl_cmd, raiseonerr=False)
+            # when sssd crashes it returns with exit code of 139
+            assert cmd.returncode == 0
+            # remove the proxy section
+            tools.sssd_conf("domain/proxy", proxy_params, 'delete')
+            multihost.client[0].run_command(cat, raiseonerr=False)
 
     @pytest.mark.tier1_2
-    def test_0009_bz1751691(self, multihost, backupsssdconf):
+    def test_0009_bz1751691(self, multihost):
         """
         :title: IDM-SSSD-TC: sssctl: sssctl domain-list command displays
          results intermittently
         :id: 09fed728-1631-44fa-ad5d-082cba4a8ea2
         """
-        tools = sssdTools(multihost.client[0])
-        multihost.client[0].service_sssd('stop')
-        tools.remove_sss_cache('/var/lib/sss/db')
-        tools.sssd_conf("sssd", {'services': 'nss, pam, ifp'}, action='update')
-        multihost.client[0].service_sssd('start')
-        sssctl_cmd = 'sssctl domain-list'
-        checks = ['example1', 'implicit_files']
-        for _ in range(10):
-            time.sleep(5)
-            cmd = multihost.client[0].run_command(sssctl_cmd, raiseonerr=False)
-            assert cmd.returncode == 0
-            for _ in checks:
-                find = re.compile(r'%s' % _)
-                result = find.search(cmd.stdout_text)
-                assert result is not None
+        if client_version(multihost):
+            exit
+        else:
+            tools = sssdTools(multihost.client[0])
+            multihost.client[0].run_command("systemctl stop sssd")
+            multihost.client[0].run_command("rm -rf /var/lib/sss/db/*")
+            tools.sssd_conf("sssd", {'services': 'nss, pam, ifp'}, action='update')
+            multihost.client[0].service_sssd('start')
+            sssctl_cmd = 'sssctl domain-list'
+            checks = ['example1', 'implicit_files']
+            for _ in range(10):
+                time.sleep(5)
+                cmd = multihost.client[0].run_command(sssctl_cmd, raiseonerr=False)
+                assert cmd.returncode == 0
+                for _ in checks:
+                    find = re.compile(r'%s' % _)
+                    result = find.search(cmd.stdout_text)
+                    assert result is not None
 
     @pytest.mark.tier1_2
     def test_0010_bz1628122(self, multihost):
@@ -253,30 +270,33 @@ def test_0010_bz1628122(self, multihost):
          about domain with sssctl utility
         :id: 6997a8a4-0531-4e51-a10b-8c1d5791b67b
         """
-        tools = sssdTools(multihost.client[0])
-        multihost.client[0].service_sssd('stop')
-        tools.remove_sss_cache('/var/lib/sss/db')
-        tools.remove_sss_cache('/var/log/sssd')
-        multihost.client[0].service_sssd('start')
-        sssctl_cmd = 'sssctl domain-status %s -o' % ds_instance_name
-        sssctl_cmd = multihost.client[0].run_command(sssctl_cmd,
-                                                     raiseonerr=False)
-        cmd = sssctl_cmd.stdout_text.split()[-1]
-        log = 'cat /var/log/sssd/sssd_%s.log' % ds_instance_name
-        log = multihost.client[0].run_command(log, raiseonerr=False)
-        assert log.returncode == 0
-        if 'Back end is online' or \
-                'Backend is already online' in log.stdout_text:
-            status = 'Online'
-        else:
-            status = 'Offline'
-        if cmd == status:
-            assert True
+        if client_version(multihost):
+            exit
         else:
-            if sssctl_cmd.returncode == 1:
-                assert False, 'Invalid domain name'
+            tools = sssdTools(multihost.client[0])
+            multihost.client[0].run_command("systemctl stop sssd")
+            multihost.client[0].run_command("rm -rf /var/lib/sss/db/*")
+            tools.remove_sss_cache('/var/log/sssd')
+            multihost.client[0].service_sssd('start')
+            sssctl_cmd = 'sssctl domain-status %s -o' % ds_instance_name
+            sssctl_cmd = multihost.client[0].run_command(sssctl_cmd,
+                                                         raiseonerr=False)
+            cmd = sssctl_cmd.stdout_text.split()[-1]
+            log = 'cat /var/log/sssd/sssd_%s.log' % ds_instance_name
+            log = multihost.client[0].run_command(log, raiseonerr=False)
+            assert log.returncode == 0
+            if 'Back end is online' or \
+                    'Backend is already online' in log.stdout_text:
+                status = 'Online'
+            else:
+                status = 'Offline'
+            if cmd == status:
+                assert True
             else:
-                assert False, 'domain status conflict'
+                if sssctl_cmd.returncode == 1:
+                    assert False, 'Invalid domain name'
+                else:
+                    assert False, 'domain status conflict'
 
     @pytest.mark.tier1_2
     def test_0011_bz1406678(self, multihost):
@@ -286,36 +306,39 @@ def test_0011_bz1406678(self, multihost):
         :id: f734660f-269e-49fd-9864-00de54b11b2c
         :customerscenario: True
         """
-        tools = sssdTools(multihost.client[0])
-        domain_name = tools.get_domain_section_name()
-        multihost.client[0].service_sssd('stop')
-        tools.remove_sss_cache('/var/lib/sss/db')
-        start = multihost.client[0].service_sssd('start')
-        stop_ds = 'systemctl stop dirsrv@%s' % ds_instance_name
-        cmd = multihost.master[0].run_command(stop_ds, raiseonerr=False)
-        status_ds = 'systemctl status dirsrv@%s' % ds_instance_name
-        cmd = multihost.master[0].run_command(status_ds, raiseonerr=False)
-        find = re.compile(r'slapd stopped')
-        result = find.search(cmd.stdout_text)
-        sss_kill = 'kill -10 `pidof sssd`'
-        cmd = multihost.client[0].run_command(sss_kill, raiseonerr=False)
-        domain_status = 'sssctl domain-status %s' % ds_instance_name
-        cmd = multihost.client[0].run_command(domain_status, raiseonerr=False)
-        find = re.compile(r'Online status: Offline')
-        result = find.search(cmd.stdout_text)
-        assert result is not None
-        time.sleep(1)
-        touch = 'touch /etc/resolv.conf'
-        touch_cmd = multihost.client[0].run_command(touch, raiseonerr=False)
-        time.sleep(3)
-        start_ds = 'systemctl start dirsrv@%s' % ds_instance_name
-        cmd = multihost.master[0].run_command(start_ds, raiseonerr=False)
-        cmd = multihost.master[0].run_command(status_ds, raiseonerr=False)
-        find = re.compile(r'slapd started')
-        result = find.search(cmd.stdout_text)
-        time.sleep(6)
-        domain_status = 'sssctl domain-status %s' % ds_instance_name
-        cmd = multihost.client[0].run_command(domain_status, raiseonerr=False)
-        find = re.compile(r'Online status: Online')
-        result = find.search(cmd.stdout_text)
-        assert result is not None
+        if client_version(multihost):
+            exit
+        else:
+            tools = sssdTools(multihost.client[0])
+            domain_name = tools.get_domain_section_name()
+            multihost.client[0].run_command("systemctl stop sssd")
+            multihost.client[0].run_command("rm -rf /var/lib/sss/db/*")
+            start = multihost.client[0].service_sssd('start')
+            stop_ds = 'systemctl stop dirsrv@%s' % ds_instance_name
+            cmd = multihost.master[0].run_command(stop_ds, raiseonerr=False)
+            status_ds = 'systemctl status dirsrv@%s' % ds_instance_name
+            cmd = multihost.master[0].run_command(status_ds, raiseonerr=False)
+            find = re.compile(r'slapd stopped')
+            result = find.search(cmd.stdout_text)
+            sss_kill = 'kill -10 `pidof sssd`'
+            cmd = multihost.client[0].run_command(sss_kill, raiseonerr=False)
+            domain_status = 'sssctl domain-status %s' % ds_instance_name
+            cmd = multihost.client[0].run_command(domain_status, raiseonerr=False)
+            find = re.compile(r'Online status: Offline')
+            result = find.search(cmd.stdout_text)
+            assert result is not None
+            time.sleep(1)
+            touch = 'touch /etc/resolv.conf'
+            touch_cmd = multihost.client[0].run_command(touch, raiseonerr=False)
+            time.sleep(3)
+            start_ds = 'systemctl start dirsrv@%s' % ds_instance_name
+            cmd = multihost.master[0].run_command(start_ds, raiseonerr=False)
+            cmd = multihost.master[0].run_command(status_ds, raiseonerr=False)
+            find = re.compile(r'slapd started')
+            result = find.search(cmd.stdout_text)
+            time.sleep(6)
+            domain_status = 'sssctl domain-status %s' % ds_instance_name
+            cmd = multihost.client[0].run_command(domain_status, raiseonerr=False)
+            find = re.compile(r'Online status: Online')
+            result = find.search(cmd.stdout_text)
+            assert result is not None
_______________________________________________
sssd-devel mailing list -- sssd-devel@lists.fedorahosted.org
To unsubscribe send an email to sssd-devel-le...@lists.fedorahosted.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedorahosted.org/archives/list/sssd-devel@lists.fedorahosted.org
Do not reply to spam on the list, report it: 
https://pagure.io/fedora-infrastructure

Reply via email to