import worker code
This commit is contained in:
parent
61654a06e8
commit
8831040043
64 changed files with 20853 additions and 1 deletions
62
src/worker/include/controller_connector.h
Normal file
62
src/worker/include/controller_connector.h
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
#ifndef CONTROL_CONNECTOR_H
|
||||
#define CONTROL_CONNECTOR_H
|
||||
#include "thread_pool.h"
|
||||
#include "xcecd_utils.h"
|
||||
#include "client.h"
|
||||
#include "xcectx.h"
|
||||
#include "controller.capnp.h"
|
||||
|
||||
typedef struct {
|
||||
xce_client_config_t* conf;
|
||||
endpoint_t ep;
|
||||
xce_ctx_t ctx;
|
||||
} api_ctx_t;
|
||||
|
||||
typedef struct controller_connector_ctx_s {
|
||||
void *thread_pool;
|
||||
void *process_manager;
|
||||
char *remote_host;
|
||||
char *virtual_name;
|
||||
void **worker_list;
|
||||
int remote_port;
|
||||
int join_interval;
|
||||
bool running;
|
||||
} controller_connector_ctx_t;
|
||||
extern controller_connector_ctx_t *cc_ctx;
|
||||
|
||||
typedef struct {
|
||||
int (*job_finished)(xcecd_job_t *job);
|
||||
int (*job_stopped)(uint64_t jobid);
|
||||
int (*job_resumed)(uint64_t jobid);
|
||||
int (*job_start_error)(uint64_t jobid);
|
||||
int (*job_status_error)(uint64_t jobid);
|
||||
int (*job_ckpted)(uint64_t jobid, int status, const char *info);
|
||||
int (*job_remote_start)(uint64_t jobid, const char *hostname, const char *command);
|
||||
bool (*reply_startjob)(xcecd_job_t *job);
|
||||
} cc_callbacks_t;
|
||||
|
||||
extern void xcecd_process_command(void* arg);
|
||||
|
||||
int start_controller_connector_thread(task_func_t function, void* arg);
|
||||
int xcecd_join_cluster(hostattrs_t* attrs);
|
||||
bool controller_connector_start(void);
|
||||
bool xcecd_reply_startjob(xcecd_job_t *job);
|
||||
int xcecd_job_finished(xcecd_job_t *job);
|
||||
int xcecd_job_stopped(uint64_t jobid);
|
||||
int xcecd_job_resumed(uint64_t jobid);
|
||||
int checking_connection();
|
||||
int xcecd_job_start_error(uint64_t jobid);
|
||||
int xcecd_job_status_error(uint64_t jobid);
|
||||
int xcecd_job_ckpted(uint64_t jobid, int status, const char *info);
|
||||
int xcecd_job_remote_start(uint64_t jobid,
|
||||
const char *hostname,
|
||||
const char *command);
|
||||
const cc_callbacks_t* get_cc_callbacks(void);
|
||||
int xcecd_task_fail(uint64_t jobid, int clientidx,
|
||||
int taskidx, int code);
|
||||
int xcecd_jobpost_done(uint64_t jobid);
|
||||
int xcecd_notify_job_fail(uint64_t jobid,
|
||||
int stage,
|
||||
int code);
|
||||
|
||||
#endif // CONTROL_CONNECTOR_H
|
||||
Loading…
Add table
Add a link
Reference in a new issue