From: Andre Noll Date: Wed, 12 May 2010 09:04:36 +0000 (+0200) Subject: Merge branch 't/unconditional_hooks' X-Git-Tag: v0.1.4~4 X-Git-Url: http://git.tuebingen.mpg.de/?a=commitdiff_plain;h=f92d4b984e14d18f468151ac8596dc0159ff838e;hp=1a2bfdde95331f8f7262b99c07a5438dae827cdf;p=dss.git Merge branch 't/unconditional_hooks' --- diff --git a/dss.c b/dss.c index 9f601ce..531beb6 100644 --- a/dss.c +++ b/dss.c @@ -214,10 +214,6 @@ static int pre_create_hook(void) assert(snapshot_creation_status == HS_READY); /* make sure that the next snapshot time will be recomputed */ invalidate_next_snapshot_time(); - if (!conf.pre_create_hook_given) { - snapshot_creation_status = HS_PRE_SUCCESS; - return 0; - } DSS_DEBUG_LOG("executing %s\n", conf.pre_create_hook_arg); ret = dss_exec_cmdline_pid(&create_pid, conf.pre_create_hook_arg, fds); @@ -243,10 +239,6 @@ static int pre_remove_hook(struct snapshot *s, const char *why) *snapshot_currently_being_removed = *s; snapshot_currently_being_removed->name = dss_strdup(s->name); - if (!conf.pre_remove_hook_given) { - snapshot_removal_status = HS_PRE_SUCCESS; - return 0; - } cmd = make_message("%s %s/%s", conf.pre_remove_hook_arg, conf.dest_dir_arg, s->name); DSS_DEBUG_LOG("executing %s\n", cmd); @@ -502,11 +494,6 @@ static int post_create_hook(void) int ret, fds[3] = {0, 0, 0}; char *cmd; - if (!conf.post_create_hook_given) { - create_pid = 0; - snapshot_creation_status = HS_READY; - return 0; - } cmd = make_message("%s %s/%s", conf.post_create_hook_arg, conf.dest_dir_arg, path_to_last_complete_snapshot); DSS_NOTICE_LOG("executing %s\n", cmd); @@ -526,10 +513,6 @@ static int post_remove_hook(void) assert(s); - if (!conf.post_remove_hook_given) { - snapshot_removal_status = HS_READY; - return 0; - } cmd = make_message("%s %s/%s", conf.post_remove_hook_arg, conf.dest_dir_arg, s->name); DSS_NOTICE_LOG("executing %s\n", cmd); @@ -657,10 +640,7 @@ static int handle_rm_exit(int status) snapshot_removal_status = HS_READY; return -E_BAD_EXIT_CODE; } - if (conf.post_remove_hook_given) - snapshot_removal_status = HS_SUCCESS; - else - snapshot_removal_status = HS_READY; + snapshot_removal_status = HS_SUCCESS; return 1; } @@ -1172,8 +1152,6 @@ static void exit_hook(int exit_code) char *argv[] = {conf.exit_hook_arg, dss_strerror(-exit_code), NULL}; pid_t pid; - if (!conf.exit_hook_given) - return; DSS_NOTICE_LOG("executing %s %s\n", argv[0], argv[1]); dss_exec(&pid, conf.exit_hook_arg, argv, fds); } diff --git a/dss.ggo b/dss.ggo index 09e345d..7934db3 100644 --- a/dss.ggo +++ b/dss.ggo @@ -268,6 +268,7 @@ option "pre-create-hook" r #~~~~~~~~~~~~~~~~~~~~~~~~~~ "Executed before snapshot creation" string typestr="command" +default = "/bin/true" optional details=" Execute this command before trying to create a new snapshot. @@ -286,6 +287,7 @@ option "post-create-hook" o #~~~~~~~~~~~~~~~~~~~~~~~~~~ "Executed after snapshot creation" string typestr="command" +default = "/bin/true" optional details=" Execute this after a snapshot has successfully been @@ -302,6 +304,7 @@ option "pre-remove-hook" - #~~~~~~~~~~~~~~~~~~~~~~~~~~ "Executed before snapshot removal" string typestr="command" +default = "/bin/true" optional details=" Execute this command before removing a snapshot. The full @@ -323,6 +326,7 @@ option "post-remove-hook" - #~~~~~~~~~~~~~~~~~~~~~~~~~~ "Executed after snapshot removal" string typestr="command" +default = "/bin/true" optional details=" Execute this after a snapshot has successfully been removed. As @@ -335,6 +339,7 @@ option "exit-hook" e #~~~~~~~~~~~~~~~~~~~ "Executed if run command exits" string typestr="command" +default = "/bin/true" optional details=" This hook is only used if the --run command was given which