diff options
author | Douglas Bagnall <douglas.bagnall@catalyst.net.nz> | 2015-06-17 16:38:29 +1200 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2015-10-29 05:08:15 +0100 |
commit | ad009be3297ec9343fd07ea86a197dc11ab8890f (patch) | |
tree | 531a2753f06d4e5e78421735a68cd5cff860b1e9 /source4/scripting | |
parent | a9ddca042c51de5c95327f41e3a31c178f5ab85b (diff) | |
download | samba-ad009be3297ec9343fd07ea86a197dc11ab8890f.tar.gz |
KCC: shift --test-all-reps-from call to after kcc loading
This is in an effort to allow --test-all-reps-from to work with
--import-ldif (though so far it doesn't for other reasons). Rather than
replicate all the ldif loading logic within test_all_reps_from, we just
wait delay the test_all_reps_from() call.
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4/scripting')
-rwxr-xr-x | source4/scripting/bin/samba_kcc | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/source4/scripting/bin/samba_kcc b/source4/scripting/bin/samba_kcc index 0caba79758c..449edda4c48 100755 --- a/source4/scripting/bin/samba_kcc +++ b/source4/scripting/bin/samba_kcc @@ -54,7 +54,7 @@ from samba.kcc import KCC # If DEFAULT_RNG_SEED is None, /dev/urandom or system time is used. DEFAULT_RNG_SEED = None -def test_all_reps_from(lp, creds, unix_now, rng_seed=None): +def test_all_reps_from(kcc, lp, creds, unix_now, rng_seed=None): """Run the KCC from all DSAs in read-only mode The behaviour depends on the global opts variable which contains @@ -69,11 +69,8 @@ def test_all_reps_from(lp, creds, unix_now, rng_seed=None): :return None: """ # This implies readonly and attempt_live_connections - kcc = KCC(unix_now, readonly=True, - verify=opts.verify, debug=opts.debug, - dot_file_dir=opts.dot_file_dir) - kcc.load_samdb(opts.dburl, lp, creds) dsas = kcc.list_dsas() + samdb = kcc.samdb needed_parts = {} current_parts = {} @@ -93,6 +90,7 @@ def test_all_reps_from(lp, creds, unix_now, rng_seed=None): kcc = KCC(unix_now, readonly=True, verify=opts.verify, debug=opts.debug, dot_file_dir=opts.dot_file_dir) + kcc.samdb = samdb kcc.run(opts.dburl, lp, creds, forced_local_dsa=dsa_dn, forget_local_links=opts.forget_local_links, forget_intersite_links=opts.forget_intersite_links, @@ -243,6 +241,9 @@ if opts.list_verify_tests: list_verify_tests() sys.exit(0) +if opts.test_all_reps_from: + opts.readonly = True + if opts.debug: logger.setLevel(logging.DEBUG) elif opts.readonly: @@ -273,16 +274,10 @@ creds = credopts.get_credentials(lp, fallback_machine=True) if opts.dburl is None: opts.dburl = lp.samdb_url() -if opts.test_all_reps_from: - opts.readonly = True - test_all_reps_from(kcc, lp, creds, unix_now, rng_seed=opts.seed) - sys.exit() - # Instantiate Knowledge Consistency Checker and perform run kcc = KCC(unix_now, readonly=opts.readonly, verify=opts.verify, debug=opts.debug, dot_file_dir=opts.dot_file_dir) - if opts.exportldif: rc = kcc.export_ldif(opts.dburl, lp, creds, opts.exportldif) sys.exit(rc) @@ -297,6 +292,11 @@ if opts.importldif: if rc != 0: sys.exit(rc) +if opts.test_all_reps_from: + kcc.load_samdb(opts.dburl, lp, creds, force=False) + test_all_reps_from(kcc, lp, creds, unix_now, rng_seed=opts.seed) + sys.exit() + if opts.list_valid_dsas: kcc.load_samdb(opts.dburl, lp, creds, force=False) print '\n'.join(kcc.list_dsas()) |