public Object getFieldValue(_Fields field) { switch (field) { case RESOURCE_JOB_MANAGER_ID: return getResourceJobManagerId(); case RESOURCE_JOB_MANAGER_TYPE: return getResourceJobManagerType(); case PUSH_MONITORING_ENDPOINT: return getPushMonitoringEndpoint(); case JOB_MANAGER_BIN_PATH: return getJobManagerBinPath(); case JOB_MANAGER_COMMANDS: return getJobManagerCommands(); case PARALLELISM_PREFIX: return getParallelismPrefix(); } throw new IllegalStateException(); }
public static ResourceJobManager getResourceJobManager(ResourceJobManagerResource manager) throws AppCatalogException { ResourceJobManager r = new ResourceJobManager(); r.setResourceJobManagerId(manager.getResourceJobManagerId()); r.setJobManagerBinPath(manager.getJobManagerBinPath()); r.setPushMonitoringEndpoint(manager.getPushMonitoringEndpoint()); r.setResourceJobManagerType(ResourceJobManagerType.valueOf(manager.getResourceJobManagerType())); r.setJobManagerCommands(new HashMap<JobManagerCommand, String>()); JobManagerCommandResource jmcr=new JobManagerCommandResource(); List<AppCatalogResource> jmcrList = jmcr.get(AppCatAbstractResource.JobManagerCommandConstants.RESOURCE_JOB_MANAGER_ID, manager.getResourceJobManagerId()); if (jmcrList != null && !jmcrList.isEmpty()){ for (AppCatalogResource rrr : jmcrList) { JobManagerCommandResource rr=(JobManagerCommandResource)rrr; r.getJobManagerCommands().put(JobManagerCommand.valueOf(rr.getCommandType()), rr.getCommand()); } } r.setParallelismPrefix(new HashMap<ApplicationParallelismType, String>()); ParallelismPrefixCommandResource prefixCommandResource=new ParallelismPrefixCommandResource(); List<AppCatalogResource> resourceList = prefixCommandResource.get(AppCatAbstractResource.JobManagerCommandConstants.RESOURCE_JOB_MANAGER_ID, manager.getResourceJobManagerId()); if (resourceList != null && !resourceList.isEmpty()){ for (AppCatalogResource rrr : resourceList) { ParallelismPrefixCommandResource rr=(ParallelismPrefixCommandResource)rrr; r.getParallelismPrefix().put(ApplicationParallelismType.valueOf(rr.getCommandType()), rr.getCommand()); } } return r; }
public static ResourceJobManager createResourceJobManager( ResourceJobManagerType resourceJobManagerType, String pushMonitoringEndpoint, String jobManagerBinPath, Map<JobManagerCommand, String> jobManagerCommands) { ResourceJobManager resourceJobManager = new ResourceJobManager(); resourceJobManager.setResourceJobManagerType(resourceJobManagerType); resourceJobManager.setPushMonitoringEndpoint(pushMonitoringEndpoint); resourceJobManager.setJobManagerBinPath(jobManagerBinPath); resourceJobManager.setJobManagerCommands(jobManagerCommands); return resourceJobManager; }
case RESOURCE_JOB_MANAGER_ID: if (value == null) { unsetResourceJobManagerId(); } else { setResourceJobManagerId((String)value); unsetResourceJobManagerType(); } else { setResourceJobManagerType((ResourceJobManagerType)value); unsetPushMonitoringEndpoint(); } else { setPushMonitoringEndpoint((String)value); unsetJobManagerBinPath(); } else { setJobManagerBinPath((String)value); unsetJobManagerCommands(); } else { setJobManagerCommands((Map<JobManagerCommand,String>)value); unsetParallelismPrefix(); } else { setParallelismPrefix((Map<org.apache.airavata.model.parallelism.ApplicationParallelismType,String>)value);
public static ResourceJobManager getResourceJobManager(ResourceJobManagerResource manager) throws AppCatalogException { ResourceJobManager r = new ResourceJobManager(); r.setResourceJobManagerId(manager.getResourceJobManagerId()); r.setJobManagerBinPath(manager.getJobManagerBinPath()); r.setPushMonitoringEndpoint(manager.getPushMonitoringEndpoint()); r.setResourceJobManagerType(ResourceJobManagerType.valueOf(manager.getResourceJobManagerType())); r.setJobManagerCommands(new HashMap<JobManagerCommand, String>()); JobManagerCommandResource jmcr=new JobManagerCommandResource(); List<Resource> jmcrList = jmcr.get(AbstractResource.JobManagerCommandConstants.RESOURCE_JOB_MANAGER_ID, manager.getResourceJobManagerId()); if (jmcrList != null && !jmcrList.isEmpty()){ for (Resource rrr : jmcrList) { JobManagerCommandResource rr=(JobManagerCommandResource)rrr; r.getJobManagerCommands().put(JobManagerCommand.valueOf(rr.getCommandType()), rr.getCommand()); } } return r; }
public static ResourceJobManagerResource getResourceJobManager(ResourceJobManager manager){ ResourceJobManagerResource r = new ResourceJobManagerResource(); r.setResourceJobManagerId(manager.getResourceJobManagerId()); r.setJobManagerBinPath(manager.getJobManagerBinPath()); r.setPushMonitoringEndpoint(manager.getPushMonitoringEndpoint()); r.setResourceJobManagerType(manager.getResourceJobManagerType().toString()); return r; }
String installedParentPath = null; if(jobExecutionContext.getResourceJobManager()!= null){ installedParentPath = jobExecutionContext.getResourceJobManager().getJobManagerBinPath(); String jobManager = sshJobSubmission.getResourceJobManager().getResourceJobManagerType().toString(); if (jobManager == null) { logger.error("No Job Manager is configured, so we are picking pbs as the default job manager");
@Override public void read(org.apache.thrift.protocol.TProtocol prot, LOCALSubmission struct) throws org.apache.thrift.TException { TTupleProtocol iprot = (TTupleProtocol) prot; struct.jobSubmissionInterfaceId = iprot.readString(); struct.setJobSubmissionInterfaceIdIsSet(true); struct.resourceJobManager = new ResourceJobManager(); struct.resourceJobManager.read(iprot); struct.setResourceJobManagerIsSet(true); struct.securityProtocol = org.apache.airavata.model.data.movement.SecurityProtocol.findByValue(iprot.readI32()); struct.setSecurityProtocolIsSet(true); } }
if(resourceJobManager.getResourceJobManagerType().equals(ResourceJobManagerType.LSF)){ jobDescriptor.setMaxWallTimeForLSF(String.valueOf(taskScheduling.getWallTimeLimit())); if (parallelism != null){ if (parallelism == ApplicationParallelismType.MPI || parallelism == ApplicationParallelismType.OPENMP || parallelism == ApplicationParallelismType.OPENMP_MPI){ Map<JobManagerCommand, String> jobManagerCommands = resourceJobManager.getJobManagerCommands(); if (jobManagerCommands != null && !jobManagerCommands.isEmpty()) { for (JobManagerCommand command : jobManagerCommands.keySet()) {
@Override public String addResourceJobManager(ResourceJobManager resourceJobManager) throws AppCatalogException { resourceJobManager.setResourceJobManagerId(AppCatalogUtils.getID("RJM")); ResourceJobManagerResource resource = AppCatalogThriftConversion.getResourceJobManager(resourceJobManager); resource.save(); Map<JobManagerCommand, String> jobManagerCommands = resourceJobManager.getJobManagerCommands(); if (jobManagerCommands!=null && jobManagerCommands.size() != 0) { for (JobManagerCommand commandType : jobManagerCommands.keySet()) { JobManagerCommandResource r = new JobManagerCommandResource(); r.setCommandType(commandType.toString()); r.setCommand(jobManagerCommands.get(commandType)); r.setResourceJobManagerId(resource.getResourceJobManagerId()); r.save(); } } Map<ApplicationParallelismType, String> parallelismPrefix = resourceJobManager.getParallelismPrefix(); if (parallelismPrefix!=null && parallelismPrefix.size() != 0) { for (ApplicationParallelismType commandType : parallelismPrefix.keySet()) { ParallelismPrefixCommandResource r = new ParallelismPrefixCommandResource(); r.setCommandType(commandType.toString()); r.setCommand(parallelismPrefix.get(commandType)); r.setResourceJobManagerId(resource.getResourceJobManagerId()); r.save(); } } return resource.getResourceJobManagerId(); }
public ResourceJobManager deepCopy() { return new ResourceJobManager(this); }
jobManagerCommandStringMap.put(JobManagerCommand.JOB_MONITORING, "squeue"); jobManagerCommandStringMap.put(JobManagerCommand.DELETION, "scancel"); resourceJobManager.setJobManagerCommands(jobManagerCommandStringMap); } else if (resourceJobManagerType == ResourceJobManagerType.PBS) { jobManagerCommandStringMap.put(JobManagerCommand.SUBMISSION, "qsub"); jobManagerCommandStringMap.put(JobManagerCommand.JOB_MONITORING, "qstat"); jobManagerCommandStringMap.put(JobManagerCommand.DELETION, "qdel"); resourceJobManager.setJobManagerCommands(jobManagerCommandStringMap);
String hostAddress = jobExecutionContext.getHostName(); ResourceJobManager resourceJobManager = jobExecutionContext.getResourceJobManager(); ResourceJobManagerType resourceJobManagerType = resourceJobManager.getResourceJobManagerType(); if (jobExecutionContext.getSecurityContext(hostAddress) == null) { GFACSSHUtils.addSecurityContext(jobExecutionContext);
@Override public String addResourceJobManager(ResourceJobManager resourceJobManager) throws AppCatalogException { resourceJobManager.setResourceJobManagerId(AppCatalogUtils.getID("RJM")); ResourceJobManagerResource resource = AppCatalogThriftConversion.getResourceJobManager(resourceJobManager); resource.save(); Map<JobManagerCommand, String> jobManagerCommands = resourceJobManager.getJobManagerCommands(); if (jobManagerCommands!=null && jobManagerCommands.size() != 0) { for (JobManagerCommand commandType : jobManagerCommands.keySet()) { JobManagerCommandResource r = new JobManagerCommandResource(); r.setCommandType(commandType.toString()); r.setCommand(jobManagerCommands.get(commandType)); r.setResourceJobManagerId(resource.getResourceJobManagerId()); r.save(); } } return resource.getResourceJobManagerId(); }
jobDescriptor.setMaxWallTime(String.valueOf(scheduling.getWallTimeLimit())); if (resourceJobManager != null) { if (resourceJobManager.getResourceJobManagerType().equals(ResourceJobManagerType.LSF)) { jobDescriptor.setMaxWallTimeForLSF(String.valueOf(scheduling.getWallTimeLimit())); Map<ApplicationParallelismType, String> parallelismPrefix = processContext.getResourceJobManager().getParallelismPrefix(); if (parallelism != null) { if (parallelism != ApplicationParallelismType.SERIAL) {
resource.setResourceJobManagerId(resourceJobManagerId); resource.save(); Map<JobManagerCommand, String> jobManagerCommands = updatedResourceJobManager.getJobManagerCommands(); if (jobManagerCommands!=null && jobManagerCommands.size() != 0) { for (JobManagerCommand commandType : jobManagerCommands.keySet()) { Map<ApplicationParallelismType, String> parallelismPrefix = updatedResourceJobManager.getParallelismPrefix(); if (parallelismPrefix!=null && parallelismPrefix.size() != 0) { for (ApplicationParallelismType commandType : parallelismPrefix.keySet()) {
@Override public void updateResourceJobManager(String resourceJobManagerId, ResourceJobManager updatedResourceJobManager) throws AppCatalogException { try { ResourceJobManagerResource resource = AppCatalogThriftConversion.getResourceJobManager(updatedResourceJobManager); resource.setResourceJobManagerId(resourceJobManagerId); resource.save(); Map<JobManagerCommand, String> jobManagerCommands = updatedResourceJobManager.getJobManagerCommands(); if (jobManagerCommands!=null && jobManagerCommands.size() != 0) { for (JobManagerCommand commandType : jobManagerCommands.keySet()) { JobManagerCommandResource r = new JobManagerCommandResource(); Map<String, String> ids = new HashMap<String, String>(); ids.put(AbstractResource.JobManagerCommandConstants.RESOURCE_JOB_MANAGER_ID, resourceJobManagerId); ids.put(AbstractResource.JobManagerCommandConstants.COMMAND_TYPE, commandType.toString()); JobManagerCommandResource existingCommand; if (r.isExists(ids)){ existingCommand = (JobManagerCommandResource)r.get(ids); }else { existingCommand = new JobManagerCommandResource(); } existingCommand.setCommandType(commandType.toString()); existingCommand.setCommand(jobManagerCommands.get(commandType)); existingCommand.setResourceJobManagerId(resource.getResourceJobManagerId()); existingCommand.save(); } } }catch (Exception e){ logger.error("Error while updating resource job manager..", e); throw new AppCatalogException(e); } }
@Override @SecurityCheck public String registerResourceJobManager(AuthzToken authzToken, ResourceJobManager resourceJobManager) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException { try { appCatalog = RegistryFactory.getAppCatalog(); return appCatalog.getComputeResource().addResourceJobManager(resourceJobManager); } catch (AppCatalogException e) { logger.error(resourceJobManager.getResourceJobManagerId(), "Error while adding resource job manager...", e); AiravataSystemException exception = new AiravataSystemException(); exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR); exception.setMessage("Error while adding resource job manager. More info : " + e.getMessage()); throw exception; } }
case RESOURCE_JOB_MANAGER_ID: if (value == null) { unsetResourceJobManagerId(); } else { setResourceJobManagerId((String)value); unsetResourceJobManagerType(); } else { setResourceJobManagerType((ResourceJobManagerType)value); unsetPushMonitoringEndpoint(); } else { setPushMonitoringEndpoint((String)value); unsetJobManagerBinPath(); } else { setJobManagerBinPath((String)value); unsetJobManagerCommands(); } else { setJobManagerCommands((Map<JobManagerCommand,String>)value); unsetParallelismPrefix(); } else { setParallelismPrefix((Map<org.apache.airavata.model.parallelism.ApplicationParallelismType,String>)value);
public static ResourceJobManager createResourceJobManager( ResourceJobManagerType resourceJobManagerType, String jobManagerBinPath, Map<JobManagerCommand, String> jobManagerCommands, String pushMonitoringEndpoint) { ResourceJobManager resourceJobManager=new ResourceJobManager();; resourceJobManager.setResourceJobManagerType(resourceJobManagerType); resourceJobManager.setJobManagerBinPath(jobManagerBinPath); resourceJobManager.setJobManagerCommands(jobManagerCommands); resourceJobManager.setPushMonitoringEndpoint(pushMonitoringEndpoint); return resourceJobManager; }