func createCommand(ctx Context, action mig.Action, agent mig.Agent, emptyResults []modules.Result) (err error) { cmdid := mig.GenID() defer func() { if e := recover(); e != nil { err = fmt.Errorf("createCommand() -> %v", e) } ctx.Channels.Log <- mig.Log{OpID: ctx.OpID, ActionID: action.ID, CommandID: cmdid, Desc: "leaving createCommand()"}.Debug() }() var cmd mig.Command cmd.Status = "sent" cmd.Action = action cmd.Agent = agent cmd.ID = cmdid cmd.StartTime = time.Now().UTC() cmd.Results = emptyResults ctx.Channels.CommandReady <- cmd return }