Procession

Runs a child process and blocks until it writes something specific to stdout. Terminates the child process at exit time.

The following example blocks until Server Started comes out of STDOUT as a result of executing PORT=3455 /home/me/my_project/bin/server

require 'procession'

Procession::Process.new(
  working_dir: '/home/me/my_project/bin',
  command:     './server',
  environment: { PORT: 3455 },
  await:       /Server Started/
).start