[SCM] Samba Shared Repository - branch master updated

Gary Lockyer gary at samba.org
Mon Jun 21 01:47:01 UTC 2021


The branch, master has been updated
       via  91f5b5f3d07 selftest: Remove -d10 from test startup
       via  bbff4f5e6bb testprogs/blackbox: Remove joined dc for ldapcmp
       via  e9e6d1569b6 python/samba/tests: Remove DCs joined to test samba-tool behaviour
      from  84de4eb19e5 WHATSNEW: Improved cmdline user experience

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 91f5b5f3d07787540b01147fb18bc3018e47bf22
Author: Andrew Bartlett <abartlet at samba.org>
Date:   Fri Jun 18 23:49:13 2021 +1200

    selftest: Remove -d10 from test startup
    
    It looks like "python:tests: Add SAMR password change tests for fips"
    (which is also the title of 9a3ba502d8193b25799ef92917efafd52de2e8c2,
    but this is also unrelated) and was a probalby a rebase artifact,
    being a debugging aid that should have been omitted.
    
    This reverts commit ebd687335b9accfdbae7dbc65c9882ab4d5c0986.
    
    Signed-off-by: Andrew Bartlett <abartlet at samba.org>
    Reviewed-by: Gary Lockyer <gary at catalyst.net.nz>
    
    Autobuild-User(master): Gary Lockyer <gary at samba.org>
    Autobuild-Date(master): Mon Jun 21 01:46:58 UTC 2021 on sn-devel-184

commit bbff4f5e6bb7b6c50b2b4a87bb1ad143b9f14958
Author: Andrew Bartlett <abartlet at samba.org>
Date:   Fri Jun 18 23:48:26 2021 +1200

    testprogs/blackbox: Remove joined dc for ldapcmp
    
    We don't need this DC once the ldapcmp is over, and it avoids
    the running DC spamming the logs looking for it.
    
    Signed-off-by: Andrew Bartlett <abartlet at samba.org>
    Reviewed-by: Gary Lockyer <gary at catalyst.net.nz>

commit e9e6d1569b6fba787288d456a285448208b06eec
Author: Andrew Bartlett <abartlet at samba.org>
Date:   Fri Jun 18 20:46:51 2021 +1200

    python/samba/tests: Remove DCs joined to test samba-tool behaviour
    
    Otherwise we have the live DCs spamming the logs looking for the
    long-gone test servers:
    
    Failed to connect host fd00::5357:5f0b on port 135 - NT_STATUS_OBJECT_NAME_NOT_FOUND
    Failed to connect host fd00::5357:5f0b (6f44653d-18c8-4bf4-b2e7-6f85cf7b0f74._msdcs.addom.samba.example.com) on port 135 - NT_STATUS_OBJECT_NAME_NOT_FOUND.
    Failed to connect host 10.53.57.11 on port 135 - NT_STATUS_OBJECT_NAME_NOT_FOUND
    Failed to connect host 10.53.57.11 (6f44653d-18c8-4bf4-b2e7-6f85cf7b0f74._msdcs.addom.samba.example.com) on port 135 - NT_STATUS_OBJECT_NAME_NOT_FOUND.
    Failed to connect host 10.53.57.12 on port 135 - NT_STATUS_OBJECT_NAME_NOT_FOUND
    
    This avoids spamming the GitLab pipeline logs with a lot of noise,
    as there is a size limit to the output, as well as being cleaner.
    
    Signed-off-by: Andrew Bartlett <abartlet at samba.org>
    Reviewed-by: Gary Lockyer <gary at catalyst.net.nz>

-----------------------------------------------------------------------

Summary of changes:
 python/samba/tests/domain_backup_offline.py           | 17 ++++++++++++++++-
 python/samba/tests/samba_tool/base.py                 | 11 +++++++++++
 python/samba/tests/samba_tool/join_lmdb_size.py       |  6 +++++-
 python/samba/tests/samba_tool/promote_dc_lmdb_size.py |  6 +++++-
 selftest/target/Samba4.pm                             |  2 +-
 testprogs/blackbox/join_ldapcmp.sh                    |  7 +++++++
 6 files changed, 45 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/python/samba/tests/domain_backup_offline.py b/python/samba/tests/domain_backup_offline.py
index 33803ca6ebb..ad371680779 100644
--- a/python/samba/tests/domain_backup_offline.py
+++ b/python/samba/tests/domain_backup_offline.py
@@ -185,12 +185,15 @@ class DomainBackupOfflineCmp(BlackboxTestCase):
     def join(self, backend):
         target = tempfile.mkdtemp(dir=self.tempdir)
 
+        new_dc_name = "offlinebackupdc"
+
         join_cmd = "samba-tool domain join {domain} DC " +\
                    "--server {server} " +\
                    "--realm {realm} " +\
                    "--username {username}%{password} " +\
                    "--targetdir {target} " +\
                    "--backend-store {backend} " +\
+                   "--option='netbios name = {new_dc_name}' " +\
                    "--option=\"vfs objects=dfs_samba4 acl_xattr fake_acls xattr_tdb\""
         join_cmd = join_cmd.format(server=os.environ["DC_SERVER"],
                                    domain=os.environ["DOMAIN"],
@@ -198,9 +201,21 @@ class DomainBackupOfflineCmp(BlackboxTestCase):
                                    username=os.environ["USERNAME"],
                                    password=os.environ["PASSWORD"],
                                    target=target,
-                                   backend=backend)
+                                   backend=backend,
+                                   new_dc_name=new_dc_name)
         self.check_output(join_cmd)
 
