// ReportStageResult throw the results of specified stage to the messenger services. func (self *Resources) ReportStageResult(stage stages.Stage, resultStr string) { name := stage.GetStageName() if !self.Reporter.Suppress("result") { if resultStr == "true" { self.Reporter.Post( fmt.Sprintf("[%s][RESULT] Succeeded", name)) } else if resultStr == "skipped" { self.Reporter.Post( fmt.Sprintf("[%s][RESULT] Skipped", name)) } else { self.Reporter.Post( fmt.Sprintf("[%s][RESULT] Failed", name)) } } if stage.GetStageOpts().ReportingFullOutput { if out := stage.GetOutResult(); (len(out) > 0) && (!self.Reporter.Suppress("stdout")) { self.Reporter.Post( fmt.Sprintf("[%s][STDOUT] %s", name, stage.GetOutResult())) } if err := stage.GetErrResult(); len(err) > 0 && (!self.Reporter.Suppress("stderr")) { self.Reporter.Post( fmt.Sprintf("[%s][STDERR] %s", name, stage.GetErrResult())) } } }