]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
selftest: export/use CTDB related envvars in order to run the ctdb command
authorStefan Metzmacher <metze@samba.org>
Fri, 17 Nov 2023 10:45:30 +0000 (11:45 +0100)
committerStefan Metzmacher <metze@samba.org>
Fri, 15 Dec 2023 11:06:34 +0000 (11:06 +0000)
This makes it easier to test things...

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15523

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Martin Schwenke <martin@meltin.net>
selftest/target/Samba.pm
selftest/target/Samba3.pm
source3/selftest/tests.py

index 187e4007ee7d588f1210a93881227d1b2e54db28..7cf222235afc09abb56649c1deda0a9ef673d5e8 100644 (file)
@@ -984,6 +984,25 @@ my @exported_envvars = (
        # resolv_wrapper
        "RESOLV_WRAPPER_CONF",
        "RESOLV_WRAPPER_HOSTS",
+
+       # ctdb stuff
+       "NUM_NODES",
+       "CTDB_BASE",
+       "CTDB_SOCKET",
+       "CTDB_SERVER_NAME",
+       "CTDB_IFACE_IP",
+       "CTDB_BASE_NODE0",
+       "CTDB_SOCKET_NODE0",
+       "CTDB_SERVER_NAME_NODE0",
+       "CTDB_IFACE_IP_NODE0",
+       "CTDB_BASE_NODE1",
+       "CTDB_SOCKET_NODE1",
+       "CTDB_SERVER_NAME_NODE1",
+       "CTDB_IFACE_IP_NODE1",
+       "CTDB_BASE_NODE2",
+       "CTDB_SOCKET_NODE2",
+       "CTDB_SERVER_NAME_NODE2",
+       "CTDB_IFACE_IP_NODE2",
 );
 
 sub exported_envvars_str
index 0e4ef168f4c6e35d68066a8adb6409d4abf80b54..0375e913a9d78493f6d4e1c9692f2aee655ff10e 100755 (executable)
@@ -527,8 +527,8 @@ sub setup_clusteredmember
                my $pub_iface = $node->{SOCKET_WRAPPER_DEFAULT_IFACE};
                my $node_prefix = $node->{NODE_PREFIX};
 
-               print "NODE_PREFIX=${node_prefix}\n";
-               print "SOCKET=${socket}\n";
+               print "CTDB_BASE=${node_prefix}\n";
+               print "CTDB_SOCKET=${socket}\n";
 
                my $require_mutexes = "dbwrap_tdb_require_mutexes:* = yes";
                if ($ENV{SELFTEST_DONT_REQUIRE_TDB_MUTEX_SUPPORT} // '' eq "1") {
@@ -4168,6 +4168,24 @@ sub provision_ctdb($$$$)
        $ret{CTDB_NODES} = \@nodes;
        $ret{CTDB_NODES_FILE} = $nodes_file;
 
+       for (my $i = 0; $i < $num_nodes; $i++) {
+               my $node = $nodes[$i];
+               my $socket = $node->{SOCKET_FILE};
+               my $server_name = $node->{SERVER_NAME};
+               my $node_prefix = $node->{NODE_PREFIX};
+               my $ip = $node->{IP};
+
+               $ret{"CTDB_BASE_NODE${i}"} = $node_prefix;
+               $ret{"CTDB_SOCKET_NODE${i}"} = $socket;
+               $ret{"CTDB_SERVER_NAME_NODE${i}"} = $server_name;
+               $ret{"CTDB_IFACE_IP_NODE${i}"} = $ip;
+       }
+
+       $ret{CTDB_BASE} = $ret{CTDB_BASE_NODE0};
+       $ret{CTDB_SOCKET} = $ret{CTDB_SOCKET_NODE0};
+       $ret{CTDB_SERVER_NAME} = $ret{CTDB_SERVER_NAME_NODE0};
+       $ret{CTDB_IFACE_IP} = $ret{CTDB_IFACE_IP_NODE0};
+
        return \%ret;
 }
 
index 679ff4e9916c550034100bd0254e79b896d95d16..adcb675ce80da80046082c10e8153b3b1265cdea 100755 (executable)
@@ -1677,7 +1677,7 @@ if have_cluster_support:
                   [os.path.join(samba3srcdir,
                                 "script/tests/test_smbXsrv_client_cross_node.sh"),
                    configuration,
-                   'ctdb0', 'ctdb1',
+                   '$CTDB_SERVER_NAME_NODE0', '$CTDB_SERVER_NAME_NODE1',
                    "tmp"])
     plantestsuite("samba3.blackbox.registry_share", "clusteredmember",
                   [os.path.join(samba3srcdir,