job.getExpires() == null ? "never" : DATE_FORMATTER.format(job.getExpires())); 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()); out.printf("Time to wait before kill (seconds): %s%n", job.getSecondsToWaitBeforeKill()); out.printf("Network mode: %s%n", job.getNetworkMode()); out.printf("Token: %s%n", job.getToken()); printVolumes(out, job.getVolumes()); out.printf("Add capabilities: %s%n", Joiner.on(", ").join(job.getAddCapabilities())); out.printf("Drop capabilities: %s%n", Joiner.on(", ").join(job.getDropCapabilities())); out.printf("Runtime: %s%n", job.getRuntime()); out.printf("Rollout options (null options will fallback to defaults at " + "rolling-update time): %s%n", formatRolloutOptions(job.getRolloutOptions()));
@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; }
private static List<String> quote(final List<String> ss) { final List<String> output = Lists.newArrayList(); for (final String s : ss) { output.add(quote(s)); } return output; } }
new JobInspectCommand(parse("inspect")); new JobDeployCommand(parse("deploy")); new JobUndeployCommand(parse("undeploy"));
private static List<String> quote(final List<String> ss) { final List<String> output = Lists.newArrayList(); for (String s : ss) { output.add(quote(s)); } return output; } }
new JobInspectCommand(p("inspect")); new JobDeployCommand(p("deploy")); new JobUndeployCommand(p("undeploy"));