[SCM] CTDB repository - branch master updated - ctdb-1.13-97-gabe7ebe

Ronnie Sahlberg sahlberg at samba.org
Sun Apr 22 20:20:02 MDT 2012


The branch, master has been updated
       via  abe7ebe6c531f912efe4ebc1daade4d2af67574c (commit)
       via  7ff485687891732074c9fc9998502ca197663d02 (commit)
       via  8544162b7a4efa23c92bc0d2774df95bb7f0f463 (commit)
       via  5d6e71cf6e1e0665ec96e7e4e2cfd31f40ebabae (commit)
       via  fd08fc6c88cb80190ce87325867de0391cf1af51 (commit)
       via  eb13507713ba6732271b7c3024bfddbda6da5ffc (commit)
       via  dbec696930327ff07b39282e3084eef4ded064c0 (commit)
       via  f94897ef9504c144937409688fa7a646e0b0ceae (commit)
       via  4c87888b2a559c0d1f285919a42de450a537a02f (commit)
       via  89571585d87b391ff79647cd1f0f6ac193079e72 (commit)
       via  ca9e75eaea9c9b02bb44ca338e28fdae0c8d582c (commit)
       via  a65ba7211ec7f102b32060b173606a61fb5c20a9 (commit)
       via  21df43c74bfcff420fdaf9df5440c25529c543d2 (commit)
       via  89719384a74161ffa0c03602ecdd9e758d521d75 (commit)
       via  43badc5418b9f533398cd579607d9f1fc0f8f417 (commit)
       via  00713eb46cce638339845799bba2da041b3d02fb (commit)
       via  afdaa5f032938d56ff315d9553cb285ebc413c4c (commit)
       via  a7ad94fe9f2e773567dbb6500469dd2dd2f2f04b (commit)
       via  107b465172205cb304549fcffaf36b9416696c15 (commit)
       via  fa54a1095a7504863ed30bff8e0828a8be6dde55 (commit)
       via  89e322562f25dcb8d84357a19e71b2272b2f29a8 (commit)
       via  2aa9bbf3a52dde0707eb06acd91e57c8da5c717f (commit)
       via  67b909a0718d6cfce82ffce0830da3a6ff1f6c4b (commit)
       via  7f8096f56d8274151705ac822b582d972078f8fe (commit)
       via  d5b2ad651495f32091bd33d30871638de0de633a (commit)
       via  b86b947797c51e3576c6b34f547434c3f0aa36f3 (commit)
       via  b81c2c8a2360001fe73f9fd9aa1ba32665fdb0bb (commit)
       via  a108fc14d90b6d552736d19b0ea104f2508dc331 (commit)
       via  15f63ebab9686734f41a6adf38d4a7faa919ac66 (commit)
       via  706e6e3ef6765fbba29e531e590c48fe742b9914 (commit)
       via  98c633ab4824e0e4d28ab2eb2532e16eb859bd94 (commit)
       via  420a10be89c62b4d605f3b972d78fd69dd9f5bb1 (commit)
       via  bdd8b8ab20169936fa723fa77cead1b76b6cd0b5 (commit)
       via  902d8a4709e7a269d2a75522a998f9a60ae13d78 (commit)
       via  261258c1a4268230b2559bc5d8664b1197b22450 (commit)
      from  79172330d10ae0d5a7e5bf724959c9e5784716b4 (commit)

http://gitweb.samba.org/?p=ctdb.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit abe7ebe6c531f912efe4ebc1daade4d2af67574c
Merge: 67b909a0718d6cfce82ffce0830da3a6ff1f6c4b 7ff485687891732074c9fc9998502ca197663d02
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Wed Apr 18 13:48:43 2012 +1000

    Merge remote branch 'martins/master'

commit 7ff485687891732074c9fc9998502ca197663d02
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Apr 18 10:37:45 2012 +1000

    tests: More unit test factoring/rationalisation and bug fixes
    
    Move some options from eventscripts/run_tests.sh to scripts/run_tests.
    Remove the former.
    
    Move some functions from eventscripts/scripts/local.sh to
    scripts/unit.sh.
    
    Both of these are modified during move so they are no longer
    eventscript-specific.
    
    Tweak */local.sh so that the new functions in unit.sh are used.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 8544162b7a4efa23c92bc0d2774df95bb7f0f463
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Apr 18 10:35:25 2012 +1000

    tests/eventscripts: Share directories must be absolute in eventscript tests
    
    This fixes eventscripts/scripts/local.sh:setup_generic() so that
    directories listed in $FAKE_SHARES are absolute instead of potentially
    relative (and, therefore, ignored by the NFS share check).
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 5d6e71cf6e1e0665ec96e7e4e2cfd31f40ebabae
Author: Martin Schwenke <martin at meltin.net>
Date:   Tue Apr 17 12:57:46 2012 +1000

    tests/eventscripts: Tweak an error message in a policy routing test
    
    It currently has my home directory pasted into it.  That can't be
    right...  ;-)
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit fd08fc6c88cb80190ce87325867de0391cf1af51
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 16:27:20 2012 +1000

    tests - run_tests needs to expand directories like "." and "..".
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit eb13507713ba6732271b7c3024bfddbda6da5ffc
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 16:24:12 2012 +1000

    tests/eventscripts - Restructure according to new convention
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit dbec696930327ff07b39282e3084eef4ded064c0
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 15:58:44 2012 +1000

    tests - run_tests ignores trailing '/' on directories
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit f94897ef9504c144937409688fa7a646e0b0ceae
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 15:53:24 2012 +1000

    tests/takeover - Restructure according to new convention
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 4c87888b2a559c0d1f285919a42de450a537a02f
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 15:29:44 2012 +1000

    tests/onnode - Restructure according to new convention
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 89571585d87b391ff79647cd1f0f6ac193079e72
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 14:25:50 2012 +1000

    tests/tool - Restructure according to new convention
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit ca9e75eaea9c9b02bb44ca338e28fdae0c8d582c
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Fri Apr 13 12:06:53 2012 +1000

    tests/tool: New nodestatus test
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit a65ba7211ec7f102b32060b173606a61fb5c20a9
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Fri Apr 13 12:05:59 2012 +1000

    tests/tool: Fix the nodestatus test
    
    Although not obvious, when asking each node for nodestatus, it will report
    each node is the current node.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit 21df43c74bfcff420fdaf9df5440c25529c543d2
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 14:54:51 2012 +1000

    tests - run_tests includes common.sh, uses die()
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 89719384a74161ffa0c03602ecdd9e758d521d75
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 14:52:17 2012 +1000

    tests - run_tests can take a directory as an argument
    
    This makes it run all tests in the specified directory.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 43badc5418b9f533398cd579607d9f1fc0f8f417
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 14:51:22 2012 +1000

    tests - add -v option to set TEST_VERBOSE=true
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 00713eb46cce638339845799bba2da041b3d02fb
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 14:48:49 2012 +1000

    tests - move functions only used by scripts/run_tests into that script
    
    Along with minor logic tweaks and removal of test_exit().
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit afdaa5f032938d56ff315d9553cb285ebc413c4c
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 14:33:37 2012 +1000

    tests - add scripts/unit.sh
    
    This will be sourced by all unit tests.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit a7ad94fe9f2e773567dbb6500469dd2dd2f2f04b
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 14:32:55 2012 +1000

    tests - add scripts/common.sh
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 107b465172205cb304549fcffaf36b9416696c15
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Apr 16 14:27:22 2012 +1000

    tests - export new variable TEST_SCRIPTS_DIR
    
    This replaces previous script-local variable ctdb_test_scripts_dir.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit fa54a1095a7504863ed30bff8e0828a8be6dde55
