1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-12 09:18:10 +03:00
Commit Graph

4319 Commits

Author SHA1 Message Date
Martin Schwenke
fd048a1771 Eventscript functions: add optional version to nfs_check_rpc_service()
This can be optional because the 1st item of each action-triple is a
test comparison that starts with '-'.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 1957d53b78f101cd0cd37d9705a225deef5174a2)
2012-05-11 10:33:27 +10:00
Martin Schwenke
469a5889de Packaging: devel package fixes
Group was non-existent, typo in summary.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit f0a14169883661a702a352aa0311a2b433071a83)
2012-05-11 10:33:27 +10:00
Martin Schwenke
9346a5364f Packaging: generate a ctdb-tests package
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 5c23244591b8005f91d8e25e719cd332c711db14)
2012-05-11 10:33:27 +10:00
Ronnie Sahlberg
dfdec4a07c We dont need to serialize the "probe which address this node is" if we have given an explicit --node-ip on the commandline
(This used to be ctdb commit e3dc5bd3f1ef1f0ed08f57a5b5bafcac936e9ed0)
2012-05-10 17:42:06 +10:00
Ronnie Sahlberg
a57eba2bb4 Track all child process so we never send a signal to an unrelated process (our child died and kernel wrapped the pid-space and reused the pid for a different process
Wrap all creation of child processes inside ctdb_fork() which is used to track all processes we have spawned.
Capture SIGCHLD to track also which child processes have terminated.

Wrap kill() inside ctdb_kill() and make sure that we never send a !0 signal to a child process pid that has already terminated (and might have been replaced with a

(This used to be ctdb commit f73a4b1495830bcdd094a93732a89dd53b3c2f78)
2012-05-03 14:03:26 +10:00
Ronnie Sahlberg
85432ecc53 DOC: document the reloadips command
(This used to be ctdb commit 90e8c4dc7d89c460ad2da5a9af1cef006db3b1c0)
2012-05-03 11:07:17 +10:00
Ronnie Sahlberg
a367fa6138 RELOADIPS: simplify the reloadips code a bit
and also update the "read public address file" to not check if the address exists already locally when we read if from the child process, to stop it
from spamming the logs with "We already host ..."
messages

(This used to be ctdb commit 334ea830f1bf33419f4a1e78f23afd41a852d0f4)
2012-05-01 15:34:26 +10:00
Amitay Isaacs
733bc2c03c Revert "server: locking: Provide a common API for non-blocking locking of TDBs"
This reverts commit 6a92fc2b8da2bba98dca29b781ab459ba4e879a5.

Reverting incomplete changes to ctdb_lock.c

(This used to be ctdb commit 2a3d22431948f849c93762a6ab49344acb687feb)
2012-05-01 12:09:48 +10:00
Amitay Isaacs
c3c5dec52c server: locking: Provide a common API for non-blocking locking of TDBs
(This used to be ctdb commit 6a92fc2b8da2bba98dca29b781ab459ba4e879a5)
2012-05-01 12:09:38 +10:00
Amitay Isaacs
ec72e30b8f tests/simple: Fix typo in the test message
Signed-off-by: Amitay Isaacs <amitay@gmail.com>

(This used to be ctdb commit c642b452e7b0272e32c02509ac579b790d9a03e7)
2012-05-01 12:09:38 +10:00
Ronnie Sahlberg
7a1aa560e7 Add new control to reload the public ip address file on a node
Also add a method to use the recovery master/daemon to reload the public ips on all nodes in the cluster.
Reloading the public ips on all node sin the cluster is only suported if all nodes in the cluster are available and healthy.

(This used to be ctdb commit 05603e914f8c12618d7e06943c0f7df207f645b0)
2012-05-01 10:48:08 +10:00
Martin Schwenke
c30356c140 tests: Update README
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit e9fad1ff82e6fb9e6bf615986c41c746fd415058)
2012-04-27 17:19:45 +10:00
Martin Schwenke
a4f4df233f tests/eventscripts: $CTDB_ETCDIR should be in $TEST_VAR_DIR
The policy routing tests modify /etc/iproute2/rt_tables, so this
directory should not be in the installation area.

Instead the contents of tests/eventscripts/etc are copied into a place
under $TEST_VAR_DIR where the directory can be modified with gay
abandon.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit a0afb4195caab39891a304b8b4eadd94cab7c4a7)
2012-04-27 15:42:43 +10:00
Martin Schwenke
4528c55d3e tests/eventscripts: Use a canned ctdb.sysconfig rather than a link
The link is hard to manage and has no real advantage.

