From b51f604f753abc094bf0151165173c5a27b5711f Mon Sep 17 00:00:00 2001 From: Martin Schwenke Date: Thu, 14 Jul 2016 11:58:51 +1000 Subject: [PATCH] ctdb-tests: Add new test support script for script install paths This helps unit tests locate CTDB's scripts. It is being created to support some new shellcheck unit tests. Hopefully, it can also be used to simplify some of the symlink complexity in some other unit tests suites, such as eventscripts. Signed-off-by: Martin Schwenke Reviewed-by: Amitay Isaacs --- ctdb/tests/scripts/script_install_paths.sh | 21 +++++++++++++++++++++ ctdb/wscript | 8 ++++++++ 2 files changed, 29 insertions(+) create mode 100644 ctdb/tests/scripts/script_install_paths.sh diff --git a/ctdb/tests/scripts/script_install_paths.sh b/ctdb/tests/scripts/script_install_paths.sh new file mode 100644 index 00000000000..bbf6f9e66e2 --- /dev/null +++ b/ctdb/tests/scripts/script_install_paths.sh @@ -0,0 +1,21 @@ +# Hey Emacs, this is a -*- shell-script -*- !!! :-) + +# $ctdb_dir is set in common.sh +if [ -n "$ctdb_dir" ] ; then + # Running in-tree + CTDB_SCRIPTS_BASE="${ctdb_dir}/config" + CTDB_SCRIPTS_INIT_SCRIPT="${ctdb_dir}/config/ctdb.init" + CTDB_SCRIPTS_SBIN_DIR="${ctdb_dir}/config" + CTDB_SCRIPTS_TOOLS_BIN_DIR="${ctdb_dir}/tools" + CTDB_SCRIPTS_TOOLS_HELPER_DIR="${ctdb_dir}/tools" +else + # Installed + CTDB_SCRIPTS_BASE="/usr/local/etc/ctdb" + CTDB_SCRIPTS_INIT_SCRIPT="" # No ideas here... this is a packaging choice + CTDB_SCRIPTS_SBIN_DIR="/usr/local/sbin" + CTDB_SCRIPTS_TOOLS_BIN_DIR="/usr/local/bin" + CTDB_SCRIPTS_TOOLS_HELPER_DIR="/usr/local/libexec/ctdb" +fi + +export CTDB_SCRIPTS_BASE CTDB_SCRIPTS_BIN_DIR CTDB_SCRIPTS_INIT_DIR \ + CTDB_SCRIPTS_SBIN_DIR CTDB_SCRIPTS_TOOLS_HELPER_DIR diff --git a/ctdb/wscript b/ctdb/wscript index f3a1901c322..3429e379117 100755 --- a/ctdb/wscript +++ b/ctdb/wscript @@ -763,6 +763,14 @@ def build(bld): bld.INSTALL_FILES(bld.env.CTDB_TEST_DATADIR+"/scripts", 'test_wrap', destname='test_wrap', chmod=0755) + bld.SAMBA_GENERATOR('ctdb-test-script-install-paths', + source='tests/scripts/script_install_paths.sh', + target='script_install_paths.sh', + rule='sed %s ${SRC} > ${TGT}' % (sed_cmdline)) + bld.INSTALL_FILES(bld.env.CTDB_TEST_DATADIR+"/scripts", + 'script_install_paths.sh', + destname='script_install_paths.sh', chmod=0644) + sed_expr1 = 's@^test_dir=.*@test_dir=%s\\nexport TEST_BIN_DIR=\"%s\"@' % ( bld.env.CTDB_TEST_DATADIR, bld.env.CTDB_TEST_LIBDIR) sed_expr2 = 's@^\(export CTDB_TESTS_ARE_INSTALLED\)=false@\\1=true@' -- 2.47.3