Package io.quarkus.deployment.util
Class ExecUtil
java.lang.Object
io.quarkus.deployment.util.ExecUtil
-
Field Summary
Modifier and TypeFieldDescriptionstatic final Function<InputStream,
Runnable> static final Function<InputStream,
Runnable> static final Function<InputStream,
Runnable> -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
destroyProcess
(Process process) Kill the process, if still alive, kill it forciblystatic boolean
Execute the specified command from within the specified directory.static boolean
exec
(File directory, Function<InputStream, Runnable> outputFilterFunction, String command, String... args) Execute the specified command from within the specified directory.static boolean
Execute the specified command from within the current directory.static boolean
execWithDebugLogging
(File directory, String command, String... args) Execute the specified command from within the specified directory using debug logging.static boolean
execWithDebugLogging
(String command, String... args) Execute the specified command from within the current directory using debug logging.static boolean
execWithSystemLogging
(File directory, String command, String... args) Execute the specified command from within the specified directory using system logging.static boolean
execWithSystemLogging
(String command, String... args) Execute the specified command from within the current directory using system logging.static boolean
execWithTimeout
(File directory, Duration timeout, String command, String... args) Execute the specified command until the given timeout from within the specified directory.static boolean
execWithTimeout
(File directory, Function<InputStream, Runnable> outputFilterFunction, Duration timeout, String command, String... args) Execute the specified command until the given timeout from within the specified directory.static boolean
execWithTimeout
(Duration timeout, String command, String... args) Execute the specified command until the given timeout from within the current directory.static Process
startProcess
(File directory, String command, String... args) Start a process executing given command with arguments within the specified directory.
-
Field Details
-
INFO_LOGGING
-
DEBUG_LOGGING
-
SYSTEM_LOGGING
-
-
Constructor Details
-
ExecUtil
public ExecUtil()
-
-
Method Details
-
exec
Execute the specified command from within the current directory.- Parameters:
command
- The commandargs
- The command arguments- Returns:
- true if commands where executed successfully
-
execWithTimeout
Execute the specified command until the given timeout from within the current directory.- Parameters:
timeout
- The timeoutcommand
- The commandargs
- The command arguments- Returns:
- true if commands where executed successfully
-
exec
Execute the specified command from within the specified directory.- Parameters:
directory
- The directorycommand
- The commandargs
- The command arguments- Returns:
- true if commands where executed successfully
-
execWithTimeout
public static boolean execWithTimeout(File directory, Duration timeout, String command, String... args) Execute the specified command until the given timeout from within the specified directory.- Parameters:
directory
- The directorytimeout
- The timeoutcommand
- The commandargs
- The command arguments- Returns:
- true if commands where executed successfully
-
exec
public static boolean exec(File directory, Function<InputStream, Runnable> outputFilterFunction, String command, String... args) Execute the specified command from within the specified directory. The method allows specifying an output filter that processes the command output.- Parameters:
directory
- The directoryoutputFilterFunction
- AFunction
that gets anInputStream
and returns an outputFilter.command
- The commandargs
- The command arguments- Returns:
- true if commands where executed successfully
-
execWithTimeout
public static boolean execWithTimeout(File directory, Function<InputStream, Runnable> outputFilterFunction, Duration timeout, String command, String... args) Execute the specified command until the given timeout from within the specified directory. The method allows specifying an output filter that processes the command output.- Parameters:
directory
- The directoryoutputFilterFunction
- AFunction
that gets anInputStream
and returns an outputFilter.timeout
- The timeoutcommand
- The commandargs
- The command arguments- Returns:
- true if commands where executed successfully
-
execWithDebugLogging
Execute the specified command from within the current directory using debug logging.- Parameters:
command
- The commandargs
- The command arguments- Returns:
- true if commands where executed successfully
-
execWithDebugLogging
Execute the specified command from within the specified directory using debug logging.- Parameters:
directory
- The directorycommand
- The commandargs
- The command arguments- Returns:
- true if commands where executed successfully
-
execWithSystemLogging
Execute the specified command from within the current directory using system logging.- Parameters:
command
- The commandargs
- The command arguments- Returns:
- true if commands where executed successfully
-
execWithSystemLogging
Execute the specified command from within the specified directory using system logging.- Parameters:
directory
- The directorycommand
- The commandargs
- The command arguments- Returns:
- true if commands where executed successfully
-
startProcess
Start a process executing given command with arguments within the specified directory.- Parameters:
directory
- The directorycommand
- The commandargs
- The command arguments- Returns:
- the process
-
destroyProcess
Kill the process, if still alive, kill it forcibly- Parameters:
process
- the process to kill
-