Author: Martin Schwenke <martin at meltin.net>
Date:   Thu Apr 12 15:18:17 2012 +1000

    Tests - IP allocation - 2 tests for NODE_FLAGS_NOIPTAKEOVER
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 89e322562f25dcb8d84357a19e71b2272b2f29a8
Author: Martin Schwenke <martin at meltin.net>
Date:   Thu Apr 12 14:17:46 2012 +1000

    Tests - IP allocation - add another LCP2 test based on a test failure
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 2aa9bbf3a52dde0707eb06acd91e57c8da5c717f
Author: Martin Schwenke <martin at meltin.net>
Date:   Thu Mar 29 14:54:22 2012 +1100

    Tests - turn of time logging by default
    
    We haven't seen problems related to time jumps for a long time.  Turn
    this off by default.
    
    To switch it back on set $CTDB_TEST_TIME_LOGGING to any non-null
    value.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>

commit 67b909a0718d6cfce82ffce0830da3a6ff1f6c4b
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Apr 4 14:42:56 2012 +1000

    ctdbd: Fix spurious warnings when running with --nopublicipcheck
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit 7f8096f56d8274151705ac822b582d972078f8fe
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Apr 4 14:42:23 2012 +1000

    recoverd: Fix spurious warnings when running with --nopublicipcheck
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit d5b2ad651495f32091bd33d30871638de0de633a
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Mar 28 14:08:08 2012 +1100

    tests: Use CTDB_TEST_REAL_CLUSTER to decide if tests use local daemons
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit b86b947797c51e3576c6b34f547434c3f0aa36f3
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Mar 28 13:56:03 2012 +1100

    tests: Set the debug level = 3 when running local tests
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit b81c2c8a2360001fe73f9fd9aa1ba32665fdb0bb
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Mar 28 13:52:38 2012 +1100

    tests: Check assigned IPs from ctdb output
    
    This fixes the test ctdb_config_add_ip when running against local daemons.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit a108fc14d90b6d552736d19b0ea104f2508dc331
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Mar 28 13:51:25 2012 +1100

    tests: Check for assigned IP addresses only if we are on real cluster
    
    This fixes the ctdb_ip test when running against local daemons.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit 15f63ebab9686734f41a6adf38d4a7faa919ac66
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Mar 27 17:20:34 2012 +1100

    ctdbd: Fix the error message string
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit 706e6e3ef6765fbba29e531e590c48fe742b9914
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Mar 27 17:07:52 2012 +1100

    tests: Fix the error messages in test event script
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit 98c633ab4824e0e4d28ab2eb2532e16eb859bd94
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Mar 27 11:37:42 2012 +1100

    tests: Add regular expression parsing for hop_count_buckets
    
    This fixes the test to check ctdb statistics output.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit 420a10be89c62b4d605f3b972d78fd69dd9f5bb1
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Mar 21 11:51:56 2012 +1100

    tests: Add a script to run cluster tests and make target "test_cluster"
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit bdd8b8ab20169936fa723fa77cead1b76b6cd0b5
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Mon Feb 13 14:03:12 2012 +1100

    tests: exportfs always outputs with options in brackets
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit 902d8a4709e7a269d2a75522a998f9a60ae13d78
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Fri Apr 13 12:06:53 2012 +1000

    tests/tool: New nodestatus test
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit 261258c1a4268230b2559bc5d8664b1197b22450
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Fri Apr 13 12:05:59 2012 +1000

    tests/tool: Fix the nodestatus test
    
    Although not obvious, when asking each node for nodestatus, it will report
    each node is the current node.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

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

