code: func (p *Process) StopAndWait() (*os.ProcessState, error) {
  	if err := p.stopProcess(); err != nil {
  		return nil, err
  	}
  	state, err := p.waitOnProcess()
  	if err != nil {
  		return nil, errors.Errorf("process exit with error: %v", err)
  	}
  	p.log.Debugf("Process %s was stopped (last PID: %d)", p.GetName(), p.GetPid())
  	return state, nil
  }
docs: // StopAndWait sends the SIGTERM signal to stop given process and waits until it is completed