summaryrefslogtreecommitdiff
path: root/src/biruda.c
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2014-11-16 17:10:59 +0100
committerAndreas Baumann <mail@andreasbaumann.cc>2014-11-16 17:10:59 +0100
commit3ecaed99580f378fbcb2598b2570c65d0f3ebc99 (patch)
tree3b972c7da2a3143727caf901b5ed4fa1f9099521 /src/biruda.c
parent842308eb541ecf78391addc0b6778f8f1daab1e4 (diff)
downloadbiruda-3ecaed99580f378fbcb2598b2570c65d0f3ebc99.tar.gz
biruda-3ecaed99580f378fbcb2598b2570c65d0f3ebc99.tar.bz2
..
Diffstat (limited to 'src/biruda.c')
-rw-r--r--src/biruda.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/biruda.c b/src/biruda.c
index 1ec8d5a..362ca50 100644
--- a/src/biruda.c
+++ b/src/biruda.c
@@ -202,8 +202,20 @@ static int create_coordinator( cfg_t *cfg )
{
cfg_t *master_cfg = cfg_getnsec( cfg, "coordinator", 0 );
char *control = cfg_getstr( master_cfg, "control" );
+
+ int ret = coordinator_init( control );
+
+ unsigned int nof_workers = cfg_size( cfg, "worker" );
+ if( nof_workers > 0 ) {
+ for( unsigned int i = 0; i < nof_workers; i++ ) {
+ cfg_t *worker_cfg = cfg_getnsec( cfg, "worker", i );
+ coordinator_add_worker( cfg_title( worker_cfg ),
+ (worker_execution_mode_t)cfg_getint( worker_cfg, "execution" ),
+ cfg_getstr( worker_cfg, "command" ) );
+ }
+ }
- return coordinator_init( control );
+ return ret;
}
#ifndef _WIN32