The canned config is 2 of the 3 currently non-comment/whitespace lines
in config/ctdb.sysconfig.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 66d0b913301c3b1037278bcaa0452ecbe07248df)
2012-04-27 15:42:43 +10:00
Martin Schwenke
a4083f2e97 tests/eventscripts: Explicitly set CTDB_SERVICE_AUTOSTARTSTOP="yes"
No use depending on defaults in the initscript - the tests should
control what is tested.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 1c37abac5fd18c139aa55989d0fb6b475f4c22f1)
2012-04-27 15:42:42 +10:00
Martin Schwenke
6a21c819e7 tests/eventscripts: Be more defensive about removing the var directory
Could add -r but that might avoid error.  The only time it doesn't
exist is the 1st time a top-level var directory is used.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 047d97dc84a5943556efb31bb2856fd04835fffa)
2012-04-27 15:42:42 +10:00
Martin Schwenke
0c8f785628 Eventscripts: fix basename -> dirname typo
I fixed one of these previously but didn't notice this one...  :-(

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 0c674efd19368d41d9cc28909d2b16c1af54c86c)
2012-04-27 15:42:42 +10:00
Martin Schwenke
a14671f829 tests/eventscripts: Add sanity check to esnure events.d/ can be found
If it can't, the installation is probably inconsistent, so a
(hopefully) helpful message is printed.  :-)

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit df732ca8e27f0f3417b4d5d259157bd0e0632124)
2012-04-27 15:42:42 +10:00
Martin Schwenke
dc2dfbdb93 tests: Add installation script for tests
This could all be done in Makefile.in, but that would be very complex.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 12c9986059cacda819e669fa77d613b408c62599)
2012-04-27 15:42:42 +10:00
Martin Schwenke
46f82181d0 tests/simple: Add new pseudo testcase to potentially shutdown local daemons
Only shuts them down if $TEST_CLEANUP is true.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit eddfc02335202d853e29a89f08225ab44cac8a25)
2012-04-27 15:42:42 +10:00
Martin Schwenke
70270b6815 tests: New run_tests -C (cleanup) option
Sets TEST_CLEANUP=true and causes $TEST_VAR_DIR to be removed... and
potentially other cleanup actions in testcases.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 3219f221a858e499f084b8beb44610537312602b)
2012-04-27 15:42:42 +10:00
Martin Schwenke
e0f4f2c501 tests/eventscripts: $FAKE_IP_STATE is always set in ip command stub
No need for a default, especially since there is no sane default!

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit b430a5f61cfdc28e967890602ce6dac0e922c07d)
2012-04-27 15:42:42 +10:00
Martin Schwenke
451e660338 tests: Time logging in integration tests should use TEST_VAR_DIR
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 734cbd7def23236d418ebc6d813a748a84900101)
2012-04-27 15:42:42 +10:00
Martin Schwenke
cb09959063 tests: Unit tests should use $TEST_VAR_DIR
This directory is already guaranteed to be absolute, so no check is
needed.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 78f6f209eb15102f4e8baa9106583df0ef4bb693)
2012-04-27 15:42:42 +10:00
Martin Schwenke
b7b6f10e9b tests: Improve the logic for adding directories to $PATH
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit e6bfd3bdb3a35b2e7e7c41a6f37976772a54e3ce)
2012-04-27 15:42:42 +10:00
Martin Schwenke
d28e268ed6 tests: Update integration.sh to use TEST_VAR_DIR
There are 2 subtleties:

* Local daemons currently use the in-tree tests/events.d/ subdirectory
  for their eventscripts.  However, some tests install/remove test-specific
  eventscripts so now $TEST_VAR_DIR/events.d/ is used and the standard
  eventscripts are copied there at setup time.

* The pgrep/pkill logic for killing local daemons currently relies on
  ctdbd being run with a full path to tests/bin/ctdbd.  If the tests
  are installed and run against an installed daemon then this won't
  work.  Therefore, ctdbd is now expected to be in $PATH and is
  found/killed by matching:

    ctdbd --socket=.* --nlist .* --nopublicipcheck

  This is complex but should avoid killing a real ctdbd running on a
  node.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 301491802eec0e49e108f5aae7d7be379703d72c)
2012-04-27 15:42:42 +10:00
Martin Schwenke
5b590dfa19 tests: Add a -V option to set new variable TEST_VAR_DIR
Part of preparation to be able to install the tests.  The current var/
subdirectories will end up somewhere in /usr/local/ or /usr/ and we
don't want to put temporary files there.

This creates a temporary TEST_VAR_DIR by default.

If -V is specified then the given directory will be used as
TEST_VAR_DIR.  This allows the current behaviour where individual
integration tests can be run against already-running daemons 9with
sockets and other stuff already created) to save time and trouble.

Yes, there are plans for a clean-up option...  ;-)

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 8e4ec9a40bb7d392d7474b067a74fa121c069007)
2012-04-27 15:42:42 +10:00
Martin Schwenke
7ed4387990 tests/integration: Remove cabability for testcase option
This is unused and can't be used with the current test infrastructure.
It may have been useful with ctdb_test_env but I don't think it was
ever used.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 4aa879466dd46cb4e8710edbbaac1276521e475b)
2012-04-27 15:40:43 +10:00
Martin Schwenke
286d5aa5b1 tests/integration: Use absolute path for socket symlink
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 709cd5dfeb630096a1cd2062da666fee9ddca715)
2012-04-27 15:40:43 +10:00
Martin Schwenke
edaead3cd5 tests/simple: Replace "tdbdump" with "ctdb cattdb"
tdbdump may not be installed and would be an unnecessary dependency.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit fbabc05569d91bf033f474d89f51b49490943332)
2012-04-27 15:40:43 +10:00
Martin Schwenke
6757ad62f4 tests: Make run_tests -X more flexible - it now works with onnode
Hardcoding "sh -x" is suboptimal because some scripts, like onnode,
require bash.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 246809af64c03d26288abff5907ed46614e72b15)
2012-04-27 15:40:43 +10:00
Martin Schwenke
6764b7b33e tests: Update README files and add new README files where missing
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit bef03b32f8ec114a64c55b25951aeeb939d87b33)
2012-04-27 15:40:43 +10:00
Martin Schwenke
466ff20156 tests: Update top-level wrapper scripts
* Add the unit tests to "make test"
* Make scripts run from anywhere

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 95947123eee687ed83eebc567397a5bc9d55a945)
2012-04-27 15:40:43 +10:00
Martin Schwenke
c4606275c9 tests: run_tests should exit with failed test status if running with -H
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 6eb7fa572e7fc212332ddd68793e3f35161baf7c)
2012-04-27 15:40:43 +10:00
Martin Schwenke
05062d874a tests: test_wrap can use $TEST_SCRIPTS_DIR for a little extra clarity
Also add a comment to explain what is being added to $PATH.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 704a3e3b83aff63e8f7b0650c141776ed2c1f047)
2012-04-27 15:40:43 +10:00
Amitay Isaacs
2f2e341370 tests: test_wrap needs to set TEST_SCRIPTS_DIR
Signed-off-by: Amitay Isaacs <amitay@gmail.com>

(This used to be ctdb commit 79e979d67e3a2a5a13ef8fd2ef8f56331ec51558)
2012-04-27 15:40:43 +10:00
Amitay Isaacs
2503cb2259 tests: CTDB_TEST_WRAPPER has to be an absolute path on a real cluster
Signed-off-by: Amitay Isaacs <amitay@gmail.com>

