use of org.gridlab.gat.resources.ResourceBroker in project compss by bsc-wdc.
the class FileInputStreamAdaptorTest method run.
private void run(String host, String script) {
Preferences preferences = new Preferences();
preferences.put("resourcebroker.adaptor.name", "commandlinessh,sshtrilead,local");
preferences.put("file.adaptor.name", "commandlinessh,sshtrilead,local");
SoftwareDescription sd = new SoftwareDescription();
sd.setExecutable("/bin/bash");
sd.setArguments(script);
try {
sd.addPreStagedFile(GAT.createFile(preferences, "tests" + java.io.File.separator + "src" + java.io.File.separator + "benchmarks" + java.io.File.separator + script));
} catch (GATObjectCreationException e) {
e.printStackTrace();
System.exit(1);
}
ResourceBroker broker = null;
try {
broker = GAT.createResourceBroker(preferences, new URI("any://" + host));
} catch (GATObjectCreationException e) {
e.printStackTrace();
System.exit(1);
} catch (URISyntaxException e) {
e.printStackTrace();
System.exit(1);
}
Job job = null;
try {
job = broker.submitJob(new JobDescription(sd));
} catch (GATInvocationException e) {
e.printStackTrace();
System.exit(1);
}
while (job.getState() != Job.JobState.STOPPED && job.getState() != Job.JobState.SUBMISSION_ERROR) {
try {
Thread.sleep(500);
} catch (InterruptedException e) {
// ignored
}
}
}
use of org.gridlab.gat.resources.ResourceBroker in project compss by bsc-wdc.
the class ResourceBrokerAdaptorTest method submitJobEasy.
private AdaptorTestResultEntry submitJobEasy(GATContext gatContext, Preferences preferences, String host) {
SoftwareDescription sd = new SoftwareDescription();
sd.setExecutable("/bin/echo");
sd.setArguments("test", "1", "2", "3");
Map<String, Object> attributes = new HashMap<String, Object>();
sd.setAttributes(attributes);
JobDescription jd = new JobDescription(sd);
ResourceBroker broker;
try {
broker = GAT.createResourceBroker(gatContext, preferences, new URI(host));
} catch (GATObjectCreationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
} catch (URISyntaxException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
long start = System.currentTimeMillis();
try {
broker.submitJob(jd, this, "job.status");
} catch (GATInvocationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
waitForJob();
long stop = System.currentTimeMillis();
return new AdaptorTestResultEntry(true, (stop - start), null);
}
use of org.gridlab.gat.resources.ResourceBroker in project compss by bsc-wdc.
the class ResourceBrokerAdaptorTest method submitJobPreStage.
private AdaptorTestResultEntry submitJobPreStage(GATContext gatContext, Preferences preferences, String host) {
SoftwareDescription sd = new SoftwareDescription();
sd.setExecutable("/bin/ls");
sd.setArguments("floep");
java.io.File floep = new java.io.File("floep");
if (!floep.exists()) {
try {
floep.createNewFile();
} catch (IOException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
floep.deleteOnExit();
}
java.io.File tmp = new java.io.File("tmp");
if (!tmp.exists()) {
tmp.mkdir();
tmp.deleteOnExit();
}
try {
sd.addPreStagedFile(GAT.createFile(gatContext, preferences, "floep"));
sd.addPreStagedFile(GAT.createFile(gatContext, preferences, "tmp"));
sd.setStdout(GAT.createFile(gatContext, preferences, "stdout"));
} catch (GATObjectCreationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
JobDescription jd = new JobDescription(sd);
ResourceBroker broker;
try {
broker = GAT.createResourceBroker(gatContext, preferences, new URI(host));
} catch (GATObjectCreationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
} catch (URISyntaxException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
long start = System.currentTimeMillis();
Job job;
try {
job = broker.submitJob(jd, this, "job.status");
} catch (GATInvocationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
waitForJob();
try {
Map<String, Object> info = job.getInfo();
Throwable ex = (Throwable) info.get("poststage.exception");
if (ex != null) {
return new AdaptorTestResultEntry(false, 0L, ex);
}
} catch (GATInvocationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
long stop = System.currentTimeMillis();
String result;
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(new java.io.FileInputStream("stdout")));
result = reader.readLine();
reader.close();
} catch (Exception e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
return new AdaptorTestResultEntry(result != null, (stop - start), null);
}
use of org.gridlab.gat.resources.ResourceBroker in project compss by bsc-wdc.
the class ResourceBrokerAdaptorTest method submitJobStdout.
private AdaptorTestResultEntry submitJobStdout(GATContext gatContext, Preferences preferences, String host) {
SoftwareDescription sd = new SoftwareDescription();
sd.setExecutable("/bin/echo");
// Arguments modified to test against expansion of shell meta characters --Ceriel
sd.setArguments("test", "1", "2", "'*");
try {
sd.setStdout(GAT.createFile(gatContext, preferences, "stdout"));
} catch (GATObjectCreationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
JobDescription jd = new JobDescription(sd);
ResourceBroker broker;
try {
broker = GAT.createResourceBroker(gatContext, preferences, new URI(host));
} catch (GATObjectCreationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
} catch (URISyntaxException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
long start = System.currentTimeMillis();
Job job;
try {
job = broker.submitJob(jd, this, "job.status");
} catch (GATInvocationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
waitForJob();
try {
Map<String, Object> info = job.getInfo();
Throwable ex = (Throwable) info.get("poststage.exception");
if (ex != null) {
return new AdaptorTestResultEntry(false, 0L, ex);
}
} catch (GATInvocationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
long stop = System.currentTimeMillis();
String result;
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(new java.io.FileInputStream("stdout")));
result = reader.readLine();
reader.close();
} catch (Exception e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
return new AdaptorTestResultEntry("test 1 2 '*".equals(result), (stop - start), null);
}
use of org.gridlab.gat.resources.ResourceBroker in project compss by bsc-wdc.
the class ResourceBrokerAdaptorTest method submitJobPostStage.
private AdaptorTestResultEntry submitJobPostStage(GATContext gatContext, Preferences preferences, String host) {
SoftwareDescription sd = new SoftwareDescription();
sd.setExecutable("/bin/touch");
sd.setArguments("flap.txt");
try {
sd.addPostStagedFile(GAT.createFile(gatContext, preferences, "flap.txt"));
} catch (GATObjectCreationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
JobDescription jd = new JobDescription(sd);
ResourceBroker broker;
try {
broker = GAT.createResourceBroker(gatContext, preferences, new URI(host));
} catch (GATObjectCreationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
} catch (URISyntaxException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
long start = System.currentTimeMillis();
Job job;
try {
job = broker.submitJob(jd, this, "job.status");
} catch (GATInvocationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
waitForJob();
try {
Map<String, Object> info = job.getInfo();
Throwable ex = (Throwable) info.get("poststage.exception");
if (ex != null) {
return new AdaptorTestResultEntry(false, 0L, ex);
}
} catch (GATInvocationException e) {
return new AdaptorTestResultEntry(false, 0L, e);
}
long stop = System.currentTimeMillis();
return new AdaptorTestResultEntry(new java.io.File("flap.txt").exists(), (stop - start), null);
}
Aggregations