com.heroku.sdk.deploy.util.HerokuCli Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of heroku-deploy Show documentation
Show all versions of heroku-deploy Show documentation
Library for deploying Java applications to Heroku
package com.heroku.sdk.deploy.util;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.file.Path;
import java.util.Arrays;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
public class HerokuCli {
public static Optional runAuthToken(Path workingDirectory) throws IOException {
return Optional.ofNullable(runRaw(workingDirectory,"auth:token").get(0));
}
private static List runRaw(Path workingDirectory, String... command) throws IOException {
List fullCommand = Arrays.asList(command);
fullCommand.add(0, "heroku");
ProcessBuilder processBuilder = new ProcessBuilder(fullCommand);
processBuilder.directory(workingDirectory.toFile());
Process process = processBuilder.start();
try (BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()))) {
return bufferedReader.lines().collect(Collectors.toList());
}
}
}