From: Jiří Filipovič Date: Thu, 6 Sep 2012 08:56:53 +0000 (+0000) Subject: - job_reg allows to explicitly set job's owner X-Git-Tag: glite-lb-client_R_5_2_6_1~6 X-Git-Url: http://scientific.zcu.cz/git/?a=commitdiff_plain;h=4690287564dda0725b105594c40a80896a2d1998;p=jra1mw.git - job_reg allows to explicitly set job's owner - added new sources: CloudManager, VMManager, VMSystem - removed sources from VMRunning and VMShutdown events --- diff --git a/org.glite.lb.client/examples/job_reg.c b/org.glite.lb.client/examples/job_reg.c index 2f87adf..106f2f9 100644 --- a/org.glite.lb.client/examples/job_reg.c +++ b/org.glite.lb.client/examples/job_reg.c @@ -35,7 +35,7 @@ extern int opterr,optind; static void usage(char *me) { - fprintf(stderr,"usage: %s [-m bkserver] [-x|-X non-default_sock_path] [-j dg_jobid] [-s source_id] [-n num_subjobs [-S][-C]] [-P] [-l jdl_file] [-e seed] [-E]\n", me); + fprintf(stderr,"usage: %s [-m bkserver] [-x|-X non-default_sock_path] [-j dg_jobid] [-s source_id] [-o owner] [-n num_subjobs [-S][-C]] [-P] [-l jdl_file] [-e seed] [-E]\n", me); } int main(int argc, char *argv[]) @@ -55,7 +55,7 @@ int main(int argc, char *argv[]) opterr = 0; do { - switch (getopt(argc,argv,"xX:s:j:m:n:SCl:e:PcvE")) { + switch (getopt(argc,argv,"xX:s:j:m:o:n:SCl:e:PcvE")) { case 'x': lbproxy = 1; break; case 'X': lbproxy = 1; edg_wll_SetParam(ctx, EDG_WLL_PARAM_LBPROXY_STORE_SOCK, optarg); @@ -63,6 +63,7 @@ int main(int argc, char *argv[]) case 's': src = (char *) strdup(optarg); break; case 'j': job = (char *) strdup(optarg); break; case 'm': server = strdup(optarg); break; + case 'o': edg_wll_SetParam(ctx, EDG_WLL_PARAM_LBPROXY_USER, optarg); break; case 'n': num_subjobs = atoi(optarg); break; case 'S': reg_subjobs = 1; break; case 'C': collection = 1; break; diff --git a/org.glite.lb.client/src/EventAttrNames.pl b/org.glite.lb.client/src/EventAttrNames.pl index 76ba113..f6c4fcf 100644 --- a/org.glite.lb.client/src/EventAttrNames.pl +++ b/org.glite.lb.client/src/EventAttrNames.pl @@ -124,6 +124,5 @@ REQUIRE HOSTNAME ID - VM_SOURCE MANAGER /; diff --git a/org.glite.lb.common/interface/context.h b/org.glite.lb.common/interface/context.h index 94dbf5d..d90f7bf 100644 --- a/org.glite.lb.common/interface/context.h +++ b/org.glite.lb.common/interface/context.h @@ -104,6 +104,9 @@ typedef enum _edg_wll_Source { EDG_WLL_SOURCE_PBS_SMOM, EDG_WLL_SOURCE_PBS_MOM, EDG_WLL_SOURCE_PBS_SCHEDULER, + EDG_WLL_SOURCE_CLOUD_MANAGER, + EDG_WLL_SOURCE_VM_MANAGER, + EDG_WLL_SOURCE_VM_SYSTEM, EDG_WLL_SOURCE__LAST /* marker, for internal use only */ } edg_wll_Source; diff --git a/org.glite.lb.common/src/context.c b/org.glite.lb.common/src/context.c index 4a02168..1c68b24 100644 --- a/org.glite.lb.common/src/context.c +++ b/org.glite.lb.common/src/context.c @@ -360,7 +360,10 @@ static const char* const srcNames[] = { "PBSServer", "PBSMomSuperior", "PBSMom", - "PBSScheduler" + "PBSScheduler", + "CloudManager", + "VMManager", + "VMSystem" }; edg_wll_Source edg_wll_StringToSource(const char *name) diff --git a/org.glite.lb.server/src/ws_typemap.h b/org.glite.lb.server/src/ws_typemap.h index 65e4712..5701e2f 100644 --- a/org.glite.lb.server/src/ws_typemap.h +++ b/org.glite.lb.server/src/ws_typemap.h @@ -93,6 +93,9 @@ limitations under the License. #define PBSsMom lbt__eventSource__PBSsMom #define PBSMom lbt__eventSource__PBSMom #define PBSScheduler lbt__eventSource__PBSScheduler +#define CloudManager lbt__eventSource__CloudManager +#define VMManager lbt__eventSource__VMManager +#define VMSystem lbt__eventSource__VMSystem #endif diff --git a/org.glite.lb.server/src/ws_typeref.c.T b/org.glite.lb.server/src/ws_typeref.c.T index cdf8b2c..561b55e 100644 --- a/org.glite.lb.server/src/ws_typeref.c.T +++ b/org.glite.lb.server/src/ws_typeref.c.T @@ -871,6 +871,9 @@ static void edg_wll_SoapToSource(enum lbt__eventSource in, edg_wll_Source *out) case PBSsMom: *out = EDG_WLL_SOURCE_PBS_SMOM; break; case PBSMom: *out = EDG_WLL_SOURCE_PBS_MOM; break; case PBSScheduler: *out = EDG_WLL_SOURCE_PBS_SCHEDULER; break; + case CloudManager: *out = EDG_WLL_SOURCE_CLOUD_MANAGER; break; + case VMManager: *out = EDG_WLL_SOURCE_VM_MANAGER; break; + case VMSystem: *out = EDG_WLL_SOURCE_VM_SYSTEM; break; default: assert(0); break; } } @@ -1002,6 +1005,10 @@ static void edg_wll_SourceToSoap(edg_wll_Source in, enum lbt__eventSource *out) case EDG_WLL_SOURCE_PBS_SMOM: *out = PBSsMom; break; case EDG_WLL_SOURCE_PBS_MOM: *out = PBSMom; break; case EDG_WLL_SOURCE_PBS_SCHEDULER: *out = PBSScheduler; break; + case EDG_WLL_SOURCE_CLOUD_MANAGER: *out = CloudManager; break; + case EDG_WLL_SOURCE_VM_MANAGER: *out = VMManager; break; + case EDG_WLL_SOURCE_VM_SYSTEM: *out = VMSystem; break; + case EDG_WLL_SOURCE_NONE: case EDG_WLL_SOURCE__LAST: default: diff --git a/org.glite.lb.state-machine/src/process_event_virtual_machine.c b/org.glite.lb.state-machine/src/process_event_virtual_machine.c index 27beb0c..461e8fd 100644 --- a/org.glite.lb.state-machine/src/process_event_virtual_machine.c +++ b/org.glite.lb.state-machine/src/process_event_virtual_machine.c @@ -92,12 +92,13 @@ int processEvent_VirtualMachine(intJobStat *js, edg_wll_Event *e, int ev_seq, in break; case EDG_WLL_EVENT_VMRUNNING: if (USABLE(res)) { - switch( e->vMRunning.vm_source){ - case EDG_WLL_VMRUNNING_CM: - case EDG_WLL_VMRUNNING_VMM: - js->pub.vm_state = EDG_WLL_STAT_VM_RUNNING; + switch( e->any.source){ + case EDG_WLL_SOURCE_CLOUD_MANAGER: + case EDG_WLL_SOURCE_VM_MANAGER: + if (js->pub.vm_state != EDG_WLL_STAT_VM_REALLY_RUNNING) + js->pub.vm_state = EDG_WLL_STAT_VM_RUNNING; break; - case EDG_WLL_VMRUNNING_MACHINE: + case EDG_WLL_SOURCE_VM_SYSTEM: js->pub.vm_state = EDG_WLL_STAT_VM_REALLY_RUNNING; break; default: @@ -108,14 +109,14 @@ int processEvent_VirtualMachine(intJobStat *js, edg_wll_Event *e, int ev_seq, in break; case EDG_WLL_EVENT_VMSHUTDOWN: if (USABLE(res)) { - switch (e->vMShutdown.vm_source){ - case EDG_WLL_VMSHUTDOWN_CM: + switch (e->any.source){ + case EDG_WLL_SOURCE_CLOUD_MANAGER: js->pub.vm_state = EDG_WLL_STAT_VM_SHUTDOWN; break; - case EDG_WLL_VMSHUTDOWN_VMM: + case EDG_WLL_SOURCE_VM_MANAGER: js->pub.vm_system_halting = 1; break; - case EDG_WLL_VMSHUTDOWN_MACHINE: + case EDG_WLL_SOURCE_VM_SYSTEM: js->pub.vm_system_halting = 1; if (js->pub.vm_state == EDG_WLL_STAT_VM_REALLY_RUNNING) js->pub.vm_state = EDG_WLL_STAT_VM_RUNNING; diff --git a/org.glite.lb.types/events.T b/org.glite.lb.types/events.T index 67073e4..cafdbda 100644 --- a/org.glite.lb.types/events.T +++ b/org.glite.lb.types/events.T @@ -561,16 +561,8 @@ string image machine image @type VMRunning VM is running - int vm_source - _code_ CM cloud manager - _code_ VMM VM manager - _code_ MACHINE system @type VMShutdown - int vm_source - _code_ CM cloud manager - _code_ VMM VM manager - _code_ MACHINE system string usage _optional_ diff --git a/org.glite.lb.ws-interface/src/LBTypes.xml.T b/org.glite.lb.ws-interface/src/LBTypes.xml.T index b42da9e..3750458 100644 --- a/org.glite.lb.ws-interface/src/LBTypes.xml.T +++ b/org.glite.lb.ws-interface/src/LBTypes.xml.T @@ -224,6 +224,9 @@ + + +