[SCM] Samba Shared Repository - branch master updated
Amitay Isaacs
amitay at samba.org
Tue Jun 5 18:38:02 UTC 2018
The branch, master has been updated
via f2e8ab3 ctdb-tests: Continue running if a testcase is not executable
via f1d0790 Revert "ctdb-tests: Continue running if a testcase is not executable"
via 4bdf97a ctdb-scripts: Change directory for notifications to events/notification
via b23f3f99 ctdb-scripts: Event scripts must end with ".script" suffix
via 12fd8d7 ctdb-scripts: Move event scripts to events/legacy/ directory
from 0f5d93a dsdb: Honour LDB_FLG_NOSYNC for metadata.tdb
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit f2e8ab3f02aab7e2550409762800befa4b55cb69
Author: Martin Schwenke <martin at meltin.net>
Date: Fri May 18 11:44:11 2018 +1000
ctdb-tests: Continue running if a testcase is not executable
Signed-off-by: Martin Schwenke <martin at meltin.net>
Reviewed-by: Amitay Isaacs <amitay at gmail.com>
Autobuild-User(master): Amitay Isaacs <amitay at samba.org>
Autobuild-Date(master): Tue Jun 5 20:37:15 CEST 2018 on sn-devel-144
commit f1d07908e2516e2968c6653d5998b34a42979548
Author: Martin Schwenke <martin at meltin.net>
Date: Fri May 18 11:39:49 2018 +1000
Revert "ctdb-tests: Continue running if a testcase is not executable"
This reverts commit 36e7043fb16ac996793545022147f696caedee9c.
An recent change broke this and I forgot to test before posting. :-(
Signed-off-by: Martin Schwenke <martin at meltin.net>
Reviewed-by: Amitay Isaacs <amitay at gmail.com>
commit 4bdf97a935d19454fbd544616640a22f2bafe55f
Author: Martin Schwenke <martin at meltin.net>
Date: Wed May 16 12:18:46 2018 +1000
ctdb-scripts: Change directory for notifications to events/notification
Signed-off-by: Martin Schwenke <martin at meltin.net>
Reviewed-by: Amitay Isaacs <amitay at gmail.com>
commit b23f3f996038626f618c5b5aa552686c1b852f44
Author: Martin Schwenke <martin at meltin.net>
Date: Tue May 15 18:36:29 2018 +1000
ctdb-scripts: Event scripts must end with ".script" suffix
Preparation for recommending configuration for each script next to the
actual script.
Signed-off-by: Martin Schwenke <martin at meltin.net>
Reviewed-by: Amitay Isaacs <amitay at gmail.com>
commit 12fd8d7a5c5d14d403aac6cd9e318afcd0a8e159
Author: Martin Schwenke <martin at meltin.net>
Date: Tue May 15 13:39:15 2018 +1000
ctdb-scripts: Move event scripts to events/legacy/ directory
This is the initial location that will be used by the new
multi-component aware event daemon.
Signed-off-by: Martin Schwenke <martin at meltin.net>
Reviewed-by: Amitay Isaacs <amitay at gmail.com>
-----------------------------------------------------------------------
Summary of changes:
ctdb/.gitignore | 1 -
ctdb/common/run_event.c | 56 ++++++++++------------
ctdb/config/README | 4 +-
ctdb/config/{events.d => events}/README | 5 +-
.../00.ctdb => events/legacy/00.ctdb.script} | 0
.../01.reclock => events/legacy/01.reclock.script} | 0
.../05.system => events/legacy/05.system.script} | 0
.../06.nfs => events/legacy/06.nfs.script} | 0
.../legacy/10.interface.script} | 0
.../11.natgw => events/legacy/11.natgw.script} | 0
.../11.routing => events/legacy/11.routing.script} | 0
.../legacy/13.per_ip_routing.script} | 0
.../legacy/20.multipathd.script} | 0
.../31.clamd => events/legacy/31.clamd.script} | 0
.../40.vsftpd => events/legacy/40.vsftpd.script} | 0
.../41.httpd => events/legacy/41.httpd.script} | 0
.../49.winbind => events/legacy/49.winbind.script} | 0
.../50.samba => events/legacy/50.samba.script} | 0
.../60.nfs => events/legacy/60.nfs.script} | 0
.../70.iscsi => events/legacy/70.iscsi.script} | 0
.../91.lvs => events/legacy/91.lvs.script} | 0
.../99.timeout => events/legacy/99.timeout.script} | 0
ctdb/config/functions | 2 +-
.../{notify.d.README => notification.README} | 8 ++--
ctdb/config/notify.sh | 11 ++---
ctdb/doc/ctdb.7.xml | 7 +--
ctdb/packaging/RPM/ctdb.spec.in | 18 ++++---
ctdb/server/ctdbd.c | 2 +-
ctdb/tests/complex/90_debug_hung_script.sh | 2 +-
ctdb/tests/cunit/run_event_001.sh | 37 ++++----------
ctdb/tests/eventd/eventd_002.sh | 8 ++--
ctdb/tests/eventd/eventd_003.sh | 2 +-
ctdb/tests/eventd/eventd_004.sh | 2 +-
ctdb/tests/eventd/eventd_005.sh | 4 +-
ctdb/tests/eventd/eventd_006.sh | 4 +-
ctdb/tests/eventd/eventd_007.sh | 4 +-
ctdb/tests/eventd/eventd_011.sh | 4 +-
ctdb/tests/eventd/eventd_012.sh | 4 +-
ctdb/tests/eventd/eventd_013.sh | 4 +-
ctdb/tests/eventd/eventd_014.sh | 4 +-
ctdb/tests/eventd/eventd_021.sh | 4 +-
ctdb/tests/eventd/eventd_022.sh | 6 +--
ctdb/tests/eventd/eventd_023.sh | 4 +-
ctdb/tests/eventd/eventd_024.sh | 4 +-
ctdb/tests/eventd/eventd_031.sh | 6 +--
ctdb/tests/eventd/eventd_032.sh | 12 ++---
ctdb/tests/eventd/eventd_033.sh | 12 ++---
ctdb/tests/eventd/eventd_041.sh | 4 +-
ctdb/tests/eventd/eventd_042.sh | 4 +-
ctdb/tests/eventd/eventd_043.sh | 4 +-
ctdb/tests/eventd/eventd_051.sh | 4 +-
ctdb/tests/eventscripts/scripts/local.sh | 18 +++----
ctdb/tests/run_tests.sh | 19 +++-----
ctdb/tests/shellcheck/event_scripts.sh | 2 +-
.../00.test => events/legacy/00.test.script} | 0
ctdb/tests/simple/scripts/local_daemons.bash | 2 +-
ctdb/wscript | 5 +-
57 files changed, 134 insertions(+), 169 deletions(-)
rename ctdb/config/{events.d => events}/README (97%)
rename ctdb/config/{events.d/00.ctdb => events/legacy/00.ctdb.script} (100%)
rename ctdb/config/{events.d/01.reclock => events/legacy/01.reclock.script} (100%)
rename ctdb/config/{events.d/05.system => events/legacy/05.system.script} (100%)
rename ctdb/config/{events.d/06.nfs => events/legacy/06.nfs.script} (100%)
rename ctdb/config/{events.d/10.interface => events/legacy/10.interface.script} (100%)
rename ctdb/config/{events.d/11.natgw => events/legacy/11.natgw.script} (100%)
rename ctdb/config/{events.d/11.routing => events/legacy/11.routing.script} (100%)
rename ctdb/config/{events.d/13.per_ip_routing => events/legacy/13.per_ip_routing.script} (100%)
rename ctdb/config/{events.d/20.multipathd => events/legacy/20.multipathd.script} (100%)
rename ctdb/config/{events.d/31.clamd => events/legacy/31.clamd.script} (100%)
rename ctdb/config/{events.d/40.vsftpd => events/legacy/40.vsftpd.script} (100%)
rename ctdb/config/{events.d/41.httpd => events/legacy/41.httpd.script} (100%)
rename ctdb/config/{events.d/49.winbind => events/legacy/49.winbind.script} (100%)
rename ctdb/config/{events.d/50.samba => events/legacy/50.samba.script} (100%)
rename ctdb/config/{events.d/60.nfs => events/legacy/60.nfs.script} (100%)
rename ctdb/config/{events.d/70.iscsi => events/legacy/70.iscsi.script} (100%)
rename ctdb/config/{events.d/91.lvs => events/legacy/91.lvs.script} (100%)
rename ctdb/config/{events.d/99.timeout => events/legacy/99.timeout.script} (100%)
rename ctdb/config/{notify.d.README => notification.README} (78%)
rename ctdb/tests/simple/etc-ctdb/{events.d/00.test => events/legacy/00.test.script} (100%)
Changeset truncated at 500 lines:
diff --git a/ctdb/.gitignore b/ctdb/.gitignore
index 9e8c581..a634aeb 100644
--- a/ctdb/.gitignore
+++ b/ctdb/.gitignore
@@ -22,7 +22,6 @@ public_addresses.txt
rec.lock
test.db
tests/bin
-tests/events.d/00.ctdb_test_trigger
tests/var
tests/takeover/ctdb_takeover.pyc
tests/eventscripts/var
diff --git a/ctdb/common/run_event.c b/ctdb/common/run_event.c
index e230b12..b1b50ec 100644
--- a/ctdb/common/run_event.c
+++ b/ctdb/common/run_event.c
@@ -20,7 +20,7 @@
#include "replace.h"
#include "system/filesys.h"
#include "system/dir.h"
-#include "system/locale.h"
+#include "system/glob.h"
#include "system/wait.h"
#include <talloc.h>
@@ -39,34 +39,15 @@
static int script_filter(const struct dirent *de)
{
- size_t namelen = strlen(de->d_name);
- char *ptr;
-
- /* Ignore . and .. */
- if (namelen < 3) {
- return 0;
- }
-
- /* Skip filenames with ~ */
- ptr = strchr(de->d_name, '~');
- if (ptr != NULL) {
- return 0;
- }
-
- /* Filename should start with [0-9][0-9]. */
- if ((! isdigit(de->d_name[0])) ||
- (! isdigit(de->d_name[1])) ||
- (de->d_name[2] != '.')) {
- return 0;
- }
+ int ret;
- /* Ignore filenames with multiple '.'s */
- ptr = index(&de->d_name[3], '.');
- if (ptr != NULL) {
- return 0;
+ /* Match a script pattern */
+ ret = fnmatch("[0-9][0-9].*.script", de->d_name, 0);
+ if (ret == 0) {
+ return 1;
}
- return 1;
+ return 0;
}
static int get_script_list(TALLOC_CTX *mem_ctx,
@@ -75,6 +56,7 @@ static int get_script_list(TALLOC_CTX *mem_ctx,
{
struct dirent **namelist = NULL;
struct run_event_script_list *script_list;
+ size_t ls;
int count, ret;
int i;
@@ -113,10 +95,13 @@ static int get_script_list(TALLOC_CTX *mem_ctx,
goto done;
}
+ ls = strlen(".script");
for (i=0; i<count; i++) {
struct run_event_script *s = &script_list->script[i];
- s->name = talloc_strdup(script_list, namelist[i]->d_name);
+ s->name = talloc_strndup(script_list,
+ namelist[i]->d_name,
+ strlen(namelist[i]->d_name) - ls);
if (s->name == NULL) {
ret = ENOMEM;
talloc_free(script_list);
@@ -142,12 +127,21 @@ static int script_chmod(TALLOC_CTX *mem_ctx, const char *script_dir,
{
DIR *dirp;
struct dirent *de;
+ char script_file[PATH_MAX];
int ret, new_mode;
char *filename;
struct stat st;
bool found;
int fd = -1;
+ ret = snprintf(script_file,
+ sizeof(script_file),
+ "%s.script",
+ script_name);
+ if (ret >= sizeof(script_file)) {
+ return ENAMETOOLONG;
+ }
+
dirp = opendir(script_dir);
if (dirp == NULL) {
return errno;
@@ -155,7 +149,7 @@ static int script_chmod(TALLOC_CTX *mem_ctx, const char *script_dir,
found = false;
while ((de = readdir(dirp)) != NULL) {
- if (strcmp(de->d_name, script_name) == 0) {
+ if (strcmp(de->d_name, script_file) == 0) {
/* check for valid script names */
ret = script_filter(de);
@@ -174,7 +168,7 @@ static int script_chmod(TALLOC_CTX *mem_ctx, const char *script_dir,
return ENOENT;
}
- filename = talloc_asprintf(mem_ctx, "%s/%s", script_dir, script_name);
+ filename = talloc_asprintf(mem_ctx, "%s/%s", script_dir, script_file);
if (filename == NULL) {
return ENOMEM;
}
@@ -422,7 +416,7 @@ int run_event_script_list(struct run_event_context *run_ctx,
struct stat st;
char *path = NULL;
- path = talloc_asprintf(mem_ctx, "%s/%s",
+ path = talloc_asprintf(mem_ctx, "%s/%s.script",
run_event_script_dir(run_ctx),
script->name);
if (path == NULL) {
@@ -779,7 +773,7 @@ static struct tevent_req *run_event_run_script(struct tevent_req *req)
script = &state->script_list->script[state->index];
- path = talloc_asprintf(state, "%s/%s",
+ path = talloc_asprintf(state, "%s/%s.script",
run_event_script_dir(state->run_ctx),
script->name);
if (path == NULL) {
diff --git a/ctdb/config/README b/ctdb/config/README
index ffbeb0e..d28f4f0 100644
--- a/ctdb/config/README
+++ b/ctdb/config/README
@@ -6,9 +6,9 @@ Selected highlights:
An initscript for starting ctdbd at boot time.
- events.d/
+ events/
- Eventscripts. See events.d/README for more details.
+ Eventscripts. See events/README for more details.
functions
diff --git a/ctdb/config/events.d/README b/ctdb/config/events/README
similarity index 97%
rename from ctdb/config/events.d/README
rename to ctdb/config/events/README
index f13714a..88d5da4 100644
--- a/ctdb/config/events.d/README
+++ b/ctdb/config/events/README
@@ -1,8 +1,11 @@
-The events.d/ directory contains event scripts used by CTDB. Event
+The events/ directory contains event scripts used by CTDB. Event
scripts are triggered on certain events, such as startup, monitoring
or public IP allocation. Scripts may be specific to services,
networking or internal CTDB operations.
+Scripts are divided into subdirectories for different CTDB components.
+Right now the only component is "legacy".
+
All event scripts start with the prefix 'NN.' where N is a digit. The
event scripts are run in sequence based on NN. Thus 10.interface will
be run before 60.nfs. It is recommended to keep each NN unique.
diff --git a/ctdb/config/events.d/00.ctdb b/ctdb/config/events/legacy/00.ctdb.script
similarity index 100%
rename from ctdb/config/events.d/00.ctdb
rename to ctdb/config/events/legacy/00.ctdb.script
diff --git a/ctdb/config/events.d/01.reclock b/ctdb/config/events/legacy/01.reclock.script
similarity index 100%
rename from ctdb/config/events.d/01.reclock
rename to ctdb/config/events/legacy/01.reclock.script
diff --git a/ctdb/config/events.d/05.system b/ctdb/config/events/legacy/05.system.script
similarity index 100%
rename from ctdb/config/events.d/05.system
rename to ctdb/config/events/legacy/05.system.script
diff --git a/ctdb/config/events.d/06.nfs b/ctdb/config/events/legacy/06.nfs.script
similarity index 100%
rename from ctdb/config/events.d/06.nfs
rename to ctdb/config/events/legacy/06.nfs.script
diff --git a/ctdb/config/events.d/10.interface b/ctdb/config/events/legacy/10.interface.script
similarity index 100%
rename from ctdb/config/events.d/10.interface
rename to ctdb/config/events/legacy/10.interface.script
diff --git a/ctdb/config/events.d/11.natgw b/ctdb/config/events/legacy/11.natgw.script
similarity index 100%
rename from ctdb/config/events.d/11.natgw
rename to ctdb/config/events/legacy/11.natgw.script
diff --git a/ctdb/config/events.d/11.routing b/ctdb/config/events/legacy/11.routing.script
similarity index 100%
rename from ctdb/config/events.d/11.routing
rename to ctdb/config/events/legacy/11.routing.script
diff --git a/ctdb/config/events.d/13.per_ip_routing b/ctdb/config/events/legacy/13.per_ip_routing.script
similarity index 100%
rename from ctdb/config/events.d/13.per_ip_routing
rename to ctdb/config/events/legacy/13.per_ip_routing.script
diff --git a/ctdb/config/events.d/20.multipathd b/ctdb/config/events/legacy/20.multipathd.script
similarity index 100%
rename from ctdb/config/events.d/20.multipathd
rename to ctdb/config/events/legacy/20.multipathd.script
diff --git a/ctdb/config/events.d/31.clamd b/ctdb/config/events/legacy/31.clamd.script
similarity index 100%
rename from ctdb/config/events.d/31.clamd
rename to ctdb/config/events/legacy/31.clamd.script
diff --git a/ctdb/config/events.d/40.vsftpd b/ctdb/config/events/legacy/40.vsftpd.script
similarity index 100%
rename from ctdb/config/events.d/40.vsftpd
rename to ctdb/config/events/legacy/40.vsftpd.script
diff --git a/ctdb/config/events.d/41.httpd b/ctdb/config/events/legacy/41.httpd.script
similarity index 100%
rename from ctdb/config/events.d/41.httpd
rename to ctdb/config/events/legacy/41.httpd.script
diff --git a/ctdb/config/events.d/49.winbind b/ctdb/config/events/legacy/49.winbind.script
similarity index 100%
rename from ctdb/config/events.d/49.winbind
rename to ctdb/config/events/legacy/49.winbind.script
diff --git a/ctdb/config/events.d/50.samba b/ctdb/config/events/legacy/50.samba.script
similarity index 100%
rename from ctdb/config/events.d/50.samba
rename to ctdb/config/events/legacy/50.samba.script
diff --git a/ctdb/config/events.d/60.nfs b/ctdb/config/events/legacy/60.nfs.script
similarity index 100%
rename from ctdb/config/events.d/60.nfs
rename to ctdb/config/events/legacy/60.nfs.script
diff --git a/ctdb/config/events.d/70.iscsi b/ctdb/config/events/legacy/70.iscsi.script
similarity index 100%
rename from ctdb/config/events.d/70.iscsi
rename to ctdb/config/events/legacy/70.iscsi.script
diff --git a/ctdb/config/events.d/91.lvs b/ctdb/config/events/legacy/91.lvs.script
similarity index 100%
rename from ctdb/config/events.d/91.lvs
rename to ctdb/config/events/legacy/91.lvs.script
diff --git a/ctdb/config/events.d/99.timeout b/ctdb/config/events/legacy/99.timeout.script
similarity index 100%
rename from ctdb/config/events.d/99.timeout
rename to ctdb/config/events/legacy/99.timeout.script
diff --git a/ctdb/config/functions b/ctdb/config/functions
index 30afcde..5cc995a 100755
--- a/ctdb/config/functions
+++ b/ctdb/config/functions
@@ -64,7 +64,7 @@ load_script_options ()
fi
if [ -n "$_script" ] ; then
- _s="${CTDB_BASE}/events.d/${_script}"
+ _s="${CTDB_BASE}/events/legacy/${_script}"
else
_s="${0%.script}"
fi
diff --git a/ctdb/config/notify.d.README b/ctdb/config/notification.README
similarity index 78%
rename from ctdb/config/notify.d.README
rename to ctdb/config/notification.README
index de56417..16b632f 100755
--- a/ctdb/config/notify.d.README
+++ b/ctdb/config/notification.README
@@ -1,6 +1,6 @@
-This directory should contain executable programs to handle CTDB event
-notifications. The first and only argument passed to each program is
-the event, which is one of:
+This directory should contain executable programs ending in ".script"
+to handle CTDB event notifications. The first and only argument
+passed to each program is the event, which is one of:
init, setup, startup, unhealthy, healthy
@@ -34,5 +34,3 @@ Alternatively, email could be sent:
mail -s "$(hostname) is HEALTHY" foo at example.com </dev/null >/dev/null 2>&1
;;
esac
-
-When adding programs please note the exclusion patterns in notify.sh.
diff --git a/ctdb/config/notify.sh b/ctdb/config/notify.sh
index 9f947c7..db69afc 100755
--- a/ctdb/config/notify.sh
+++ b/ctdb/config/notify.sh
@@ -1,19 +1,14 @@
#!/bin/sh
# This is script is invoked from ctdb when certain events happen. See
-# /etc/ctdb/notify.d/README for more details.
+# /etc/ctdb/events/notification/README for more details.
d=$(dirname "$0")
-nd="${d}/notify.d"
+nd="${d}/events/notification"
ok=true
-for i in "${nd}/"* ; do
- # Don't run files matching basename
- case "${i##*/}" in
- *~|*,|*.rpm*|*.swp|README) continue ;;
- esac
-
+for i in "${nd}/"*.script ; do
# Files must be executable
[ -x "$i" ] || continue
diff --git a/ctdb/doc/ctdb.7.xml b/ctdb/doc/ctdb.7.xml
index a4444c5..09fb4ed 100644
--- a/ctdb/doc/ctdb.7.xml
+++ b/ctdb/doc/ctdb.7.xml
@@ -970,9 +970,10 @@ CTDB_NATGW_DEFAULT_GATEWAY=10.0.0.1
</para>
<para>
- The notification mechanism runs all executable files in
- <filename>/usr/local/etc/ctdb/notify.d/</filename>, ignoring any
- failures and continuing to run all files.
+ The notification mechanism runs all executable files ending in
+ ".script" in
+ <filename>/usr/local/etc/ctdb/events/notification/</filename>,
+ ignoring any failures and continuing to run all files.
</para>
<para>
diff --git a/ctdb/packaging/RPM/ctdb.spec.in b/ctdb/packaging/RPM/ctdb.spec.in
index 55a0175..b07401f 100644
--- a/ctdb/packaging/RPM/ctdb.spec.in
+++ b/ctdb/packaging/RPM/ctdb.spec.in
@@ -128,14 +128,14 @@ mkdir -p $RPM_BUILD_ROOT%{initdir}
install -m755 config/ctdb.init $RPM_BUILD_ROOT%{initdir}/ctdb
%endif
-mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/ctdb/notify.d
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/ctdb/events/notification
# This is a hack. All documents should be installed in /usr/share/doc.
-rm -f $RPM_BUILD_ROOT%{_sysconfdir}/ctdb/events.d/README
-cp config/events.d/README README.eventscripts
+rm -f $RPM_BUILD_ROOT%{_sysconfdir}/ctdb/events/README
+cp config/events/README README.eventscripts
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/ctdb/nfs-checks.d/README
cp config/nfs-checks.d/README README.nfs-checks.d
-cp config/notify.d.README README.notify.d
+cp config/notification.README README.notification
# Remove "*.old" files
find $RPM_BUILD_ROOT -name "*.old" -exec rm -f {} \;
@@ -155,7 +155,7 @@ rm -rf $RPM_BUILD_ROOT
%config(noreplace) %{_sysconfdir}/ctdb/ctdb.tunables
%config(noreplace) %{_sysconfdir}/ctdb/script.options
%{_sysconfdir}/ctdb/notify.sh
-%dir %{_sysconfdir}/ctdb/notify.d
+%dir %{_sysconfdir}/ctdb/events/notification
%config(noreplace) %{_sysconfdir}/ctdb/debug-hung-script.sh
%config(noreplace) %{_sysconfdir}/ctdb/ctdb-crash-cleanup.sh
%config(noreplace) %{_sysconfdir}/ctdb/debug_locks.sh
@@ -168,10 +168,8 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{initdir}/ctdb
%endif
-%attr(755,root,root) %{_sysconfdir}/ctdb/notify.d
-
%doc README COPYING
-%doc README.eventscripts README.notify.d
+%doc README.eventscripts README.notification
%doc doc/recovery-process.txt
%doc doc/cluster_mutex_helper.txt
%doc doc/*.html
@@ -179,8 +177,8 @@ rm -rf $RPM_BUILD_ROOT
%{_sysconfdir}/sudoers.d/ctdb
%dir %{_sysconfdir}/ctdb
%{_sysconfdir}/ctdb/functions
-%dir %{_sysconfdir}/ctdb/events.d
-%{_sysconfdir}/ctdb/events.d/*
+%dir %{_sysconfdir}/ctdb/events
+%{_sysconfdir}/ctdb/events/*
%dir %{_sysconfdir}/ctdb/nfs-checks.d
%config(noreplace) %{_sysconfdir}/ctdb/nfs-checks.d/00.portmapper.check
%config(noreplace) %{_sysconfdir}/ctdb/nfs-checks.d/10.status.check
diff --git a/ctdb/server/ctdbd.c b/ctdb/server/ctdbd.c
index 5290165..93aedf2 100644
--- a/ctdb/server/ctdbd.c
+++ b/ctdb/server/ctdbd.c
@@ -350,7 +350,7 @@ int main(int argc, const char *argv[])
ctdb_tunables_set_defaults(ctdb);
ctdb->event_script_dir = talloc_asprintf(ctdb,
- "%s/events.d",
+ "%s/events/legacy",
ctdb_base);
if (ctdb->event_script_dir == NULL) {
DBG_ERR("Out of memory\n");
diff --git a/ctdb/tests/complex/90_debug_hung_script.sh b/ctdb/tests/complex/90_debug_hung_script.sh
index b2518df..797f007 100755
--- a/ctdb/tests/complex/90_debug_hung_script.sh
+++ b/ctdb/tests/complex/90_debug_hung_script.sh
@@ -84,7 +84,7 @@ done <<'EOF'
===== Start of hung script debug for PID=".*", event="monitor" =====
===== End of hung script debug for PID=".*", event="monitor" =====
pstree -p -a .*:
-99\\.timeout,.* /etc/ctdb/events.d/99.timeout monitor
+99\\.timeout\\.scri,.* /etc/ctdb/events/legacy/99\\.timeout\\.script monitor
*\`-sleep,.*
---- Stack trace of interesting process [0-9]*\\[sleep\\] ----
[<[0-9a-f]*>] .*sleep+.*
diff --git a/ctdb/tests/cunit/run_event_001.sh b/ctdb/tests/cunit/run_event_001.sh
index 35c256b..f8f74fb 100755
--- a/ctdb/tests/cunit/run_event_001.sh
+++ b/ctdb/tests/cunit/run_event_001.sh
@@ -22,14 +22,15 @@ cat > "$scriptdir/prog" <<EOF
echo hello
EOF
-# Invalid script
+# Invalid script, doesn't end in ".script"
ok <<EOF
No event scripts found
EOF
unit_test run_event_test "$scriptdir" list
+# Is not found because enabling "prog" actually looks for "prog.script"
ok <<EOF
-Script enable prog completed with result=22
+Script enable prog completed with result=2
EOF
unit_test run_event_test "$scriptdir" enable prog
@@ -37,28 +38,7 @@ required_result 1 <<EOF
EOF
unit_test test -x "${scriptdir}/prog"
-cat > "$scriptdir/10.test.rpmnew" <<EOF
-#!/bin/sh
-
-echo hello
-EOF
-chmod +x "$scriptdir/10.test.rpmnew"
-
-# Invalid script with multiple '.'s
-ok <<EOF
-No event scripts found
-EOF
-unit_test run_event_test "$scriptdir" list
-
-ok <<EOF
-Script disable 10.test.rpmnew completed with result=22
-EOF
-unit_test run_event_test "$scriptdir" disable 10.test.rpmnew
-
-ok_null
-unit_test test -x "${scriptdir}/10.test.rpmnew"
-
-cat > "$scriptdir/11.foo" <<EOF
+cat > "$scriptdir/11.foo.script" <<EOF
#!/bin/sh
echo hello
@@ -77,7 +57,7 @@ unit_test run_event_test "$scriptdir" enable 11.foo
ok <<EOF
EOF
-unit_test test -x "${scriptdir}/11.foo"
+unit_test test -x "${scriptdir}/11.foo.script"
ok <<EOF
11.foo: hello
@@ -86,7 +66,7 @@ Event monitor completed with result=0
EOF
unit_test run_event_test "$scriptdir" run 10 monitor
-cat > "$scriptdir/22.bar" <<EOF
+cat > "$scriptdir/22.bar.script" <<EOF
#!/bin/sh
exit 1
@@ -120,7 +100,7 @@ unit_test run_event_test "$scriptdir" disable 22.bar
required_result 1 <<EOF
EOF
-unit_test test -x "${scriptdir}/22.bar"
+unit_test test -x "${scriptdir}/22.bar.script"
ok <<EOF
11.foo: hello
@@ -130,7 +110,7 @@ Event monitor completed with result=0
EOF
unit_test run_event_test "$scriptdir" run 10 monitor
--
Samba Shared Repository
More information about the samba-cvs
mailing list