(This used to be ctdb commit a0a7759d47ef5de4a8214273e39c50fb1f6e2e0c)
2012-04-27 15:40:43 +10:00
Amitay Isaacs
d9b210b079 tests: Fix wrapper scripts
Signed-off-by: Amitay Isaacs <amitay@gmail.com>

(This used to be ctdb commit eef162ceaac6853bf1ff622691901289280bc25f)
2012-04-27 15:40:43 +10:00
Martin Schwenke
72ab31b024 tests: Fix trailing whitespace issues in integration.bash
git complains...

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit d714cf7924674a7a0eb6d585eb74a6a4df26fc12)
2012-04-27 15:40:43 +10:00
Martin Schwenke
4d08afa0be tests: Add new -H option for run_tests to avoid printing header/footer
This is useful for using run_tests to run one test at a time within an
alternative test framework.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit dc71294a33e88baa4e85fa1fa66cab58a83c2607)
2012-04-27 15:40:43 +10:00
Martin Schwenke
d4b102fe82 tests: Add -e option to cause run_tests to exit on first test failure
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit f45295a3005474957852d0e7a5c3807e30ab519d)
2012-04-27 15:40:43 +10:00
Martin Schwenke
21b2190751 tests: Remove ctdb_test_env
Move the contents to integration.bash and run_tests as appropriate.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 6136ab02db261b26a2a58b526c913e37e8146841)
2012-04-27 15:40:43 +10:00
Martin Schwenke
43f1209dc4 tests: Programs run by tests should be found in $PATH
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit b5308142d03332d6d4e0c3b77283c772462fbb23)
2012-04-27 15:40:43 +10:00
Martin Schwenke
769407feab tests: Move relative directory path hack from run_tests to common.sh
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 66a7fece867966528689d2784a284e32d687a0f5)
2012-04-27 15:40:43 +10:00
Martin Schwenke
f30d4c575e tests: Local daemons are no longer the default, now require run_tests -l
Testing with local daemons is the current default but this is not the
most common use case.  Therefore, we make local daemons optional by
using the -l switch with run_tests or by setting TEST_LOCAL_DAEMONS to
the number of daemons to be used (-l sets this to 3).

TEST_LOCAL_DAEMONS replaces CTDB_TEST_NUM_DAEMONS and
CTDB_TEST_REAL_CLUSTER is removed.

Most relevant logic is moved from ctdb_test_env to integration.bash.
ctdb_test_check_real_cluster() is moved from integration.bash to
complex/scripts/local.bash.

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 72ecae61c43b318ec94b527a12cbb0a382e8c3db)
2012-04-27 15:40:43 +10:00
Martin Schwenke
012015b32c Eventscripts - Fix typo in 13.per_ip_routing support for __auto_link_local__
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 9542e770a9780740b49122f1f52f08b32eca4b35)
2012-04-27 15:40:43 +10:00
Martin Schwenke
c2d1f8752c tests: Rationalise integration test infrastructure
* run_tests no longer includes common.sh, which is only to be included
  by test cases.  Therefore, it defines its own die() function.

* TEST_SUBDIR is now set in common.sh

* Move complex-only functions to complex/scripts/local.bash

Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit bfa1d6638d3e116640eb4e3bb71b21ba6ef8cae5)
2012-04-27 15:40:43 +10:00
Martin Schwenke
bf197d097f tests: Rename ctdb_test_functions.bash to integration.bash
Signed-off-by: Martin Schwenke <martin@meltin.net>

(This used to be ctdb commit 79adb50b3ce3873c3baf9e6715c1d1c3f181ce43)
2012-04-27 15:40:43 +10:00
Ronnie Sahlberg
4426f9a531 Merge remote branch 'amitay/tdb-sync'
(This used to be ctdb commit 8052ee0a6bda3fa88501d77b2d53315be2b75ec1)
2012-04-26 08:09:34 +10:00
Ronnie Sahlberg
db411aaada Merge remote branch 'amitay/tevent-sync'
(This used to be ctdb commit 17ff3f240b0d72c72ed28d70fb9aeb3b20c80670)
2012-04-26 08:09:23 +10:00