mirror of
https://github.com/nicoverbruggen/phpmon.git
synced 2025-08-07 20:10:08 +02:00
🔧 Extra CLI mode (--cli)
This commit is contained in:
@ -89,6 +89,10 @@
|
|||||||
argument = "--v"
|
argument = "--v"
|
||||||
isEnabled = "NO">
|
isEnabled = "NO">
|
||||||
</CommandLineArgument>
|
</CommandLineArgument>
|
||||||
|
<CommandLineArgument
|
||||||
|
argument = "--cli"
|
||||||
|
isEnabled = "YES">
|
||||||
|
</CommandLineArgument>
|
||||||
<CommandLineArgument
|
<CommandLineArgument
|
||||||
argument = "--configuration:~/.phpmon_fconf_working.json"
|
argument = "--configuration:~/.phpmon_fconf_working.json"
|
||||||
isEnabled = "NO">
|
isEnabled = "NO">
|
||||||
|
@ -16,7 +16,8 @@ class Log {
|
|||||||
case error = 1,
|
case error = 1,
|
||||||
warning = 2,
|
warning = 2,
|
||||||
info = 3,
|
info = 3,
|
||||||
performance = 4
|
performance = 4,
|
||||||
|
cli = 5
|
||||||
|
|
||||||
public func isApplicable() -> Bool {
|
public func isApplicable() -> Bool {
|
||||||
return Log.shared.verbosity.rawValue >= self.rawValue
|
return Log.shared.verbosity.rawValue >= self.rawValue
|
||||||
|
@ -68,6 +68,7 @@ class RealShell: ShellProtocol {
|
|||||||
let task = Process()
|
let task = Process()
|
||||||
task.launchPath = self.launchPath
|
task.launchPath = self.launchPath
|
||||||
task.arguments = ["--noprofile", "-norc", "--login", "-c", completeCommand]
|
task.arguments = ["--noprofile", "-norc", "--login", "-c", completeCommand]
|
||||||
|
|
||||||
return task
|
return task
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -113,6 +114,35 @@ class RealShell: ShellProtocol {
|
|||||||
encoding: .utf8
|
encoding: .utf8
|
||||||
)!
|
)!
|
||||||
|
|
||||||
|
if Log.shared.verbosity == .cli {
|
||||||
|
var args = task.arguments
|
||||||
|
let last: String = "\"" + (args?.popLast() ?? "") + "\""
|
||||||
|
let concat = [self.launchPath] + task.arguments! + [last]
|
||||||
|
let command = concat.joined(separator: " ")
|
||||||
|
var log = """
|
||||||
|
|
||||||
|
<~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
$ \(command)
|
||||||
|
|
||||||
|
[OUT]:
|
||||||
|
\(stdOut)
|
||||||
|
"""
|
||||||
|
|
||||||
|
if !stdErr.isEmpty {
|
||||||
|
log.append("""
|
||||||
|
[ERR]:
|
||||||
|
\(stdErr)
|
||||||
|
""")
|
||||||
|
}
|
||||||
|
|
||||||
|
log.append("""
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~>
|
||||||
|
|
||||||
|
""")
|
||||||
|
|
||||||
|
print(log)
|
||||||
|
}
|
||||||
|
|
||||||
return .out(stdOut, stdErr)
|
return .out(stdOut, stdErr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -75,6 +75,11 @@ class AppDelegate: NSObject, NSApplicationDelegate, UNUserNotificationCenterDele
|
|||||||
Log.info("Extra verbose mode has been activated.")
|
Log.info("Extra verbose mode has been activated.")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if CommandLine.arguments.contains("--cli") {
|
||||||
|
logger.verbosity = .cli
|
||||||
|
Log.info("Extra CLI mode has been activated.")
|
||||||
|
}
|
||||||
|
|
||||||
Log.separator(as: .info)
|
Log.separator(as: .info)
|
||||||
Log.info("PHP MONITOR by Nico Verbruggen")
|
Log.info("PHP MONITOR by Nico Verbruggen")
|
||||||
Log.info("Version \(App.version)")
|
Log.info("Version \(App.version)")
|
||||||
|
Reference in New Issue
Block a user