Summary of changes:
 Makefile.in                                        |    3 +
 server/ctdb_recoverd.c                             |    4 +-
 server/ctdb_takeover.c                             |   51 +-
 tests/complex/01_ctdb_nfs_skip_share_check.sh      |    2 +-
 tests/events.d/00.test                             |    7 +-
 tests/eventscripts/10.interface.init.001.sh        |   13 +
 tests/eventscripts/10.interface.init.002.sh        |   11 +
 tests/eventscripts/10.interface.monitor.001.sh     |   13 +
 tests/eventscripts/10.interface.monitor.002.sh     |   11 +
 tests/eventscripts/10.interface.monitor.003.sh     |   15 +
 tests/eventscripts/10.interface.monitor.004.sh     |   15 +
 tests/eventscripts/10.interface.monitor.005.sh     |   15 +
 tests/eventscripts/10.interface.monitor.006.sh     |   15 +
 tests/eventscripts/10.interface.monitor.007.sh     |   13 +
 tests/eventscripts/10.interface.monitor.008.sh     |   15 +
 tests/eventscripts/10.interface.monitor.009.sh     |   17 +
 tests/eventscripts/10.interface.monitor.010.sh     |   19 +
 tests/eventscripts/10.interface.monitor.011.sh     |   19 +
 tests/eventscripts/10.interface.monitor.012.sh     |   23 +
 tests/eventscripts/10.interface.monitor.013.sh     |   15 +
 tests/eventscripts/10.interface.monitor.014.sh     |   16 +
 tests/eventscripts/10.interface.monitor.015.sh     |   22 +
 tests/eventscripts/10.interface.multi.001.sh       |   14 +
 tests/eventscripts/10.interface.releaseip.001.sh   |   13 +
 tests/eventscripts/10.interface.releaseip.002.sh   |   17 +
 tests/eventscripts/10.interface.startup.001.sh     |   13 +
 tests/eventscripts/10.interface.startup.002.sh     |   11 +
 tests/eventscripts/10.interface.takeip.001.sh      |   13 +
 tests/eventscripts/10.interface.takeip.002.sh      |   13 +
 tests/eventscripts/10.interface.takeip.003.sh      |   25 +
 tests/eventscripts/13.per_ip_routing.001.sh        |   16 +
 tests/eventscripts/13.per_ip_routing.002.sh        |   14 +
 tests/eventscripts/13.per_ip_routing.003.sh        |   24 +
 tests/eventscripts/13.per_ip_routing.004.sh        |   25 +
 tests/eventscripts/13.per_ip_routing.005.sh        |   38 +
 tests/eventscripts/13.per_ip_routing.006.sh        |   38 +
 tests/eventscripts/13.per_ip_routing.007.sh        |   40 +
 tests/eventscripts/13.per_ip_routing.008.sh        |   42 +
 tests/eventscripts/13.per_ip_routing.009.sh        |   44 +
 tests/eventscripts/13.per_ip_routing.010.sh        |   52 ++
 tests/eventscripts/13.per_ip_routing.011.sh        |   41 +
 tests/eventscripts/13.per_ip_routing.012.sh        |   48 +
 tests/eventscripts/40.vsftpd.monitor.001.sh        |   11 +
 tests/eventscripts/41.httpd.monitor.001.sh         |   11 +
 tests/eventscripts/50.samba.monitor.001.sh         |   11 +
 tests/eventscripts/50.samba.monitor.050.sh         |   17 +
 tests/eventscripts/50.samba.monitor.051.sh         |   19 +
 tests/eventscripts/50.samba.monitor.101.sh         |   11 +
 tests/eventscripts/50.samba.monitor.102.sh         |   12 +
 tests/eventscripts/50.samba.monitor.103.sh         |   12 +
 tests/eventscripts/50.samba.monitor.104.sh         |   12 +
 tests/eventscripts/50.samba.monitor.105.sh         |   12 +
 tests/eventscripts/50.samba.monitor.106.sh         |   14 +
 tests/eventscripts/50.samba.monitor.107.sh         |   18 +
 tests/eventscripts/50.samba.monitor.108.sh         |   15 +
 tests/eventscripts/50.samba.monitor.109.sh         |   30 +
 tests/eventscripts/50.samba.monitor.110.sh         |   33 +
 tests/eventscripts/50.samba.monitor.111.sh         |   20 +
 tests/eventscripts/60.nfs.monitor.001.sh           |   11 +
 tests/eventscripts/60.nfs.monitor.100.sh           |   19 +
 tests/eventscripts/60.nfs.monitor.101.sh           |   11 +
 tests/eventscripts/60.nfs.monitor.111.sh           |   12 +
 tests/eventscripts/60.nfs.monitor.112.sh           |   15 +
 tests/eventscripts/60.nfs.monitor.121.sh           |   17 +
 tests/eventscripts/60.nfs.monitor.122.sh           |   19 +
 tests/eventscripts/60.nfs.monitor.131.sh           |   10 +
 tests/eventscripts/60.nfs.monitor.132.sh           |   15 +
 tests/eventscripts/60.nfs.monitor.141.sh           |   15 +
 tests/eventscripts/60.nfs.monitor.142.sh           |   14 +
 tests/eventscripts/60.nfs.monitor.151.sh           |   12 +
 tests/eventscripts/60.nfs.monitor.152.sh           |   18 +
 tests/eventscripts/60.nfs.monitor.153.sh           |   15 +
 tests/eventscripts/60.nfs.monitor.161.sh           |   13 +
 tests/eventscripts/60.nfs.monitor.162.sh           |   14 +
 tests/eventscripts/60.nfs.multi.001.sh             |   21 +
 tests/eventscripts/60.nfs.multi.002.sh             |   25 +
 tests/eventscripts/60.nfs.multi.003.sh             |   27 +
 tests/eventscripts/60.nfs.multi.004.sh             |   27 +
 tests/eventscripts/60.nfs.multi.005.sh             |   27 +
 tests/eventscripts/60.nfs.multi.006.sh             |   21 +
 tests/eventscripts/common.sh                       |  938 --------------------
 tests/eventscripts/etc-ctdb/interface_modify.sh    |    1 -
 tests/eventscripts/multievent/10.interface.001.sh  |   14 -
 .../multievent/13.per_ip_routing.001.sh            |   16 -
 .../multievent/13.per_ip_routing.002.sh            |   14 -
 .../multievent/13.per_ip_routing.003.sh            |   24 -
 .../multievent/13.per_ip_routing.004.sh            |   25 -
 .../multievent/13.per_ip_routing.005.sh            |   38 -
 .../multievent/13.per_ip_routing.006.sh            |   38 -
 .../multievent/13.per_ip_routing.007.sh            |   40 -
 .../multievent/13.per_ip_routing.008.sh            |   42 -
 .../multievent/13.per_ip_routing.009.sh            |   44 -
 .../multievent/13.per_ip_routing.010.sh            |   52 --
 .../multievent/13.per_ip_routing.011.sh            |   41 -
 .../multievent/13.per_ip_routing.012.sh            |   48 -
 tests/eventscripts/multievent/60.nfs.001.sh        |   21 -
 tests/eventscripts/multievent/60.nfs.002.sh        |   25 -
 tests/eventscripts/multievent/60.nfs.003.sh        |   27 -
 tests/eventscripts/multievent/60.nfs.004.sh        |   27 -
 tests/eventscripts/multievent/60.nfs.005.sh        |   27 -
 tests/eventscripts/multievent/60.nfs.006.sh        |   21 -
 tests/eventscripts/run_tests.sh                    |   53 --
 tests/eventscripts/scripts/local.sh                |  801 +++++++++++++++++
 tests/eventscripts/simple/10.interface.init.001.sh |   13 -
 tests/eventscripts/simple/10.interface.init.002.sh |   11 -
 .../simple/10.interface.monitor.001.sh             |   13 -
 .../simple/10.interface.monitor.002.sh             |   11 -
 .../simple/10.interface.monitor.003.sh             |   15 -
 .../simple/10.interface.monitor.004.sh             |   15 -
 .../simple/10.interface.monitor.005.sh             |   15 -
 .../simple/10.interface.monitor.006.sh             |   15 -
 .../simple/10.interface.monitor.007.sh             |   13 -
 .../simple/10.interface.monitor.008.sh             |   15 -
 .../simple/10.interface.monitor.009.sh             |   17 -
 .../simple/10.interface.monitor.010.sh             |   19 -
 .../simple/10.interface.monitor.011.sh             |   19 -
 .../simple/10.interface.monitor.012.sh             |   23 -
 .../simple/10.interface.monitor.013.sh             |   15 -
 .../simple/10.interface.monitor.014.sh             |   16 -
 .../simple/10.interface.monitor.015.sh             |   22 -
 .../simple/10.interface.releaseip.001.sh           |   13 -
 .../simple/10.interface.releaseip.002.sh           |   17 -
 .../simple/10.interface.startup.001.sh             |   13 -
 .../simple/10.interface.startup.002.sh             |   11 -
 .../eventscripts/simple/10.interface.takeip.001.sh |   13 -
 .../eventscripts/simple/10.interface.takeip.002.sh |   13 -
 .../eventscripts/simple/10.interface.takeip.003.sh |   25 -
 tests/eventscripts/simple/40.vsftpd.monitor.001.sh |   11 -
 tests/eventscripts/simple/41.httpd.monitor.001.sh  |   11 -
 tests/eventscripts/simple/50.samba.monitor.001.sh  |   11 -
 tests/eventscripts/simple/50.samba.monitor.050.sh  |   17 -
 tests/eventscripts/simple/50.samba.monitor.051.sh  |   19 -
 tests/eventscripts/simple/50.samba.monitor.101.sh  |   11 -
 tests/eventscripts/simple/50.samba.monitor.102.sh  |   12 -
 tests/eventscripts/simple/50.samba.monitor.103.sh  |   12 -
 tests/eventscripts/simple/50.samba.monitor.104.sh  |   12 -
 tests/eventscripts/simple/50.samba.monitor.105.sh  |   12 -
 tests/eventscripts/simple/50.samba.monitor.106.sh  |   14 -
 tests/eventscripts/simple/50.samba.monitor.107.sh  |   18 -
 tests/eventscripts/simple/50.samba.monitor.108.sh  |   15 -
 tests/eventscripts/simple/50.samba.monitor.109.sh  |   30 -
 tests/eventscripts/simple/50.samba.monitor.110.sh  |   33 -
 tests/eventscripts/simple/50.samba.monitor.111.sh  |   20 -
 tests/eventscripts/simple/60.nfs.monitor.001.sh    |   11 -
 tests/eventscripts/simple/60.nfs.monitor.100.sh    |   19 -
 tests/eventscripts/simple/60.nfs.monitor.101.sh    |   11 -
 tests/eventscripts/simple/60.nfs.monitor.111.sh    |   12 -
 tests/eventscripts/simple/60.nfs.monitor.112.sh    |   15 -
 tests/eventscripts/simple/60.nfs.monitor.121.sh    |   17 -
 tests/eventscripts/simple/60.nfs.monitor.122.sh    |   19 -
 tests/eventscripts/simple/60.nfs.monitor.131.sh    |   10 -
 tests/eventscripts/simple/60.nfs.monitor.132.sh    |   15 -
 tests/eventscripts/simple/60.nfs.monitor.141.sh    |   15 -
 tests/eventscripts/simple/60.nfs.monitor.142.sh    |   14 -
 tests/eventscripts/simple/60.nfs.monitor.151.sh    |   12 -
 tests/eventscripts/simple/60.nfs.monitor.152.sh    |   18 -
 tests/eventscripts/simple/60.nfs.monitor.153.sh    |   15 -
 tests/eventscripts/simple/60.nfs.monitor.161.sh    |   13 -
 tests/eventscripts/simple/60.nfs.monitor.162.sh    |   14 -
 tests/eventscripts/stubs/ctdb                      |    2 +-
 tests/onnode/0001.sh                               |    2 +-
 tests/onnode/0002.sh                               |    2 +-
 tests/onnode/0003.sh                               |    2 +-
 tests/onnode/0004.sh                               |    2 +-
 tests/onnode/0005.sh                               |    2 +-
 tests/onnode/0006.sh                               |    2 +-
 tests/onnode/0070.sh                               |    2 +-
 tests/onnode/0071.sh                               |    2 +-
 tests/onnode/0072.sh                               |    2 +-
 tests/onnode/0075.sh                               |    2 +-
 tests/onnode/0080.sh                               |    2 +-
 tests/onnode/0081.sh                               |    2 +-
 tests/onnode/0090.sh                               |    2 +-
 tests/onnode/0091.sh                               |    2 +-
 tests/onnode/common.sh                             |  103 ---
 tests/onnode/run_tests.sh                          |   31 -
 tests/onnode/scripts/local.sh                      |   81 ++
 tests/run_cluster_tests.sh                         |   13 +
 tests/scripts/common.sh                            |    9 +
 tests/scripts/ctdb_test_env                        |    8 +-
 tests/scripts/ctdb_test_functions.bash             |   68 +--
 tests/scripts/run_tests                            |  117 +++-
 tests/scripts/unit.sh                              |  141 +++
 tests/simple/00_ctdb_onnode.sh                     |    2 +-
 tests/simple/11_ctdb_ip.sh                         |   20 +-
 tests/simple/14_ctdb_statistics.sh                 |    2 +-
 tests/simple/16_ctdb_config_add_ip.sh              |   10 +-
 tests/takeover/common.sh                           |   70 --
 tests/takeover/ctdb_takeover.py                    |  888 ------------------
 tests/takeover/lcp2.001.sh                         |   31 +
 tests/takeover/lcp2.002.sh                         |   31 +
 tests/takeover/lcp2.003.sh                         |   31 +
 tests/takeover/lcp2.004.sh                         |   37 +
 tests/takeover/lcp2.005.sh                         |  181 ++++
 tests/takeover/lcp2.006.sh                         |   31 +
 tests/takeover/lcp2.007.sh                         |   31 +
 tests/takeover/lcp2.008.sh                         |   31 +
 tests/takeover/lcp2.009.sh                         |   31 +
 tests/takeover/lcp2.010.sh                         |   32 +
 tests/takeover/lcp2.011.sh                         |   45 +
 tests/takeover/lcp2.012.sh                         |   31 +
 tests/takeover/lcp2.013.sh                         |   31 +
 tests/takeover/nondet.001.sh                       |   29 +
 tests/takeover/nondet.002.sh                       |   29 +
 tests/takeover/nondet.003.sh                       |   29 +
 tests/takeover/run_tests.sh                        |   31 -
 tests/takeover/scripts/local.sh                    |   36 +
 tests/takeover/{ => simulation}/README             |    0
 tests/takeover/simulation/ctdb_takeover.py         |  888 ++++++++++++++++++
 tests/takeover/simulation/hey_jude.py              |   24 +
 tests/takeover/{ => simulation}/ip_groups1.py      |    0
 tests/takeover/{ => simulation}/ip_groups2.py      |    0
 tests/takeover/{ => simulation}/ip_groups3.py      |    0
 tests/takeover/{ => simulation}/ip_groups4.py      |    0
 tests/takeover/{ => simulation}/ip_groups5.py      |    0
 tests/takeover/{ => simulation}/mgmt_simple.py     |    0
 tests/takeover/{ => simulation}/node_group.py      |    0
 .../takeover/{ => simulation}/node_group_extra.py  |    0
 .../takeover/{ => simulation}/node_group_simple.py |    0
 tests/takeover/{ => simulation}/nondet_path_01.py  |    0
 tests/takeover/testcases/lcp2.001.sh               |   31 -
 tests/takeover/testcases/lcp2.002.sh               |   31 -
 tests/takeover/testcases/lcp2.003.sh               |   31 -
 tests/takeover/testcases/lcp2.004.sh               |   37 -
 tests/takeover/testcases/lcp2.005.sh               |  181 ----
 tests/takeover/testcases/lcp2.006.sh               |   31 -
 tests/takeover/testcases/lcp2.007.sh               |   31 -
 tests/takeover/testcases/lcp2.008.sh               |   31 -
 tests/takeover/testcases/lcp2.009.sh               |   31 -
 tests/takeover/testcases/lcp2.010.sh               |   32 -
 tests/takeover/testcases/nondet.001.sh             |   29 -
 tests/takeover/testcases/nondet.002.sh             |   29 -
 tests/takeover/testcases/nondet.003.sh             |   29 -
 tests/tool/common.sh                               |   79 --
 tests/tool/func.parse_nodestring.001.sh            |   16 +
 tests/tool/func.parse_nodestring.002.sh            |   16 +
 tests/tool/func.parse_nodestring.003.sh            |   15 +
 tests/tool/run_tests.sh                            |   35 -
 tests/tool/scripts/local.sh                        |   38 +
 tests/tool/stubby.nodestatus.001.sh                |   30 +
 tests/tool/stubby.nodestatus.002.sh                |   30 +
 tests/tool/stubby.nodestatus.003.sh                |   30 +
 tests/tool/stubby.nodestatus.004.sh                |   31 +
 tests/tool/stubby.nodestatus.005.sh                |   34 +
 tests/tool/stubby.status.001.sh                    |   37 +
 tests/tool/stubby.status.002.sh                    |   37 +
 tests/tool/testcases/func.parse_nodestring.001.sh  |   16 -
 tests/tool/testcases/func.parse_nodestring.002.sh  |   16 -
 tests/tool/testcases/func.parse_nodestring.003.sh  |   15 -
 tests/tool/testcases/stubby.nodestatus.001.sh      |   30 -
 tests/tool/testcases/stubby.nodestatus.002.sh      |   30 -
 tests/tool/testcases/stubby.nodestatus.003.sh      |   30 -
 tests/tool/testcases/stubby.nodestatus.004.sh      |   28 -
 tests/tool/testcases/stubby.nodestatus.005.sh      |   34 +
 tests/tool/testcases/stubby.status.001.sh          |   37 -
 tests/tool/testcases/stubby.status.002.sh          |   37 -
 256 files changed, 4642 insertions(+), 4594 deletions(-)
 create mode 100755 tests/eventscripts/10.interface.init.001.sh
 create mode 100755 tests/eventscripts/10.interface.init.002.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.001.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.002.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.003.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.004.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.005.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.006.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.007.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.008.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.009.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.010.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.011.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.012.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.013.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.014.sh
 create mode 100755 tests/eventscripts/10.interface.monitor.015.sh
 create mode 100755 tests/eventscripts/10.interface.multi.001.sh
 create mode 100755 tests/eventscripts/10.interface.releaseip.001.sh
 create mode 100755 tests/eventscripts/10.interface.releaseip.002.sh
 create mode 100755 tests/eventscripts/10.interface.startup.001.sh
 create mode 100755 tests/eventscripts/10.interface.startup.002.sh
 create mode 100755 tests/eventscripts/10.interface.takeip.001.sh
 create mode 100755 tests/eventscripts/10.interface.takeip.002.sh
 create mode 100755 tests/eventscripts/10.interface.takeip.003.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.001.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.002.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.003.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.004.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.005.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.006.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.007.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.008.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.009.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.010.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.011.sh
 create mode 100755 tests/eventscripts/13.per_ip_routing.012.sh
 create mode 100755 tests/eventscripts/40.vsftpd.monitor.001.sh
 create mode 100755 tests/eventscripts/41.httpd.monitor.001.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.001.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.050.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.051.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.101.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.102.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.103.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.104.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.105.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.106.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.107.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.108.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.109.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.110.sh
 create mode 100755 tests/eventscripts/50.samba.monitor.111.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.001.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.100.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.101.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.111.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.112.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.121.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.122.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.131.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.132.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.141.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.142.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.151.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.152.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.153.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.161.sh
 create mode 100755 tests/eventscripts/60.nfs.monitor.162.sh
 create mode 100755 tests/eventscripts/60.nfs.multi.001.sh
 create mode 100755 tests/eventscripts/60.nfs.multi.002.sh
 create mode 100755 tests/eventscripts/60.nfs.multi.003.sh
 create mode 100755 tests/eventscripts/60.nfs.multi.004.sh
 create mode 100755 tests/eventscripts/60.nfs.multi.005.sh
 create mode 100755 tests/eventscripts/60.nfs.multi.006.sh
 delete mode 100644 tests/eventscripts/common.sh
 delete mode 120000 tests/eventscripts/etc-ctdb/interface_modify.sh
 delete mode 100755 tests/eventscripts/multievent/10.interface.001.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.001.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.002.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.003.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.004.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.005.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.006.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.007.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.008.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.009.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.010.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.011.sh
 delete mode 100755 tests/eventscripts/multievent/13.per_ip_routing.012.sh
 delete mode 100755 tests/eventscripts/multievent/60.nfs.001.sh
 delete mode 100755 tests/eventscripts/multievent/60.nfs.002.sh
 delete mode 100755 tests/eventscripts/multievent/60.nfs.003.sh
 delete mode 100755 tests/eventscripts/multievent/60.nfs.004.sh
 delete mode 100755 tests/eventscripts/multievent/60.nfs.005.sh
 delete mode 100755 tests/eventscripts/multievent/60.nfs.006.sh
 delete mode 100755 tests/eventscripts/run_tests.sh
 create mode 100644 tests/eventscripts/scripts/local.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.init.001.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.init.002.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.001.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.002.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.003.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.004.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.005.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.006.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.007.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.008.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.009.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.010.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.011.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.012.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.013.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.014.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.monitor.015.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.releaseip.001.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.releaseip.002.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.startup.001.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.startup.002.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.takeip.001.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.takeip.002.sh
 delete mode 100755 tests/eventscripts/simple/10.interface.takeip.003.sh
 delete mode 100755 tests/eventscripts/simple/40.vsftpd.monitor.001.sh
 delete mode 100755 tests/eventscripts/simple/41.httpd.monitor.001.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.001.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.050.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.051.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.101.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.102.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.103.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.104.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.105.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.106.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.107.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.108.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.109.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.110.sh
 delete mode 100755 tests/eventscripts/simple/50.samba.monitor.111.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.001.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.100.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.101.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.111.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.112.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.121.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.122.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.131.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.132.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.141.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.142.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.151.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.152.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.153.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.161.sh
 delete mode 100755 tests/eventscripts/simple/60.nfs.monitor.162.sh
 delete mode 100644 tests/onnode/common.sh
 delete mode 100755 tests/onnode/run_tests.sh
 create mode 100644 tests/onnode/scripts/local.sh
 create mode 100755 tests/run_cluster_tests.sh
 create mode 100644 tests/scripts/common.sh
 create mode 100644 tests/scripts/unit.sh
 delete mode 100644 tests/takeover/common.sh
 delete mode 100755 tests/takeover/ctdb_takeover.py
 create mode 100755 tests/takeover/lcp2.001.sh
 create mode 100755 tests/takeover/lcp2.002.sh
 create mode 100755 tests/takeover/lcp2.003.sh
 create mode 100755 tests/takeover/lcp2.004.sh
 create mode 100755 tests/takeover/lcp2.005.sh
 create mode 100755 tests/takeover/lcp2.006.sh
 create mode 100755 tests/takeover/lcp2.007.sh
 create mode 100755 tests/takeover/lcp2.008.sh
 create mode 100755 tests/takeover/lcp2.009.sh
 create mode 100755 tests/takeover/lcp2.010.sh
 create mode 100755 tests/takeover/lcp2.011.sh
 create mode 100755 tests/takeover/lcp2.012.sh
 create mode 100755 tests/takeover/lcp2.013.sh
 create mode 100755 tests/takeover/nondet.001.sh
 create mode 100755 tests/takeover/nondet.002.sh
 create mode 100755 tests/takeover/nondet.003.sh
 delete mode 100755 tests/takeover/run_tests.sh
 create mode 100644 tests/takeover/scripts/local.sh
 rename tests/takeover/{ => simulation}/README (100%)
 create mode 100755 tests/takeover/simulation/ctdb_takeover.py
 create mode 100755 tests/takeover/simulation/hey_jude.py
 rename tests/takeover/{ => simulation}/ip_groups1.py (100%)
 rename tests/takeover/{ => simulation}/ip_groups2.py (100%)
 rename tests/takeover/{ => simulation}/ip_groups3.py (100%)
 rename tests/takeover/{ => simulation}/ip_groups4.py (100%)
 rename tests/takeover/{ => simulation}/ip_groups5.py (100%)
 rename tests/takeover/{ => simulation}/mgmt_simple.py (100%)
 rename tests/takeover/{ => simulation}/node_group.py (100%)
 rename tests/takeover/{ => simulation}/node_group_extra.py (100%)
 rename tests/takeover/{ => simulation}/node_group_simple.py (100%)
 rename tests/takeover/{ => simulation}/nondet_path_01.py (100%)
 delete mode 100755 tests/takeover/testcases/lcp2.001.sh
 delete mode 100755 tests/takeover/testcases/lcp2.002.sh
 delete mode 100755 tests/takeover/testcases/lcp2.003.sh
 delete mode 100755 tests/takeover/testcases/lcp2.004.sh
 delete mode 100755 tests/takeover/testcases/lcp2.005.sh
 delete mode 100755 tests/takeover/testcases/lcp2.006.sh
 delete mode 100755 tests/takeover/testcases/lcp2.007.sh
 delete mode 100755 tests/takeover/testcases/lcp2.008.sh
 delete mode 100755 tests/takeover/testcases/lcp2.009.sh
 delete mode 100755 tests/takeover/testcases/lcp2.010.sh
 delete mode 100755 tests/takeover/testcases/nondet.001.sh
 delete mode 100755 tests/takeover/testcases/nondet.002.sh
 delete mode 100755 tests/takeover/testcases/nondet.003.sh
 delete mode 100644 tests/tool/common.sh
 create mode 100755 tests/tool/func.parse_nodestring.001.sh
 create mode 100755 tests/tool/func.parse_nodestring.002.sh
 create mode 100755 tests/tool/func.parse_nodestring.003.sh
 delete mode 100755 tests/tool/run_tests.sh
 create mode 100644 tests/tool/scripts/local.sh
 create mode 100755 tests/tool/stubby.nodestatus.001.sh
 create mode 100755 tests/tool/stubby.nodestatus.002.sh
 create mode 100755 tests/tool/stubby.nodestatus.003.sh
 create mode 100755 tests/tool/stubby.nodestatus.004.sh
 create mode 100755 tests/tool/stubby.nodestatus.005.sh
 create mode 100755 tests/tool/stubby.status.001.sh
 create mode 100755 tests/tool/stubby.status.002.sh
 delete mode 100755 tests/tool/testcases/func.parse_nodestring.001.sh
 delete mode 100755 tests/tool/testcases/func.parse_nodestring.002.sh
 delete mode 100755 tests/tool/testcases/func.parse_nodestring.003.sh
 delete mode 100755 tests/tool/testcases/stubby.nodestatus.001.sh
 delete mode 100755 tests/tool/testcases/stubby.nodestatus.002.sh
 delete mode 100755 tests/tool/testcases/stubby.nodestatus.003.sh
 delete mode 100755 tests/tool/testcases/stubby.nodestatus.004.sh
 create mode 100755 tests/tool/testcases/stubby.nodestatus.005.sh
 delete mode 100755 tests/tool/testcases/stubby.status.001.sh
 delete mode 100755 tests/tool/testcases/stubby.status.002.sh


