@Override
protected int runWithJobId(final Namespace options, final HeliosClient client,
final PrintStream out, final boolean json, final JobId jobId,
final BufferedReader stdin)
throws ExecutionException, InterruptedException {
final Map<JobId, Job> jobs = client.jobs(jobId.toString()).get();
if (jobs.size() == 0) {
out.printf("Unknown job: %s%n", jobId);
return 1;
}
final Job job = Iterables.getOnlyElement(jobs.values());
if (json) {
out.println(Json.asPrettyStringUnchecked(job));
} else {
out.printf("Id: %s%n", job.getId());
out.printf("Image: %s%n", job.getImage());
out.printf("Hostname: %s%n", job.getHostname());
out.printf("Command: %s%n", quote(job.getCommand()));
printMap(out, "Env: ", QUOTE, job.getEnv());
out.printf("Health check: %s%n", formatHealthCheck(job.getHealthCheck()));
out.printf("Grace period (seconds): %s%n", job.getGracePeriod());
printMap(out, "Ports: ", FORMAT_PORTMAPPING, job.getPorts());
printMap(out, "Reg: ", FORMAT_SERVICE_PORTS, job.getRegistration());
out.printf("Security options: %s%n", job.getSecurityOpt());
out.printf("Network mode: %s%n", job.getNetworkMode());
out.printf("Token: %s%n", job.getToken());
printVolumes(out, job.getVolumes());
}
return 0;
}