Treatment execOneTerminable

process/exec::execOneTerminable


Inputs

⇥ command: Block<Command> (process/command::Command)
⇥ environment: Block<Option<Environment>> (process/environment::Environment)
⇥ executor: Block<Executor> (process/exec::Executor)
⇥ terminate: Block<void>

Outputs

↦ completed: Block<void>
↦ error: Block<string>
↦ exit: Block<Option<i32>>
↦ failed: Block<void>
↦ finished: Block<void>
↦ started: Block<void>
↦ terminated: Block<void>


Executes a command.

Takes an Executor on which command will be run with the optional environment.

When the execution finishes, finished is emitted, regardless of the execution or command status. completed is emitted if the command execution went right from executor perspective (the command itself may have failed in its own logic), and exit contains the return code of the command. failed is emitted if the executor is not able to launch the command, and error contains the associated error message. If terminate signal is received, the executor stops as soon as possible the process, and terminated is then emitted. In that case finished is also emitted but not failed or completed.