// Execute command
System.out.println("Target PBS file path: " + workingDirectory);
System.out.println("Local PBS File path: " + pbsFilePath);
String workingDirectory = File.separator + "home" + File.separator + "ogce" + File.separator + "gsissh";
JobDescriptor jobDescriptor = new JobDescriptor();
jobDescriptor.setWorkingDirectory(workingDirectory);
jobDescriptor.setShellName("/bin/bash");
jobDescriptor.setJobName("GSI_SSH_SLEEP_JOB");
jobDescriptor.setExecutablePath("/bin/sleep");
jobDescriptor.setAllEnvExport(true);
jobDescriptor.setMailOptions("n");
jobDescriptor.setStandardOutFile(workingDirectory + File.separator + "application.out");
jobDescriptor.setStandardErrorFile(workingDirectory + File.separator + "application.err");
jobDescriptor.setNodes(1);
jobDescriptor.setProcessesPerNode(1);
jobDescriptor.setMaxWallTime("60");
jobDescriptor.setQueueName("normal");
jobDescriptor.setAcountString("sds128");
List<String> inputs = new ArrayList<String>();
inputs.add("1000");
jobDescriptor.setInputValues(inputs);
System.out.println(jobDescriptor.toXML());
String jobID = pbsCluster.submitBatchJob(jobDescriptor);
System.out.println("Job submitted to successfully : " + jobID);
JobDescriptor jobById = pbsCluster.getJobDescriptorById(jobID);
if (!CommonUtils.isJobFinished(jobById)) {
JobDescriptor job = pbsCluster.cancelJob(jobID);
if (CommonUtils.isJobFinished(job)) {
Assert.assertTrue(true);
} else {
Assert.assertTrue(true);
}