code: func (e *Runner) InitData(args []string) (RunData, error) {
  	if e.runData == nil && e.runDataInitializer != nil {
  		var err error
  		if e.runData, err = e.runDataInitializer(e.runCmd, args); err != nil {
  			return nil, err
  		}
  	}
  
  	return e.runData, nil
  }
docs: // InitData triggers the creation of runtime data shared among all the phases included in the workflow.
  // This action can be executed explicitly out, when it is necessary to get the RunData
  // before actually executing Run, or implicitly when invoking Run.