Skip to content
Snippets Groups Projects
Commit 8a60ce56 authored by Eric Vidal's avatar Eric Vidal :speech_balloon:
Browse files

Do not initiate trees services. This is done by start command.

rename up/down subcommand to start/stop.
parent 172933cb
No related branches found
No related tags found
No related merge requests found
......@@ -292,7 +292,7 @@ char const *help_signal =
" -r : restart service by sending it a signal(default SIGTERM)\n"
;
char const *usage_tree_wrapper = "66 tree [ -h ] create|admin|remove|enable|disable|current|status|resolve|up|down|unsupervise [<command options>] tree" ;
char const *usage_tree_wrapper = "66 tree [ -h ] create|admin|remove|enable|disable|current|status|resolve|start|stop|unsupervise [<command options>] tree" ;
char const *help_tree_wrapper =
"\nmain sub tools to manages trees\n"
......@@ -309,8 +309,8 @@ char const *help_tree_wrapper =
" current: mark tree as current\n"
" status: display information about tree\n"
" resolve: display resolve file of tree\n"
" up: bring up all services from tree\n"
" down: bring down all services from tree\n"
" start: bring up all services from tree\n"
" stop: bring down all services from tree\n"
" unsupervise: bring down and unsupervise all services from tree\n"
"\n"
"Use '66 tree <command> -h' to see command options\n"
......@@ -428,9 +428,9 @@ char const *help_tree_status =
"If no tree name are provided, it display all trees from the system\n"
;
char const *usage_tree_up = "66 tree up [ -h ] [ -f ] tree" ;
char const *usage_tree_start = "66 tree start [ -h ] [ -f ] tree" ;
char const *help_tree_up =
char const *help_tree_start =
"\nbring up all enabled services of tree\n"
"\n"
"options:\n"
......@@ -440,9 +440,9 @@ char const *help_tree_up =
"If no tree name are provided, it bring up all enabled trees from the system\n"
;
char const *usage_tree_down = "66 tree down [ -h ] [ -f ] tree" ;
char const *usage_tree_stop = "66 tree stop [ -h ] [ -f ] tree" ;
char const *help_tree_down =
char const *help_tree_stop =
"\nbring down all services of tree\n"
"\n"
"options:\n"
......
......@@ -45,6 +45,7 @@
#include <66/svc.h>//scandir_ok
#include <66/utils.h>
#include <66/graph.h>
#include <66/state.h>
#include <s6/ftrigr.h>
#include <s6/ftrigw.h>
......@@ -144,8 +145,8 @@ static inline unsigned int parse_signal (char const *signal, ssexec_t *info)
log_flow() ;
static char const *const signal_table[] = {
"up",
"down",
"start",
"stop",
"unsupervise",
0
} ;
......@@ -524,31 +525,6 @@ static int doit(char const *treename, ssexec_t *sinfo, unsigned int what, tain *
log_warn_return(LOG_EXIT_ZERO, "You're not allowed to use the tree: ", info.treename.s) ;
}
if (!tree_isinitialized(info.base.s, info.treename.s) && !what) {
if (!what) {
int nargc = 3 ;
char const *prog = PROG ;
char const *newargv[nargc] ;
unsigned int m = 0 ;
newargv[m++] = "signal" ;
newargv[m++] = info.treename.s ;
newargv[m++] = 0 ;
PROG = "init" ;
if (ssexec_init(nargc, newargv, &info))
log_warnu_return(LOG_EXIT_ZERO, "initiate services of tree: ", info.treename.s) ;
PROG = prog ;
} else {
log_warn ("uninitialized tree: ", info.treename.s) ;
goto end ;
}
}
{
stralloc sa = STRALLOC_ZERO ;
......@@ -571,8 +547,8 @@ static int doit(char const *treename, ssexec_t *sinfo, unsigned int what, tain *
stralloc_free(&sa) ;
}
end:
e = 0 ;
e = 0 ;
err:
ssexec_free(&info) ;
return e ;
......@@ -746,7 +722,7 @@ static int async(pidtree_t *apidt, unsigned int i, unsigned int what, ssexec_t *
} else {
/** do not notify here, the handle will make it for us */
log_trace("skipping service: ", name, " -- already ", what ? "down" : "up") ;
log_trace("skipping tree: ", name, " -- already ", what ? "down" : "up") ;
}
......@@ -790,7 +766,7 @@ static int waitit(pidtree_t *apidt, unsigned int what, graph_t *graph, tain *dea
}
for (pos = 0 ; pos < napid ; pos++) {
for (pos = 0 ; pos < napid ; pos++) {
pid = fork() ;
......@@ -903,7 +879,7 @@ int ssexec_tree_signal(int argc, char const *const *argv, ssexec_t *info)
if ((svc_scandir_ok(info->scandir.s)) <= 0)
log_die(LOG_EXIT_SYS,"scandir: ", info->scandir.s," is not running") ;
graph_build_tree(&graph, info->base.s, !info->treename.len ? E_RESOLVE_TREE_MASTER_ENABLED : E_RESOLVE_TREE_CONTENTS) ;
graph_build_tree(&graph, info->base.s, !info->treename.len ? E_RESOLVE_TREE_MASTER_ENABLED : E_RESOLVE_TREE_MASTER_CONTENTS) ;
if (!graph.mlen)
log_die(LOG_EXIT_USER, "trees selection is not created -- creates at least one tree") ;
......
......@@ -139,19 +139,19 @@ int ssexec_tree_wrapper(int argc, char const *const *argv, ssexec_t *info)
argc-- ;
argv++ ;
} else if (!strcmp(argv[1], "up")) {
} else if (!strcmp(argv[1], "start")) {
info->prog = PROG ;
info->help = help_tree_up ;
info->usage = usage_tree_up ;
info->help = help_tree_start ;
info->usage = usage_tree_start ;
func = &ssexec_tree_signal ;
ctl++ ;
} else if (!strcmp(argv[1], "down")) {
} else if (!strcmp(argv[1], "stop")) {
info->prog = PROG ;
info->help = help_tree_down ;
info->usage = usage_tree_down ;
info->help = help_tree_stop ;
info->usage = usage_tree_stop ;
func = &ssexec_tree_signal ;
ctl++ ;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment