if (this.needToCopyImage()
&& (!copyImage(listener, moduleRoot) || !copyChanges(listener, moduleRoot))) {
return false;
}
ArgumentListBuilder args = new ArgumentListBuilder();
args.add(getDescriptor().getVm());
// add parameters
String trimmed = Util.fixEmptyAndTrim(getDescriptor().getParameters());
if (trimmed != null) {
for (String each : trimmed.split(" ")) {
if (each != null && !each.isEmpty()) {
args.add(each);
}
}
}
// add image
args.add(getInputImage());
Map<String, String> env = build.getEnvironment(listener);
File script = this.getStartUpScript();
try {
args.add(script);
int r = launcher.launch().cmds(args).envs(env).stdout(listener).pwd(moduleRoot).join();
return r == 0;
} catch (IOException e) {
Util.displayIOException(e,listener);