205 if (control_path.nonEmpty) run_ssh(opts = "-O exit").check |
205 if (control_path.nonEmpty) run_ssh(opts = "-O exit").check |
206 } |
206 } |
207 |
207 |
208 |
208 |
209 /* remote commands */ |
209 /* remote commands */ |
|
210 |
|
211 override def kill_process(group_pid: String, signal: String): Boolean = { |
|
212 val script = |
|
213 make_command(args_host = true, |
|
214 args = "kill -" + Bash.string(signal) + " -" + Bash.string(group_pid)) |
|
215 Isabelle_System.bash(script).ok |
|
216 } |
210 |
217 |
211 override def execute(remote_script: String, |
218 override def execute(remote_script: String, |
212 progress_stdout: String => Unit = (_: String) => (), |
219 progress_stdout: String => Unit = (_: String) => (), |
213 progress_stderr: String => Unit = (_: String) => (), |
220 progress_stderr: String => Unit = (_: String) => (), |
214 redirect: Boolean = false, |
221 redirect: Boolean = false, |
513 def read(path: Path): String = File.read(path) |
520 def read(path: Path): String = File.read(path) |
514 def write_file(path1: Path, path2: Path): Unit = Isabelle_System.copy_file(path2, path1) |
521 def write_file(path1: Path, path2: Path): Unit = Isabelle_System.copy_file(path2, path1) |
515 def write_bytes(path: Path, bytes: Bytes): Unit = Bytes.write(path, bytes) |
522 def write_bytes(path: Path, bytes: Bytes): Unit = Bytes.write(path, bytes) |
516 def write(path: Path, text: String): Unit = File.write(path, text) |
523 def write(path: Path, text: String): Unit = File.write(path, text) |
517 |
524 |
|
525 def kill_process(group_pid: String, signal: String): Boolean = |
|
526 isabelle.setup.Environment.kill_process(Bash.string(group_pid), Bash.string(signal)) |
|
527 |
518 def execute(command: String, |
528 def execute(command: String, |
519 progress_stdout: String => Unit = (_: String) => (), |
529 progress_stdout: String => Unit = (_: String) => (), |
520 progress_stderr: String => Unit = (_: String) => (), |
530 progress_stderr: String => Unit = (_: String) => (), |
521 redirect: Boolean = false, |
531 redirect: Boolean = false, |
522 settings: Boolean = true, |
532 settings: Boolean = true, |