src/Pure/General/ssh.scala
changeset 80227 af6b60c75d7d
parent 80226 17a10bea79a1
child 80229 5e32da8238e1
equal deleted inserted replaced
80226:17a10bea79a1 80227:af6b60c75d7d
   219         cwd: Path = Path.current,
   219         cwd: Path = Path.current,
   220         redirect: Boolean = false,
   220         redirect: Boolean = false,
   221         settings: Boolean = true,  // ignored
   221         settings: Boolean = true,  // ignored
   222         cleanup: () => Unit = () => ()
   222         cleanup: () => Unit = () => ()
   223     ): Bash.Process = {
   223     ): Bash.Process = {
   224       val remote_script1 = Isabelle_System.export_env(user_home = user_home) + remote_script
   224       Bash.process(
   225       Bash.process(remote_script1, description = description, cwd = cwd, redirect = redirect,
   225         Bash.context(remote_script, user_home = user_home),
   226         cleanup = cleanup, ssh = ssh)
   226         description = description, cwd = cwd, redirect = redirect, cleanup = cleanup, ssh = ssh)
   227     }
   227     }
   228 
   228 
   229     override def execute(remote_script: String,
   229     override def execute(remote_script: String,
   230       progress_stdout: String => Unit = (_: String) => (),
   230       progress_stdout: String => Unit = (_: String) => (),
   231       progress_stderr: String => Unit = (_: String) => (),
   231       progress_stderr: String => Unit = (_: String) => (),
   232       redirect: Boolean = false,
   232       redirect: Boolean = false,
   233       settings: Boolean = true,  // ignored
   233       settings: Boolean = true,  // ignored
   234       strict: Boolean = true
   234       strict: Boolean = true
   235     ): Process_Result = {
   235     ): Process_Result = {
   236       val remote_script1 = Isabelle_System.export_env(user_home = user_home) + remote_script
   236       val script =
   237       Isabelle_System.bash(make_command(args_host = true, args = Bash.string(remote_script1)),
   237         make_command(
       
   238           args_host = true,
       
   239           args = Bash.string(Bash.context(remote_script, user_home = user_home)))
       
   240       Isabelle_System.bash(script,
   238         progress_stdout = progress_stdout,
   241         progress_stdout = progress_stdout,
   239         progress_stderr = progress_stderr,
   242         progress_stderr = progress_stderr,
   240         redirect = redirect,
   243         redirect = redirect,
   241         strict = strict)
   244         strict = strict)
   242     }
   245     }