// executeProcesses executes a list of processes func executeProcesses(processes []string, description string, analysisEntry inst.ReplicationAnalysis, successorInstance *inst.Instance, lostSlaves [](*inst.Instance), failOnError bool) error { var err error for _, command := range processes { command := replaceCommandPlaceholders(command, analysisEntry, successorInstance, lostSlaves) if cmdErr := os.CommandRun(command); cmdErr == nil { log.Infof("Executed %s command: %s", description, command) } else { if err == nil { // Note first error err = cmdErr } log.Errorf("Failed to execute %s command: %s", description, command) if failOnError { return err } } } return err }
// executeProcesses executes a list of processes func executeProcesses(processes []string, description string, topologyRecovery *TopologyRecovery, failOnError bool) error { var err error for _, command := range processes { command := replaceCommandPlaceholders(command, topologyRecovery) if cmdErr := os.CommandRun(command); cmdErr == nil { log.Infof("Executed %s command: %s", description, command) } else { if err == nil { // Note first error err = cmdErr } log.Errorf("Failed to execute %s command: %s", description, command) if failOnError { return err } } } return err }