Changeset truncated at 500 lines:

diff --git a/Makefile.in b/Makefile.in
index 1794be5..7b7f356 100755
--- a/Makefile.in
+++ b/Makefile.in
@@ -367,6 +367,9 @@ install_pmda:
 test: all
 	tests/run_tests.sh
 
+test_cluster: all
+	tests/run_cluster_tests.sh
+
 valgrindtest: all
 	VALGRIND="valgrind -q --trace-children=yes" tests/run_tests.sh
 
diff --git a/server/ctdb_recoverd.c b/server/ctdb_recoverd.c
index 97e4670..c079217 100644
--- a/server/ctdb_recoverd.c
+++ b/server/ctdb_recoverd.c
@@ -2775,13 +2775,13 @@ static int verify_local_ip_allocation(struct ctdb_context *ctdb, struct ctdb_rec
 						ctdb_addr_to_str(&ips->ips[j].addr)));
 				need_takeover_run = true;
 			} else if (ips->ips[j].pnn == pnn) {
-				if (!ctdb_sys_have_ip(&ips->ips[j].addr)) {
+				if (ctdb->do_checkpublicip && !ctdb_sys_have_ip(&ips->ips[j].addr)) {
 					DEBUG(DEBUG_CRIT,("Public address '%s' is missing and we should serve this ip\n",
 						ctdb_addr_to_str(&ips->ips[j].addr)));
 					need_takeover_run = true;
 				}
 			} else {
-				if (ctdb_sys_have_ip(&ips->ips[j].addr)) {
+				if (ctdb->do_checkpublicip && ctdb_sys_have_ip(&ips->ips[j].addr)) {
 					DEBUG(DEBUG_CRIT,("We are still serving a public address '%s' that we should not be serving.\n", 
 						ctdb_addr_to_str(&ips->ips[j].addr)));
 					need_takeover_run = true;
diff --git a/server/ctdb_takeover.c b/server/ctdb_takeover.c
index 1037c2f..43201a3 100644
--- a/server/ctdb_takeover.c
+++ b/server/ctdb_takeover.c
@@ -350,6 +350,8 @@ static void ctdb_do_takeip_callback(struct ctdb_context *ctdb, int status,
 		return;
 	}
 
+	if (ctdb->do_checkpublicip) {
+
 	ret = ctdb_announce_vnn_iface(ctdb, state->vnn);
 	if (ret != 0) {
 		ctdb_request_control_reply(ctdb, state->c, NULL, -1, NULL);
@@ -357,6 +359,8 @@ static void ctdb_do_takeip_callback(struct ctdb_context *ctdb, int status,
 		return;
 	}
 
+	}
+
 	data.dptr  = (uint8_t *)ctdb_addr_to_str(&state->vnn->public_address);
 	data.dsize = strlen((char *)data.dptr) + 1;
 	DEBUG(DEBUG_INFO,(__location__ " sending TAKE_IP for '%s'\n", data.dptr));
@@ -383,7 +387,7 @@ static int32_t ctdb_do_takeip(struct ctdb_context *ctdb,
 	ret = ctdb_vnn_assign_iface(ctdb, vnn);
 	if (ret != 0) {
 		DEBUG(DEBUG_ERR,("Takeover of IP %s/%u failed to "
-				 "assin a usable interface\n",
+				 "assign a usable interface\n",
 				 ctdb_addr_to_str(&vnn->public_address),
 				 vnn->public_netmask_bits));
 		return -1;
@@ -460,6 +464,8 @@ static void ctdb_do_updateip_callback(struct ctdb_context *ctdb, int status,
 		return;
 	}
 
+	if (ctdb->do_checkpublicip) {
+
 	ret = ctdb_announce_vnn_iface(ctdb, state->vnn);
 	if (ret != 0) {
 		ctdb_request_control_reply(ctdb, state->c, NULL, -1, NULL);
@@ -467,6 +473,8 @@ static void ctdb_do_updateip_callback(struct ctdb_context *ctdb, int status,
 		return;
 	}
 
+	}
+
 	/* the control succeeded */
 	ctdb_request_control_reply(ctdb, state->c, NULL, 0, NULL);
 	talloc_free(state);
@@ -591,7 +599,9 @@ int32_t ctdb_control_takeover_ip(struct ctdb_context *ctdb,
 		return 0;
 	}
 
-	have_ip = ctdb_sys_have_ip(&pip->addr);
+	if (ctdb->do_checkpublicip) {
+		have_ip = ctdb_sys_have_ip(&pip->addr);
+	}
 	best_iface = ctdb_vnn_best_iface(ctdb, vnn);
 	if (best_iface == NULL) {
 		DEBUG(DEBUG_ERR,("takeoverip of IP %s/%u failed to find"
@@ -608,6 +618,7 @@ int32_t ctdb_control_takeover_ip(struct ctdb_context *ctdb,
 		have_ip = false;
 	}
 
+
 	if (vnn->iface == NULL && have_ip) {
 		DEBUG(DEBUG_CRIT,(__location__ " takeoverip of IP %s is known to the kernel, "
 				  "but we have no interface assigned, has someone manually configured it? Ignore for now.\n",
@@ -798,19 +809,27 @@ int32_t ctdb_control_release_ip(struct ctdb_context *ctdb,
 	talloc_free(vnn->takeover_ctx);
 	vnn->takeover_ctx = NULL;
 
-	if (!ctdb_sys_have_ip(&pip->addr)) {
-		DEBUG(DEBUG_DEBUG,("Redundant release of IP %s/%u on interface %s (ip not held)\n", 
-			ctdb_addr_to_str(&pip->addr),
-			vnn->public_netmask_bits, 
-			ctdb_vnn_iface_string(vnn)));
-		ctdb_vnn_unassign_iface(ctdb, vnn);
-		return 0;
-	}
+	if (ctdb->do_checkpublicip) {
 
-	if (vnn->iface == NULL) {
-		DEBUG(DEBUG_ERR,(__location__ " release_ip of IP %s is known to the kernel, "
-				 "but we have no interface assigned, has someone manually configured it? Ignore for now.\n",
-				 ctdb_addr_to_str(&vnn->public_address)));
+		if (!ctdb_sys_have_ip(&pip->addr)) {
+			DEBUG(DEBUG_DEBUG,("Redundant release of IP %s/%u on interface %s (ip not held)\n",
+				ctdb_addr_to_str(&pip->addr),
+				vnn->public_netmask_bits,
+				ctdb_vnn_iface_string(vnn)));
+			ctdb_vnn_unassign_iface(ctdb, vnn);
+			return 0;
+		}
+
+		if (vnn->iface == NULL) {
+			DEBUG(DEBUG_ERR,(__location__ " release_ip of IP %s is known to the kernel, "
+					 "but we have no interface assigned, has someone manually configured it? Ignore for now.\n",
+					 ctdb_addr_to_str(&vnn->public_address)));
+			return 0;
+		}
+
+	} else if (vnn->iface == NULL) {
+		DEBUG(DEBUG_ERR, ("No interface found for IP %s.\n",
+				     ctdb_addr_to_str(&vnn->public_address)));
 		return 0;
 	}
 
@@ -1059,7 +1078,9 @@ int ctdb_set_public_addresses(struct ctdb_context *ctdb, const char *alist)
 	}
 
 
-	ctdb_start_monitoring_interfaces(ctdb);
+	if (ctdb->do_checkpublicip) {
+		ctdb_start_monitoring_interfaces(ctdb);
+	}
 
 	talloc_free(lines);
 	return 0;
diff --git a/tests/complex/01_ctdb_nfs_skip_share_check.sh b/tests/complex/01_ctdb_nfs_skip_share_check.sh
index 85bc64d..969b445 100755
--- a/tests/complex/01_ctdb_nfs_skip_share_check.sh
+++ b/tests/complex/01_ctdb_nfs_skip_share_check.sh
@@ -99,7 +99,7 @@ try_command_on_node -v $test_node "mkdir -p \"$rc_local_d\""
 
 f="$rc_local_d/fake-exportfs"
 echo "Installing \"$f\"..."
-try_command_on_node $test_node "echo \"function exportfs () { echo $foo_dir 127.0.0.1/32 ; }\" >\"$f\" ; chmod +x \"$f\""
+try_command_on_node $test_node "echo \"function exportfs () { echo \\\"$foo_dir 127.0.0.1/32(rw)\\\" ; }\" >\"$f\" ; chmod +x \"$f\""
 
 n="$rc_local_d/nfs-skip-share-check"
 n_contents='loadconfig() {
diff --git a/tests/events.d/00.test b/tests/events.d/00.test
index 49b741b..51c0e11 100755
--- a/tests/events.d/00.test
+++ b/tests/events.d/00.test
@@ -43,12 +43,13 @@ case $cmd in
 	ip=$2
 	maskbits=$3
 
-	[ `id -u` = 0 ] && {
+	[ -n "$CTDB_TEST_REAL_CLUSTER" ] && {
 	    /sbin/ip addr add $ip/$maskbits dev $iface || {
 		echo "Failed to add $ip/$maskbits on dev $iface"
 		exit 1
 	    }
 	}
+	echo "ctdb takeip event for $1 $2 $3"
 	exit 0;
 	;;
 
@@ -63,13 +64,13 @@ case $cmd in
 	iface=$1
 	ip=$2
 	maskbits=$3
-	[ `id -u` = 0 ] && {
+	[ -n "$CTDB_TEST_REAL_CLUSTER" ] && {
 	    /sbin/ip addr del $ip/$maskbits dev $iface || {
 		echo "Failed to del $ip on dev $iface"
 		exit 1
 	    }
 	}
-	echo "ctdb takeip event for $1 $2 $3"
+	echo "ctdb releaseip event for $1 $2 $3"
 	exit 0
 	;;
 
diff --git a/tests/eventscripts/10.interface.init.001.sh b/tests/eventscripts/10.interface.init.001.sh
new file mode 100755
index 0000000..fae1a78
--- /dev/null
+++ b/tests/eventscripts/10.interface.init.001.sh
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "no public addresses"
+
+setup_ctdb
+
+export CTDB_PUBLIC_ADDRESSES="$CTDB_ETC/does/not/exist"
+
+ok "No public addresses file found. Nothing to do for 10.interfaces"
+
+simple_test
diff --git a/tests/eventscripts/10.interface.init.002.sh b/tests/eventscripts/10.interface.init.002.sh
new file mode 100755
index 0000000..ba33f92
--- /dev/null
+++ b/tests/eventscripts/10.interface.init.002.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "all interfaces up"
+
+setup_ctdb
+
+ok_null
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.001.sh b/tests/eventscripts/10.interface.monitor.001.sh
new file mode 100755
index 0000000..42ef42d
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.001.sh
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "no public addresses"
+
+setup_ctdb
+
+export CTDB_PUBLIC_ADDRESSES="$CTDB_ETC/does/not/exist"
+
+ok_null
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.002.sh b/tests/eventscripts/10.interface.monitor.002.sh
new file mode 100755
index 0000000..ba33f92
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.002.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "all interfaces up"
+
+setup_ctdb
+
+ok_null
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.003.sh b/tests/eventscripts/10.interface.monitor.003.sh
new file mode 100755
index 0000000..1eb7916
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.003.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "1 interface down"
+
+setup_ctdb
+
+iface=$(ctdb_get_1_interface)
+
+ethtool_interfaces_down $iface
+
+required_result 1 "ERROR: No link on the public network interface $iface"
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.004.sh b/tests/eventscripts/10.interface.monitor.004.sh
new file mode 100755
index 0000000..69ffbd0
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.004.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "all interfaces up, 1 is a bond"
+
+setup_ctdb
+
+iface=$(ctdb_get_1_interface)
+
+setup_bond $iface
+
+ok_null
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.005.sh b/tests/eventscripts/10.interface.monitor.005.sh
new file mode 100755
index 0000000..8cf7bbc
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.005.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "1 bond, no active slaves"
+
+setup_ctdb
+
+iface=$(ctdb_get_1_interface)
+
+setup_bond $iface "None"
+
+required_result 1 "ERROR: No active slaves for bond device $iface"
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.006.sh b/tests/eventscripts/10.interface.monitor.006.sh
new file mode 100755
index 0000000..3c483a3
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.006.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "1 bond, active slaves, link down"
+
+setup_ctdb
+
+iface=$(ctdb_get_1_interface)
+
+setup_bond $iface "" "down"
+
+required_result 1 "ERROR: public network interface $iface is down"
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.007.sh b/tests/eventscripts/10.interface.monitor.007.sh
new file mode 100755
index 0000000..c45900e
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.007.sh
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "unknown interface, up"
+
+setup_ctdb
+
+export CTDB_PUBLIC_INTERFACE="dev999"
+
+ok_null
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.008.sh b/tests/eventscripts/10.interface.monitor.008.sh
new file mode 100755
index 0000000..f73302b
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.008.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "unknown interface, down, up"
+
+setup_ctdb
+
+iface="dev999"
+export CTDB_PUBLIC_INTERFACE="$iface"
+
+#EVENTSCRIPTS_TESTS_TRACE="sh -x"
+iterate_test 3 "ok_null" \
+    1 'ethtool_interfaces_down "$iface" ; required_result 1 "ERROR: No link on the public network interface $iface"' \
+    2 'ethtool_interfaces_up "$iface"'
diff --git a/tests/eventscripts/10.interface.monitor.009.sh b/tests/eventscripts/10.interface.monitor.009.sh
new file mode 100755
index 0000000..1b785ff
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.009.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "CTDB_PARTIALLY_ONLINE_INTERFACES, 1 down"
+
+setup_ctdb
+
+iface=$(ctdb_get_1_interface)
+
+export CTDB_PARTIALLY_ONLINE_INTERFACES="yes"
+
+ethtool_interfaces_down "$iface"
+
+ok "ERROR: No link on the public network interface $iface"
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.010.sh b/tests/eventscripts/10.interface.monitor.010.sh
new file mode 100755
index 0000000..4d23319
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.010.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "CTDB_PARTIALLY_ONLINE_INTERFACES, all down"
+
+setup_ctdb
+
+ifaces=$(ctdb_get_interfaces)
+
+export CTDB_PARTIALLY_ONLINE_INTERFACES="yes"
+
+ethtool_interfaces_down $ifaces
+
+msg=$(for i in $ifaces ; do echo "ERROR: No link on the public network interface $i" ; done)
+
+required_result 1 "$msg"
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.011.sh b/tests/eventscripts/10.interface.monitor.011.sh
new file mode 100755
index 0000000..21775d4
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.011.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "CTDB_PARTIALLY_ONLINE_INTERFACES, 1 bond down"
+
+setup_ctdb
+
+iface=$(ctdb_get_1_interface)
+
+setup_bond $iface "None"
+
+export CTDB_PARTIALLY_ONLINE_INTERFACES="yes"
+
+ethtool_interfaces_down "$iface"
+
+ok "ERROR: No active slaves for bond device $iface"
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.012.sh b/tests/eventscripts/10.interface.monitor.012.sh
new file mode 100755
index 0000000..dbe84b7
--- /dev/null
+++ b/tests/eventscripts/10.interface.monitor.012.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "CTDB_PARTIALLY_ONLINE_INTERFACES, 1 bond down"
+
+setup_ctdb
+
+ifaces=$(ctdb_get_interfaces)
+
+for i in $ifaces ; do
+    setup_bond $i "None"
+done
+
+export CTDB_PARTIALLY_ONLINE_INTERFACES="yes"
+
+ethtool_interfaces_down $ifaces
+
+msg=$(for i in $ifaces ; do echo "ERROR: No active slaves for bond device $i" ; done)
+
+required_result 1 "$msg"
+
+simple_test
diff --git a/tests/eventscripts/10.interface.monitor.013.sh b/tests/eventscripts/10.interface.monitor.013.sh


-- 
CTDB repository


More information about the samba-cvs mailing list