+        demote_cmd = "samba-tool domain demote " +\
+                   "--server {server} " +\
+                   "--username {username}%{password} " +\
+                   "--remove-other-dead-server={new_dc_name}"
+
+        demote_cmd = demote_cmd.format(server=os.environ["DC_SERVER"],
+                                       username=os.environ["USERNAME"],
+                                       password=os.environ["PASSWORD"],
+                                       new_dc_name=new_dc_name)
+        self.check_output(demote_cmd)
+
         return target
 
     def backup(self, prov_dir):
diff --git a/python/samba/tests/samba_tool/base.py b/python/samba/tests/samba_tool/base.py
index ff6f9fcc5d3..4e0f1d0604c 100644
--- a/python/samba/tests/samba_tool/base.py
+++ b/python/samba/tests/samba_tool/base.py
@@ -21,6 +21,7 @@
 #
 # These can all be accesses via os.environ["VARIBLENAME"] when needed
 
+import os
 import random
 import string
 from samba.auth import system_session
@@ -150,3 +151,13 @@ class SambaToolCmdTest(samba.tests.BlackboxTestCase):
     def assertWithin(self, val1, val2, delta, msg=""):
         """Assert that val1 is within delta of val2, useful for time computations"""
         self.assertTrue(((val1 + delta) > val2) and ((val1 - delta) < val2), msg)
+
+    def cleanup_join(self, netbios_name):
+        (result, out, err) \
+            = self.runsubcmd("domain",
+                             "demote",
+                             ("--remove-other-dead-server=%s " % netbios_name),
+                             ("-U%s%%%s" % (os.environ["USERNAME"], os.environ["PASSWORD"])),
+                             ("--server=%s" % os.environ["SERVER"]))
+
+        self.assertCmdSuccess(result, out, err)
diff --git a/python/samba/tests/samba_tool/join_lmdb_size.py b/python/samba/tests/samba_tool/join_lmdb_size.py
index e410d5fba23..8f2e376bc05 100644
--- a/python/samba/tests/samba_tool/join_lmdb_size.py
+++ b/python/samba/tests/samba_tool/join_lmdb_size.py
@@ -47,7 +47,11 @@ class JoinLmdbSizeTestCase(SambaToolCmdTest):
         if size:
             command += ("--backend-store-size=%s" % size)
 
-        return self.run_command(command)
+        (ret, stdout, stderr) = self.run_command(command)
+        if ret == 0:
+            self.cleanup_join(self.netbios_name)
+
+        return (ret, stdout, stderr)
 
     def is_rodc(self):
         url = "ldb://%s/private/sam.ldb" % self.tempsambadir
diff --git a/python/samba/tests/samba_tool/promote_dc_lmdb_size.py b/python/samba/tests/samba_tool/promote_dc_lmdb_size.py
index 8e679a5c95f..56fcdcf72f0 100644
--- a/python/samba/tests/samba_tool/promote_dc_lmdb_size.py
+++ b/python/samba/tests/samba_tool/promote_dc_lmdb_size.py
@@ -60,7 +60,11 @@ class PromoteDcLmdbSizeTestCase(SambaToolCmdTest):
         if size:
             command += ("--backend-store-size=%s" % size)
 
-        return self.run_command(command)
+        (ret, stdout, stderr) = self.run_command(command)
+        if ret == 0:
+            self.cleanup_join(self.netbios_name)
+
+        return (ret, stdout, stderr)
 
     def is_rodc(self):
         url = "ldb://%s/private/sam.ldb" % self.tempsambadir
diff --git a/selftest/target/Samba4.pm b/selftest/target/Samba4.pm
index 710f46096c1..1f8ed412bf7 100755
--- a/selftest/target/Samba4.pm
+++ b/selftest/target/Samba4.pm
@@ -1053,7 +1053,7 @@ servicePrincipalName: http/testupnspn.$ctx->{dnsname}
 
 	$samba_tool_cmd = ${cmd_env};
 	$samba_tool_cmd .= Samba::bindir_path($self, "samba-tool")
-	    . " group addmembers --configfile=$ctx->{smb_conf} 'Allowed RODC Password Replication Group' '$testallowed_account' -d10";
+	    . " group addmembers --configfile=$ctx->{smb_conf} 'Allowed RODC Password Replication Group' '$testallowed_account'";
 	unless (system($samba_tool_cmd) == 0) {
 		warn("Unable to add '$testallowed_account' user to 'Allowed RODC Password Replication Group': \n$samba_tool_cmd\n");
 		return undef;
diff --git a/testprogs/blackbox/join_ldapcmp.sh b/testprogs/blackbox/join_ldapcmp.sh
index 30d3e1e0192..e55a71007da 100755
--- a/testprogs/blackbox/join_ldapcmp.sh
+++ b/testprogs/blackbox/join_ldapcmp.sh
@@ -19,6 +19,11 @@ join_dc() {
     $SAMBA_TOOL domain join $REALM dc $JOIN_ARGS --option="netbios name = TESTJOINDC"
 }
 
+demote_joined_dc() {
+    DEMOTE_ARGS="--remove-other-dead-server=TESTJOINDC --server=$SERVER -U$USERNAME%$PASSWORD"
+    $SAMBA_TOOL domain demote $DEMOTE_ARGS
+}
+
 ldapcmp_result() {
     DB1_PATH="tdb://$PREFIX_ABS/$SERVER/private/sam.ldb"
     DB2_PATH="tdb://$TARGET_DIR/private/sam.ldb"
@@ -36,6 +41,8 @@ testit "check_dc_join" join_dc
 # check resulting DB matches server DC
 testit "new_db_matches" ldapcmp_result
 
+testit "demote_joined_dc" demote_joined_dc
+
 cleanup_output_dir
 
 exit $failed


-- 
Samba Shared Repository



More information about the samba-cvs mailing list