From d15a7d9099f4eef8e1a82d0935cca8cfab542e5c Mon Sep 17 00:00:00 2001 From: Kamen Mazdrashki Date: Sat, 28 Aug 2010 01:30:09 +0300 Subject: s4-testenv: Synchronize DCs after 'net vampire' During 'net vampire', vampired DC adds information in its own database, se we need to force replicate vampired_dc to the first DC to be sure everything is in sync prior starting tests --- selftest/target/Samba4.pm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/selftest/target/Samba4.pm b/selftest/target/Samba4.pm index f0da581002..4072524379 100644 --- a/selftest/target/Samba4.pm +++ b/selftest/target/Samba4.pm @@ -1327,6 +1327,30 @@ sub setup_vampire_dc($$$) $self->{vars}->{vampire_dc} = $env; + # force replicated DC to update repsTo/repsFrom + # for vampired partitions + my $net = $self->bindir_path("net"); + my $cmd = ""; + $cmd .= "SOCKET_WRAPPER_DEFAULT_IFACE=\"$env->{SOCKET_WRAPPER_DEFAULT_IFACE}\""; + $cmd .= " KRB5_CONFIG=\"$env->{KRB5_CONFIG}\""; + $cmd .= " $net drs kcc $env->{DC_SERVER}"; + $cmd .= " -U$dc_vars->{DC_USERNAME}\%$dc_vars->{DC_PASSWORD}"; + system($cmd) == 0 or die("Failed to exec kcc\n$cmd"); + + # as 'vampired' dc may add data in its local replica + # we need to synchronize data between DCs + my $base_dn = "DC=".join(",DC=", split(/\./, $dc_vars->{REALM})); + $cmd = "SOCKET_WRAPPER_DEFAULT_IFACE=\"$env->{SOCKET_WRAPPER_DEFAULT_IFACE}\""; + $cmd .= " KRB5_CONFIG=\"$env->{KRB5_CONFIG}\""; + $cmd .= " $net drs replicate $env->{DC_SERVER} $env->{VAMPIRE_DC_SERVER}"; + $cmd .= " -U$dc_vars->{DC_USERNAME}\%$dc_vars->{DC_PASSWORD}"; + # replicate Configuration NC + my $cmd_repl = "$cmd \"CN=Configuration,$base_dn\""; + system($cmd_repl) == 0 or die("Failed to replicate\n$cmd_repl"); + # replicate Default NC + $cmd_repl = "$cmd \"$base_dn\""; + system($cmd_repl) == 0 or die("Failed to replicate\n$cmd_repl"); + return $env; } -- cgit